Inleiding
Donker zwart, 4 kilo licht en een afmeting van 10 bij 47 bij 60 centimeter. Dit zijn de gegevens van de AccesGuard, een zwaargewicht die hackers, crackers en ander gespuis buiten de deur moet houden. Ontworpen door het Haagse Access Security Advisors (XSA) hebben we hier te maken met een heus turnkey intrusion prevention system (IPS). Je sluit de doos aan en het werkt. Het apparaat is volledig plug'n play, een keyboard en muis zijn dan ook niet nodig. De AccessGuard is echter geen vervanging van een virusscanner en ook uw firewall kan gewoon blijven draaien als de AccessGuard is geïnstalleerd, als extra apparaat, zo laat de productbeschrijving van XSA ons weten.
Het IPS zelf is een 2U 19’’ rack mountable unit die geplaatst wordt tussen de (enge) buitenwereld en het (veilige) interne netwerk.
Verschillen met bestaande IDSs
Zoals de term Intrusion Prevention System al aangeeft is het eerste grote verschil met andere IDSs dat de AccessGuard niet alleen de aanvallen waarneemt maar ook de mogelijkheid bezit om deze tegen te houden.
Het tweede cruciale verschil is dat de AccessGuard functioneert als een bridge, dit betekend dat in tegenstelling tot andere IDSs dat de AccessGuard zelf geen code hoeft te implementeren voor TCP en IP reassembly. Andere IDSs sniffen meestal het netwerkverkeer en implementeren dan zelf code om het netwerkverkeer te reassemblen, dit is een complex proces en vrijwel onmogelijk om helemaal goed voor elkaar te krijgen. Doordat in het geval van de AccessGuard de kernel van het host OS (FreeBSD) al zorg draagt voor alle TCP en IP specifieke processing, is de AccessGuard niet zo makkelijk te omzeilen als een IDS.
Als laatste valt het op dat het werkelijk een “turnkey” product is, in tegenstelling tot andere IDSs is er aan de gebruikers kant geen specifieke kennis nodig om het IPS aan het werk te zetten, het is een kwestie van aansluiten en weglopen.
Log bestanden
Via de gebruikersvriendelijke web interface van de AccesGuard kunnen de aangemaakte log bestanden bekeken worden. Het is echter niet mogelijk om in deze web interface de huidige lijst van signatures te bekijken, bestaande signatures aan te passen of eigen signatures toe te voegen, iets dat voor de meer technische onderlegde klant kan een probleem kan zijn.
Tevens kan de gebruiker niet in de log bestanden zien wanneer er updates op de IPS zijn geïnstalleerd. Op het moment dat er een software update of een nieuwe signature wordt geïnstalleerd door XSA is dit niet zichtbaar.
Technische Analyse
Security.nl heeft de AccessGuard onderhanden genomen. Tijdens deze tests werd gekeken naar de betrouwbaarheid en effectiviteit van het Intrusion Prevention System (IPS) op een aantal verschillende gebieden. De test is onderverdeeld in drie verschillende subdelen; ‘IPS evasion’, ‘IPS false-positives’ en ‘IPS reliability’.
IPS evasion
In dit gedeelte van de audit wordt er gekeken of het IPS omzeild kan worden; er worden verschillende technieken toegepast die als doel hebben een zwakte in de regels (ruleset) of de implementatie van de IPS te lokaliseren.
Toelichting IPS evasion tests
Security.nl voert standaard de volgende IPS evasion tests uit:
Encoded HTTP requests
De requests worden gecodeerd met een aantal verschillende methodes om te bepalen of het IPS de mogelijkheid bezit deze requests te decoderen en ze dan alsnog tegen de ruleset te valideren.
Doubly encoded HTTP requests
De requests worden dubbel gecodeerd met een aantal verschillende methodes om te bepalen of het IPS in staat is de requests goed te hercoderen voordat deze worden doorgestuurd naar de achterliggende webserver.
Mangled HTTP requests
De requests worden op een aantal verschillende manieren verminkt, op zo’n manier dat de achterliggende webserver ze nog wel accepteert, om te bepalen of het IPS dezelfde request-parsing logica ondersteunt als de achterliggende webserver.
Positioned HTTP requests
Er wordt voor gezorgd dat de requests maar voor een gedeelte in de interne buffer van het IPS passen. Dit wordt bereikt door de interne buffer grote van het IPS te bepalen en daarna de requests te prefixen met het juiste aantal (headers) bytes. Het doel van deze test is om te bepalen wat het IPS in dit geval doet.
Simple IP fragmentation
Dit is de simpelste vorm van de IP fragmentatie tests, de requests worden in een aantal op een volgende IP fragments opgesplitst en daarna normaal sequentieel naar het IPS verstuurd. Het doel van deze test is om te bepalen of het IPS in staat is tot IP reassembly.
Reverse IP fragmentation
Dit is de tweede variant op de IP fragmentatie tests, de requests worden wederom verspreid over een aantal IP fragments maar bij deze tests worden de verschillende fragmenten achterstevoren (last-first) naar het IPS verstuurd. Het doel van deze test is om te bepalen om het IPS ook dit kan reassemblen.
Random duplication fragmentation
Dit is de derde variant van de IP fragmentatie tests, de requests worden wederom verspreid over een aantal IP fragments maar nu worden er willekeurig een aantal fragmenten gedupliceerd. Het doel van deze test is om te bepalen hoe het IPS omgaat met dubbele fragmenten.
Interleaved fragmentation
Dit is de laatste variant van de IP fragmentatie tests, de requests worden wederom verspreid over aantal IP fragments maar nu worden er willekeurig een aantal gedupliceerde fragmenten toegevoegd met een andere payload.
Resultaten IPS evasion
Uitgevoerde Test | Resultaat |
Encoded HTTP requests | PASS |
Doubly encoded HTTP requests | PASS |
Mangled HTTP requests | PASS |
Positioned HTTP requests | PASS |
Simple IP fragmentation | PASS |
Reverse IP fragmentation | PASS |
Random duplication fragmentation | PASS |
Interleaved fragmenetation | PASS |
IPS false-positives
In dit gedeelte van de audit wordt er gekeken of het IPS (erg) gevoelig is voor het genereren van zogehete ‘false-positives’. Onder een ‘false-positive’ verstaan we het probleem dat het IPS een aanval signaleert terwijl er geen plaatsvindt.
Op het moment dat een IPS erg veel ‘false-positives’ genereert kan dit tot gevolg dat er ongefundeerde stress op de beheerders wordt gelegd en dat legitieme clients toegang wordt ontzegt tot bijvoorbeeld een webserver.
Toelichting IPS false-positives tests
Security.nl voerde de volgende IPS false-positives tests uit:
Failure on common requests
Tijdens deze tests werd gekeken of het IPS, op dat moment, een ruleset bevatte die er voor kon zorgen dat normale, legale, requests werden aangemerkt als een aanval. Het doel is om de kwaliteit van de ruleset te bepalen.
Resultaten false-positives
Uitgevoerde Test | Resultaat |
Failure on common requests | PASS |
IPS reliability
In dit gedeelte van de audit wordt er gekeken naar de stabiliteit van het IPS, er worden verschillende technieken gebruikt om de load op het IPS op te voeren waarna er wordt gekeken of het IPS nog steeds zijn functie vervult.
Toelichting IPS reliability tests
Security.nl voert standaard de volgende IPS reliability tests uit:
High traffic load reliability
Tijdens deze test wordt het IPS gebombardeerd met een grote hoeveelheid data waarbij er ondertussen een aantal legale en illegale requests worden geïnjecteerd. Het doel van deze test is om te bepalen of het IPS nog in staat om op dat moment de illegale requests te blokkeren.
High connection load reliability
Tijdens deze test worden er een groot aantal verschillende connecties opgezet naar de achterliggende webserver waarna er over aantal willekeurige connecties illegale requests worden verstuurd. Het doel van deze test is om te bepalen of het IPS onder deze omstandigheden nog in staat is de illegale requests te blokkeren.
Resultaten IPS reliability
Uitgevoerde Test | Resultaat |
High traffic load reliability | PASS |
High connection load reliability | PASS |
Conclusie
Security.nl heeft geen implementatie of deployment fouten kunnen ontdekken in het AccessGuard product van XSA en is dan ook van mening dat het hier een betrouwbaar en effectief product betreft.
Meer informatie over de AccesGuard is op deze pagina te vinden.
Deze posting is gelocked. Reageren is niet meer mogelijk.