DoS (Denial of Service)-aanval

We moeten altijd alert zijn op de verschillende computeraanvallen waaraan we worden blootgesteld. Deze keer gaan we het hebben over een computeraanval die de beschikbaarheid van een dienst aanvalt, Het gaat over DoS (Denial of Service)-aanval. Deze aanval kan op een gedistribueerde manier worden gedaan (DDoS), zal het normaal gesproken worden uitgevoerd via een Botnet. De aanvallers hebben als doel dat de gebruikers van een dienst er geen gebruik van kunnen maken, omdat deze verzadigd is, je hebt vast wel gehoord over de aanvallen die PlayStation Network heeft ondergaan, het is zelfs mogelijk dat je door een van die aanvallen op een dag niet kon spelen online.

Je hebt kunnen zien dat de DoS-aanval en DDoSEen verschil dat we tussen de ene aanval en de andere vinden, is dat we bij de eerste een machine en een verbinding gebruiken, en bij de tweede veel computers, dus de aanval is veel moeilijker en effectiever.

OpmerkingOm de aanval goed te begrijpen is het noodzakelijk dat je weet hoe TCP/IP werkt, of in ieder geval basisbegrippen hebt van Netwerken.

Verschillende manieren om de aanval uit te voeren


Om veiligheid te leren en jezelf te kunnen beschermen, is het noodzakelijk om te weten hoe aanvallen worden uitgevoerd. In deze aanval kunnen we zien dat het op veel manieren kan worden uitgevoerd, hier zijn er enkele, met een korte uitleg:

SYN FloodDeze aanval bestaat uit het verzenden van verbindingsverzoeken (pakketten met actieve SYN-vlag) naar het slachtoffer vanaf valse bron-IP-adressen, die zullen antwoorden met pakketten met de ACK- en actieve SYN-vlaggen, en wachten tot de oorsprong van de verbinding antwoordt met de ACK vlag gezet, maar dit zal nooit gebeuren.

ICMP-overstromingIn dit type wil de aanvaller de bandbreedte van het slachtoffer verbruiken door talloze grote ICMP-pakketten te verzenden, dit door middel van pingen.

UDP-overstromingHier worden grote hoeveelheden UDP-pakketten gemaakt, die op willekeurige poorten naar het slachtoffer worden verzonden.

BufferoverloopType "klassieke" aanval, de aanvaller zal het slachtoffer meer pakketten sturen dan de servicebuffer aankan, dit zorgt ervoor dat de service niet reageert op legitieme verzoeken, omdat deze verzadigd is.

Er zijn meer soorten, zoals: HTTP-overstroming, NTP-versterking, enz.

Voorbeeld DoS-aanval in Python


Nu gaan we een klein codevoorbeeld zien in Python dat gebaseerd zal zijn op de SYN flood-aanval, de test zal gecontroleerd worden uitgevoerd met virtuele machines.
 import logging logging.getLogger ("scapy.runtime") setLevel (logging.ERROR) van 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 ("Packet% d sent"% packet_number) endIP + = 1 if (endIP == 200): endIP = 10
De code is vrij eenvoudig, we gebruiken versie 3 van Python en we gebruiken de Scapy-bibliotheek, die erg krachtig is en dingen voor ons gemakkelijker maakt.

Het eerste dat we zien is het importeren van de benodigde bibliotheken, het register wordt gebruikt om de waarschuwing te vermijden dat Scapy op IPv6 start. Dan wordt het gebruikt conf.werkwoord = 0, dit wordt gedaan zodat Scapy geen informatie weergeeft.

Vervolgens wordt de variabele gemaakt gastheer, wat niets meer is dan het IP-adres van het doelwit van onze aanval en de variabele haven dat is de haven van ons doel.

Zodat het niet altijd hetzelfde bronadres is, heb ik een variabele gemaakt met de basis (oorsprongIP) en een andere die aan het einde wordt toegevoegd (endIP), zoals je kunt zien, worden ze aaneengeschakeld bij het maken van het pakket originIP + str (endIP).

de variabele pakketnummer het wordt gewoon gebruikt om de verzonden pakketten bij te houden.

Het laatste deel is een oneindige lus, die voor alles zorgt, we maken het pakket en verzenden het, we laten ook zien dat het pakket is verzonden, omdat we de informatie hebben en de variabelen bijwerken endIP Y pakketnummer.
Als we de code uitvoeren en wireshark gebruiken, kunnen we zien hoe de pakketten worden verzonden, we controleren of het bron-IP elke keer anders is, net als de poort.

Als we ernaar kijken, blijft de kolom Bron van de vorige afbeelding veranderen, de kolom Bestemming niet, omdat het ons slachtoffer is.

tegenmaatregelen


Helaas bedrijven lijden het hele jaar door veel verliezen vanwege dit type aanval is het dus erg belangrijk dat we tegenmaatregelen nemen. Hieronder staan ​​enkele van de maatregelen waarmee we rekening moeten houden:
  • Firewall- of IDS- of IPS-systemen correct configureren
  • Beperk het aantal TCP SYN-pakketten per seconde
  • Analyseer netwerkverkeer
  • Omgekeerde IP-lookup, dient om spoofing te voorkomen

Als u meer wilt lezen over beveiligingsproblemen, kunt u de categorie over beveiliging binnen Solvetic bezoeken.

Vond je deze Tutorial leuk en heb je eraan geholpen?Je kunt de auteur belonen door op deze knop te drukken om hem een ​​positief punt te geven
wave wave wave wave wave