Vi måste alltid vara uppmärksamma på de olika datorattacker som vi utsätts för. Den här gången ska vi prata om en datorattack som angriper tillgängligheten av en tjänst, Det handlar om DoS (Denial of Service) attack. Denna attack kan utföras på ett distribuerat sätt (DDoS), kommer det normalt att utföras via ett Botnet. Angriparna har som mål att användarna av en tjänst inte kan använda den, eftersom den är mättad, säkert har du hört talas om attackerna som PlayStation Network har drabbats av, det är till och med möjligt att på grund av en av dessa attacker en dag kunde du inte spela uppkopplad.
Du har kunnat se att DoS -attack och DDoSEn skillnad som vi hittar mellan en attack och en annan är att i den första använder vi en maskin och en anslutning, och i den andra kommer många datorer att användas, så attacken är mycket hårdare och effektivare.
NoteraFör att förstå attacken bra är det nödvändigt att du vet hur TCP / IP fungerar, eller åtminstone har grundläggande föreställningar om nätverk.
Olika sätt att genomföra attacken
För att lära sig säkerhet och för att kunna skydda sig själv är det nödvändigt att veta hur attacker utförs. I denna attack kan vi se att den kan utföras på många sätt, här är några av dem, med en kort förklaring:
SYN FloodDenna attack består av att skicka anslutningsförfrågningar (paket med aktiv SYN -flagga) till offret från falska käll -IP -adresser, som kommer att svara med paket som innehåller ACK och aktiva SYN -flaggor och väntar på att anslutningens ursprung ska svara med ACK flagga, men detta kommer aldrig att hända.
ICMP FloodI denna typ vill angriparen konsumera offrets bandbredd genom att skicka många stora ICMP -paket, detta är genom pinging.
UDP FloodHär kommer stora mängder UDP -paket att skapas, som kommer att skickas till offret vid slumpmässiga portar.
Buffer-överflödeTyp av "klassisk" attack, angriparen skickar offret fler paket än tjänstebufferten kan hantera, detta gör att tjänsten inte svarar på legitima förfrågningar, eftersom den är mättad.
Det finns fler typer, som t.ex. HTTP -översvämning, NTP -förstärkning, etc.
Exempel på DoS -attack i Python
Nu ska vi se ett litet kodexempel i Python som kommer att baseras på SYN översvämningsattack, testet kommer att utföras på ett kontrollerat sätt med virtuella maskiner.
import logging logging.getLogger ("scapy.runtime"). setLevel (logging.ERROR) från scapy.all import * conf.verb = 0 host = "192.168.56.1" port = 80 originIP = "192.168.1." endIP = 10 packet_number = 0 while True: packet_number + = 1 packet = IP (src = (sourceIP + str (endIP)), dst = host) / TCP (sport = RandShort (), dport = port) send (packet, inter = 0,0002) print ("Paket% d skickat"% packet_number) endIP + = 1 if (endIP == 200): endIP = 10Koden är ganska enkel, vi använder version 3 av Python och vi använder Scapy -biblioteket, som är mycket kraftfullt och gör saker enklare för oss.
Det första vi ser är att importera nödvändiga bibliotek, registret används för att undvika den varning som Scapy startar på IPv6. Sedan används den conf.verb = 0, detta görs så att Scapy inte visar information.
Därefter skapas variabeln värd, vilket inte är mer än IP: n för målet för vår attack och variabeln hamn som är hamnen i vårt mål.
Så att det inte alltid är samma källadress har jag skapat en variabel som har basen (ursprungIP) och en annan som läggs till i slutet (endIP), som du kan se, är de sammanfogade när paketet skapas originIP + str (endIP).
Variabeln paketnummer den används helt enkelt för att hålla koll på de paket som har skickats.
Den sista delen är en oändlig slinga, som är den som tar hand om allt, vi skapar paketet och skickar det, vi visar också att paketet har skickats, eftersom vi har informationen och uppdaterar variablerna endIP Y paketnummer.
Om vi kör koden och använder wireshark kan vi se hur paketen skickas, vi kontrollerar att käll -IP: n är olika varje gång, liksom porten.
Om vi tittar på den, fortsätter källkolumnen i den föregående bilden att ändras, inte målkolumnen, eftersom den är vårt offer.
Motåtgärder
Tyvärr företag drabbas av många förluster under hela året på grund av denna typ av attack, så det är mycket viktigt att vi genomför motåtgärder, nedan är några av de som vi bör ta hänsyn till:
- Konfigurera brandväggen eller IDS eller IPS -system korrekt
- Begränsa antalet TCP SYN -paket per sekund
- Analysera nätverkstrafik
- Omvänd IP -sökning, tjänar till att undvika förfalskning
Om du vill läsa mer om säkerhetsfrågor kan du besöka kategorin för säkerhet inom Solvetic.
Gillade du och hjälpte denna handledning?Du kan belöna författaren genom att trycka på den här knappen för att ge honom en positiv poäng