Kun je zo een DOS-aanval voorkomen?

Wanneer er een verzoek voor een sessie op een server komt, wordt er al direct geheugenruimte voor die sessie gereserveerd. Wanneer die reservering pas gebeurt nadat de handshake tot stand gekomen is, zou dus een DOS-aanval niet meer kunnen.
Waarom wordt dat dus niet veranderd?

Weet jij het antwoord?

/2500

Er zijn meerdere manieren om een DDOS aanval uit te voeren. Geheugenruimte is niet perse het probleem, dus een geheugenprobleem voorkomen maakt een DDOS aanval niet onmogelijk, zoals je stelt. In een van de vormen van een DDOS aanval gaat het al mis bij het tot stand brengen van de handshake. Elke handshake bestaat uit meerdere stappen: client verzoekt, server antwoord, client bevestigd. Bij een DDOS aanval kunnen er enorm veel client verzoeken komen waarbij de server enorm veel moet antwoorden en vervolgens tevergeefs wacht op bevestigingen die nooit komen. De server heeft dan al snel enorm veel half open connecties die zijn gereserveerd maar nooit worden bevestigd en zo loopt de server over.

Je schrijft "DOS" en niet specifiek over "DDOS". Al bedoel je waarschijnlijk deze laatste, toch zal ik het brede antwoord geven: Er zijn verschillende vormen van een DoS-aanval. 1) het geven van ongeldige commando's waardoor bijvoorbeeld een bufferoverloop ontstaat. 2) het herconfigureren van systeemcomponenten waardoor processen niet doen wat ze moeten doen. Een voorbeeld hiervan is het verminken van de in een systeem opgeslagen routeringsinformatie. 3) het fysiek vernietigen van systeembronnen, bijvoorbeeld het verwijderen van een netwerkkabel. 4) het consumeren van systeembronnen waardoor ze niet in staat zijn te reageren op andere aanvragen. Voor 1 en 2 geldt: De meeste commando's hebben een nuttige funktie. De computer is (indien de gebruiker over voldoende autorisaties beschikt) niet in staat om gebruik van misbruik te onderscheiden en zal deze commando's klakkeloos uitvoeren. Dit soort misbruik is eigenlijk alleen te voorkomen door te zorgen dat gebruikers niet meer autorisaties hebben dan noodzakelijk, én te zorgen dat er geen kwetsbaarheden in de programmacode zitten. Voor nummer 3 is een goed slot op de deur waarschijnlijk het meest effectief. Nummer is de DDoS waar jij waarschijnlijk op doelt. Het probleem daar is niet alleen het geheugen. Maar om daar toch even op in te zoomen: om de handshake tot stand te brengen is er al geheugen nodig ! Dat MOET dus gereserveerd worden. Het geheugen is nodig om de status van de communicatie bij te houden, ID's uit te wisselen (MAC-adressen e.d.), pariteiten te kunnen berekenen. enz. Maar naast het geheugen is het ook mogelijk een aanval te doen door het 'druk' te maken op het netwerk. Er komt zoveel verkeer binnen dat de signalen elkaar fysiek al in de weg gaan zitten. Daardoor ontstaan collisions waardoor pakketjes opnieuw verzonden gaan worden en het nóg drukker op de lijn wordt. Ook is het mogelijk met heel veel verzoeken te komen. De server kan geen onderscheid maken tissen een aanvaller en een serieuze gebruiker. Hij zal dus aan álle verzoeken willen voldoen. Wanneer er heel veel aanvallers zijn is de kans dat een verzoek van een serieuze gebruiker afgehandeld wordt maar een heel klein percentage. En mocht je al een pagina krijgen, dan zijn er meestal meerdere kliks nodig om je doel te bereiken. En bij elke klik moet je opnieuw mazzel hebben dat het verzoek wél afgehandeld wordt...

Bronnen:
https://nl.wikipedia.org/wiki/Denial-of-service

Stel zelf een vraag

Ben je op zoek naar het antwoord die ene vraag die je misschien al tijden achtervolgt?

/100