De (on)zichtbaarheid van applicatielaag DDoS-aanvallen

Expertblogs

Distributed-Denial-of-Service-aanvallen (DDoS-aanvallen) vormen al geruime tijd een bedreiging voor de beschikbaarheid van op Internet aangesloten systemen. Deze dreiging bestaat onder andere omdat de aanvallen ontwikkelen in vorm en omvang. Eén van de ontwikkelingen in DDoS-aanvallen vormen de zogenaamde applicatielaag-aanvallen of laag-7 aanvallen, verwijzend naar laag 7 van het OSI-model. Deze blog gaat in op dit type aanvallen, hoe ze zich onderscheiden van andere DDoS-aanvallen, hoe je ze kunt zien en wat je eraan kunt doen.

Wat zijn applicatielaag DDoS-aanvallen?

Na de Denial-of-Service-aanvallen (DoS-aanvallen), waarbij een enkel netwerk pakketje de beschikbaarheid van een server of service kon verstoren, ontstonden de DDoS-aanvallen. Deze DDoS-aanvallen maken misbruik van een (mogelijk groot) aantal aanvallende apparaten om een door een aanvaller beoogd doelwit uit te schakelen. Daarbij worden grote hoeveelheden netwerkverkeer en/of malafide verzoeken afgevuurd, die ervoor zorgen dat dienstverlening verstoord raakt, eventueel met grote gevolgschade. De omvang van dit type aanvallen, gemeten in zowel bits per seconde als in pakketten per seconde, neemt gestaag toe. Ook lijkt er een trend te ontstaan waarbij het aantal kleine aanvallen toeneemt.

Een DDoS-aanval kan zich richten op tal van verschillende componenten in een netwerk en netwerk infrastructuur: switches, firewalls, DNS-services, web-services, webapplicaties, enzovoort. Daarbij heeft elke component een grens in capaciteit waarboven geen antwoord meer gegeven kan worden op een legitiem verzoek door de brute omvang van een aanval. Deze aanvallen leveren last op voor gebruikers en veel organisaties nemen daarom diensten af bij een gespecialiseerde dienstverlener die het mogelijk maken om malafide verzoeken uit het netwerkverkeer te filteren, waardoor de website of andere infrastructuur beter weerstand kan bieden tegen dergelijke aanvallen.

In plaats van een grote omvang aan verkeer op een doelwit te lanceren kan een aanvaller ook subtieler te werk gaan. Door een specifieke aanval op te zetten, kan de vorm van de verzoeken een verstoring van de beschikbaarheid veroorzaken. Daarbij richt een aanvaller zich dan niet op de onderste vier lagen van het OSI-model, maar op de bovenste laag: de toepassings- of applicatielaag (application layer), laag 7. Een specifiek verzoek kan een (te) grote hoeveelheid middelen vragen. Met een serie van deze verzoeken kunnen alle beschikbare middelen toegewezen worden aan malafide verzoeken, waardoor een legitiem verzoek geen reactie krijgt. Een variant kan zich richten op het veroorzaken van een fout in de applicatie, die hetzelfde resultaat geeft als de fout niet goed afgehandeld wordt.

De uitdaging van het kijken naar applicatielaag DDoS-aanvallen

Omdat applicatielaag DDoS-aanvallen een ander karakter hebben dan overige DDoS-aanvallen, vereisen ze ook andere maatregelen om de verstoring te verhelpen. Dat betekent dat het ook nut heeft om er gericht naar te kijken. Bij dit type aanval is er vaak met een veel kleiner aantal netwerkpakketten een verstoring te veroorzaken. Zeker als dit gecombineerd wordt in een hybride aanval met een grote omvang aan ander verkeer, kunnen deze aanvallen lastig waar te nemen zijn en verdwijnen in de stormvloed.

In plaats van grote hoeveelheden netwerkverkeer (pakketten per seconde of gigabits per seconde), uiten dit soort aanvallen zich in een hoog geheugen- of processor gebruik of door foutmeldingen in logbestanden. Lastig is daarbij dat anomalieën in processor- en geheugengebruik of foutmeldingen in logbestanden ook andere oorzaken kunnen hebben dan een aanval en een aanval kan daardoor best over het hoofd worden gezien.

Indien er anti-DDoS maatregelen zijn getroffen bij een provider, zal daar een volume gebaseerde aanval makkelijker worden geconstateerd en gefilterd dan een aanval waarbij de inhoud van het verkeer moet worden geanalyseerd. Een goede analyse kan het beste worden gedaan met kennis van het interne netwerk en de services en applicaties zoals die zijn ingericht.

TLS- en SSL-verkeer kan voor analyse een extra complicatie vormen, omdat het verkeer versleuteld is en de inhoud dus niet bekeken kan worden. Malafide verzoeken aan een applicatie kunnen in dat versleutelde verkeer niet herkend worden. De analyse van het inhoudelijke netwerkverkeer kan pas worden gedaan na de component in het netwerk waar TLS/SSL-offloading plaatsvindt, vaak binnen het netwerk van de organisatie. Overigens kan ook in het geval van TLS- en SSL-verkeer de monitoring van resourcegebruik een indicatie geven van mogelijke applicatielaag DDoS-aanvallen.

Hoe moet je kijken?

Er is geen eenvoudig of eenduidig recept te geven om een applicatielaag DDoS-aanval te herkennen. Vaak is de aanleiding van onderzoek een verstoring van de dienstverlening. Dat hoeft geen DDoS-aanval te betreffen. Bij het achterhalen van de oorzaak is het goed om alle mogelijkheden open te houden en te onderkennen dat een mogelijke oorzaak van uitval een applicatielaag gerichte DDoS-aanval kan zijn. Of als alternatief dat als een aanval niet aangetoond kan worden er mogelijk een andere oorzaak van uitval is.

Voor de analyse kan het nodig zijn om in logbestanden te kijken of om netwerkverkeer te analyseren. Het kan nodig zijn hiervoor logbestanden te genereren of logbestanden met een ander detailniveau te genereren (indien dat mogelijk is). En netwerkverkeer moet mogelijk worden vastgelegd in packet captures. Het is waarschijnlijk dat een combinatie van deze zaken nodig is om tot een resultaat te kunnen komen. Vaak is de hoeveelheid gegenereerde gegevens omvangrijk en kan er van een beperkt tijdsinterval een gedetailleerde analyse worden gedaan.

Wat levert het onderzoek op?

Het heeft zin om onderzoek te doen naar applicatielaag DDoS-aanvallen. Daarvoor zijn verschillende redenen aan te geven.

Als eerste is een applicatielaag gerichte aanval moeilijker te spoofen (voor te wenden van een andere bron afkomstig te zijn). Vaak moet de 3-staps TCP handshake zijn afgerond om een op TCP gebaseerd protocol te misbruiken voor een aanval. Dat betekent dat het afzenderadres met grotere mate van betrouwbaarheid kan worden vastgesteld, hetgeen bijvoorbeeld relevant is bij het instellen van filtering of bij het verrichten van aangifte bij de politie.

Daarnaast heeft een laag-7 aanval vaak een zeer specifieke vorm en kan daardoor ook gericht worden gefilterd of gestopt door de configuratie van een systeem aan te passen (bijvoorbeeld het aantal gelijktijdige connecties (per IP-adres) of de connectieduur). Hiervoor hoeft niet noodzakelijk aparte infrastructuur aangeschaft te worden maar kan de bestaande infrastructuur robuuster worden gemaakt.

En nu verder

Na het vaststellen van de aanval zijn maatregelen mogelijk om de aanval gericht te mitigeren. Daarbij houdt het echter niet op. De opgedane kennis is waardevol om te delen. Anderen hebben er immers ook baat bij, zowel om hun eigen analyses verder te helpen als om (preventief) maatregelen te nemen wanneer er een aanval plaatsvindt.

En niet alleen de resultaten van de analyse zijn waardevol, ook de vastgelegde informatie in de vorm van de logbestanden en de packet captures van het netwerkverkeer. Deze informatie kan een aangifte bij de politie ondersteunen. Indien iemand wordt aangewezen als de veroorzaker van een DDoS aanval, wordt het uitvoeren van dergelijke aanvallen een stuk minder aantrekkelijk.

Bij het NCSC zijn we geïnteresseerd in de bevindingen van onderzoeken van applicatielaag-gerichte DDoS aanvallen en horen we graag wat er is gevonden of welke ervaringen zijn opgedaan.

Paul Vankan

Reactie toevoegen

U kunt hier een reactie plaatsen. Ongepaste reacties worden niet geplaatst. Uw reactie mag maximaal 2000 karakters tellen.

* verplichte velden

Uw reactie mag maximaal 2000 karakters lang zijn.

Reacties

Er zijn nu geen reacties gepubliceerd.