Artikel Red en green teaming bij Defensie (deel I)
Een methodiek voor preventieve, testgerichte beveiligingsaudits (penetratietesten) Maarten Buijs
In de praktijk blijkt steeds opnieuw dat penetratietesten een waardevolle aanvulling kunnen zijn op ‘standaard’ IT-audits. Er kan zelfs sprake zijn van bijstelling van een eerder uitgebracht oordeel. Helaas hebben penetratietesten nog een ‘cowboy-imago’ van nerds die maar van alles uitproberen. Dit artikel beschrijft een aanpak hoe dergelijke onderzoeken in te zetten en te structureren.
Organisaties zijn voor het goed functioneren van de informatievoorziening afhankelijk van betrouwbare geautomatiseerde informatiesystemen. Een voldoende mate van betrouwbaarheid wordt gerealiseerd door het treffen van een stelsel van organisatorische, procedurele, technische en fysieke beveiligingsmaatregelen. Het vaststellen van de toereikendheid van het getroffen stelsel van beveiligingsmaatregelen vindt doorgaans plaats door middel van een IT-audit. De IT-auditor kan voor het verzamelen van de benodigde evidence ter onderbouwing van het oordeel, gebruikmaken van verschillende technieken. De standaardaanpak van een IT-auditor bij het vaststellen van de toereikendheid van de technische maatregelen bestaat veelal uit het opvragen van systeemdocumentatie en technische instellingen van het onderzoeksobject. In veel gevallen zal de verantwoordelijke systeembeheerder, onder toeziend oog van de IT-auditor, zorgdragen voor het aanleveren van de voor de audit noodzakelijke evidence. Deze traditionele aanpak kent helaas enkele beperkingen. Als een auditor een risico signaleert, is het niet altijd eenvoudig om de hoogte van het risico in te schatten. De effectiviteit van maatregelen is soms lastig in te schatten evenals de mate waarin een bedreiging zich zal manifesteren. Daarnaast wordt bij een dergelijke aanpak vaak de omgeving van het object en de afhankelijkheid van het object met haar omgeving uit het oog verloren. Bedreigingen komen namelijk vooral uit de omgeving van het onderzoeksobject. Aan de hand van deze omgevingsfactoren wordt de zwakste schakel geïdentificeerd.
M.M. Buijs RE RI (Maarten) is teamleider IT-auditing bij de auditdienst van Defensie. Zijn taakgebied is ICT-infrastructuur en -beheerprocessen en fysieke en persoonlijke beveiliging. Dit artikel is mede gebaseerd op een afstudeerscriptie van de postdoctorale opleiding IT-Auditing aan de Erasmus Universiteit van Maarten Veltman, senior IT-auditor bij het Ministerie van Defensie.
Wat zijn penetratietesten Een penetratietest is een techniek die getroffen beveiligingsmaatregelen voor ICT-middelen onderwerpt aan uitgebreide beveiligingstests, uitgevoerd vanuit een perspectief van risicobeheersing. Deze tests proberen de werking van het stelsel van getroffen beveiligingsmaatregelen zodanig te beïnvloeden dat dit doorbroken of in enige mate negatief beïnvloed wordt. Het testen vindt plaats door de aanwezigheid van indringers en hieraan gekoppelde activiteiten in de (ICT-)omgeving van een organisatie te simuleren. In de uitvoering worden hiertoe methoden, technieken en middelen gehanteerd die binnen de hackergemeenschap gemeengoed zijn.
30 | de EDP-Auditor nummer 2 | 2007
TOOLS
ANALYSEREN
KENNIS DATABANK INTERNET
CROSS SITE SCRIPTING CODE REVIEW
ERVARING
INFORMATIE VERGARING
ONTWIKKELING
DENIAL OF SERVICE
FYSIEKE INSPECTIE
INRICHTING BACKDOORS
ONTWERP
BYPASSING
REPLAY
SESSION )3. PREDICTION HIJACKING WARDRIVING FINGERPRINTING
DUMPSTER DIVING
NETWORKMAPPING
VULNERABILITY SCANNING USER ENUMERATION
PINGING
)0
POORTSCANNING
KRAKEN WACHTWOORDEN BRUTEFORCE
GUESSING
MAN IN THE MIDDLE SLEUTELS
POORTSCANNING
WARDIALING SHOULDER SURFING
MISLEIDING SPOOFING
MAPPING SCANNING
PLAATSEN BACKDOORS
AANVALLEN
GESLOTEN BRONNEN
SOCIAL ENGINEERING
FLOODING
REROUTING
OPEN BRONNEN
SNIFFING
DENIAL OF SERVICE
BUFFER OVERFLOW
REVERSE ENGINEERING
STRALING
PASSIEF
ACTIEF
PRIVILEGE ESCALATION
RACE INPUT CONDITION MANIPULATIE
#/43
OPEN
!20
SNIFFING
$.3 ZONE TRANSFER
3.-0 POLLING
Tests met betrekking tot informatiebeveiliging kunnen in verschillende stadia van de levenscyclus1 van een product plaatsvinden. De in dit artikel beschreven penetratietestmethodiek heeft betrekking op objecten in een productieomgeving. Een team van professionals voert een penetratietest uit. Wanneer de direct voor een informatiesysteem of netwerk verantwoordelijke lijnmanagers en andere betrokkenen (beheerders en gebruikers) niet op de hoogte worden gebracht van de werkzaamheden van dit team, is sprake van een red team penetratietest. Red team-activiteiten komen voor de medewerkers als een verrassing. Deze situatie waarborgt dat de handelswijze van medewerkers natuurgetrouw is. Indien de penetratietesten plaatsvinden na voorafgaande kennisgeving aan de betrokkenen wordt het team ook wel een green team [SGAA02] genoemd. Doordat bij een green team of blue team penetratietest de betrokken medewerkers op de hoogte zijn, verkeren zij in een verhoogde staat van paraatheid en kunnen door kennisgeving vooraf, beveiligingsmaatregelen aangepast en aangescherpt zijn. De opdrachtgever bepaalt, eventueel in overleg met de auditors, of er sprake zal zijn van red of green teaming. Een penetratietest kan als audittechniek fungeren in aanvulling op de standaard IT-auditwerkzaamheden. De bevindingen worden in dat geval gebruikt ter ondersteuning van een uitspraak over de kwaliteit van het getroffen stelsel van beveiligingsmaatregelen in bestaan. Deze audittechniek kan echter ook als op zichzelf staande techniek gehanteerd worden om een specifieke onderzoeksvraag te beantwoorden. In de literatuur zijn penetratietesten getypeerd en aan de hand van de typering geclusterd. Door een clustering te han-
BANNERGRABBING
teren, is de werking en achtergrond van een techniek eenvoudiger te duiden. Op basis van literatuurstudie [NIST03] [RUSS02] en ervaring zijn wij gekomen tot een clustering op activiteitenniveau. Dit betekent een clustering in drie gebieden: informatie vergaring (in de methodiek stap 4a), analyseren (stap 4b) en aanvallen (stap 4c). In het gebied ‘aanvallen’ is onderscheid gemaakt tussen kwetsbaarheden in relatie tot het ontwerp, ontwikkeling en de inrichting. In bovenstaand figuur is door middel van mindmapping samenhang tussen de verschillende technieken en de onderkende clusters aangebracht. De mindmap in bovenstaand figuur geeft een indicatie van de diversiteit van technieken en de onderlinge samenhang. Hierbij wordt opgemerkt dat deze mindmap geen volledig beeld geeft van alle mogelijke technieken. Ook zijn vanwege de overzichtelijkheid niet alle kruisverwijzingen en relaties in het figuur opgenomen. Zo kan een techniek op verschillende manieren ingezet worden. Een buffer overflow kan bijvoorbeeld leiden tot een Denial-of-Service (beschikbaarheid) maar kan ook leiden tot ongeautoriseerde toegang (privilege escalation, exclusiviteit). Onderzoeksobjecten Het soort objecten waarop een penetratietest betrekking kan hebben, loopt sterk uiteen. Het onderzoek kan gericht zijn op: - apparatuur (servers, werkstations, netwerkcomponenten); - programmatuur (databases, toepassingsapplicaties); - gegevens (documenten, data); - mensen (handelswijze, gedrag); - de organisatie (procedures en verantwoordelijkheden); - de omgeving (locatie, invloeden van buitenaf) of een combinatie van de bovengenoemde objectcategorieën.
31 | de EDP-Auditor nummer 2 | 2007
Artikel Het onderzoeksdoel bepaalt uiteindelijk welke objecten onderdeel vormen van het onderzoek. Risicobepaling Het bepalen van het risico is vaak een impliciete vraag van de opdrachtgever. De IT-auditor moet aan de hand van een kans- en impactinschatting het risico duiden. In deze bepaling worden eigenschappen van de gehanteerde penetratietest technieken en middelen meegewogen. Aan de afzonderlijke technieken en geïdentificeerde kwetsbaarheden kunnen namelijk, ter bepaling van de risico’s, gewichten toegekend worden. Eigenschappen zoals het benodigde kennisniveau, complexiteit en benodigde middelen, bepalen mede het uiteindelijke risico (lees: kans dat een bedreiging manifest wordt). Ook factoren als tijd (hoe lang is de kwetsbaarheid bekend) en de verspreidingsgraad (bij wie is de kwetsbaarheid bekend) spelen hierbij een rol. Deze eigenschappen worden ook gehanteerd bij de vorming van een profiel (zie profielen en scenario’s). Een aantal van de genoemde eigenschappen vormt een onderdeel van beveiligingswaarschuwingen zoals de waarschuwingsdienst van GOVCERT. Deze dienst [WAAR07] geeft in haar waarschuwingen een risicoaanduiding aan. Microsoft kwantificeert eveneens de impact van een kwetsbaarheid in de waarschuwingen [MICR07]. Ook zijn er waarschuwingen van andere bedrijven waarin wordt aangegeven of de kwetsbaarheid lokaal of op afstand misbruikt kan worden. De ITauditor gebruikt al deze factoren als referentiepunt ter bepaling van het uiteindelijke risico dat gelopen wordt. Profielen en scenario’s De bovenstaande eigenschappen en niveaus kunnen gekoppeld worden aan een profiel. Door het aanmeten van een profiel kan de IT-auditor passende bedreigingen simuleren. Een profiel is een verzameling van eigenschappen (kenmerken en typeringen) welke tijdens de uitvoering van een penetratietest wordt gehanteerd. Bij een penetratietest is in beginsel sprake van twee profielen: een extern en een intern profiel. Op basis van de opdracht en de onderzoeksdoelstelling maakt de IT auditor een (gecombineerde) keuze. Extern profiel: dreiging van buitenaf De crux bij een extern profiel is dat er geen dan wel geringe voorkennis van de (detail)inrichting van het object van onderzoek en de omgeving beschikbaar is of gebruikt wordt. Ook is er in beginsel geen sprake van geautoriseerde fysieke toegang of andere speciale bevoegdheden tot het onderzoeksobject. Vervolgens kunnen binnen het profiel bepaalde factoren opgewaardeerd worden zodat een specifiek extern (dader)profiel ontstaat. Niveaubepalende factoren zijn het kennisniveau, complexititeit middelen en de factor tijd en geld. Op deze manier zijn er binnen het externe profiel verschillende gradaties te onderkennen (alles tussen reguliere internetgebruiker, script-kiddies tot buitenlandse inlichtingendienst).
Intern profiel: dreiging van binnenuit Bij een intern profiel is sprake van toegang tot gesloten informatiebronnen en autorisaties op omliggende infrastructuur dan wel fysieke toegang tot het object van onderzoek. Hierbij is enige mate van kennis van of toegang tot het object van onderzoek aanwezig. Voorbeelden van interne profiel typeringen zijn bezoekers, schoonmaker, medewerker, (eind)gebruiker, onderhoudsmonteur, systeembeheerder. Genoemde typeringen moeten vanwege de generalisatie genuanceerd worden gehanteerd. De ene eindgebruiker is de andere niet. Scenario’s In een scenario wordt de volgorde van gebeurtenissen en activiteiten vastgelegd. Op hoofdlijnen bestaan de volgende mogelijkheden: - eerst een extern profiel, gevolgd door een intern profiel; - het interne profiel en externe profiel parallel; - alleen het interne profiel; - alleen het externe profiel. Het klassieke scenario bestaat uit het in eerste instantie uitvoeren van een penetratietest volgens het externe profiel. Vervolgens worden penetratietests uitgevoerd met een intern profiel. De mogelijkheid bestaat om beide profielen afzonderlijk van elkaar te hanteren. Ook is het mogelijk de penetratietestactiviteiten van het interne profiel af te laten hangen van de resultaten van het externe profiel. Bij de activiteiten behorende bij het externe profiel van een red team penetratietest moet een auditor er altijd rekening mee houden dat de kans bestaat dat de activiteiten in een vroeg stadium worden opgemerkt, en het onderzoek daardoor noodgedwongen moet worden gestaakt. Afhankelijk van de onderzoeksdoelstelling en het exacte stadium waarin het onderzoek stukloopt kan dit enerzijds betekenen dat er geen conclusies getrokken kunnen worden. Anderzijds kan mogelijkerwijs de conclusie getrokken worden dat de beveiligingsmaatregelen (b.v. detectief) naar behoren functioneren. De IT-auditor kan vooraf scenario’s definiëren waarin ook theoretische gebeurtenissen in de praktijksituatie gebracht worden. Een scenario kan zijn om te onderzoeken welke informatie voor een schoonmaker toegankelijk is. Hiertoe wordt een intern profiel aangemeten en worden onderzoeksactiviteiten op het scenario afgestemd (bijvoorbeeld fysieke inspecties). In het scenario komt ook tot uitdrukking of de penetratietest op alle organisatieniveaus aangekondigd is (green team) of niet (red team). Wanneer het uitvoerend personeel op de hoogte gebracht wordt, kan teruggevallen worden op kennis en medewerking van het ondersteunend personeel (b.v. systeembeheer). Bij sommige penetratietestopdrachten is dit ook noodzakelijk. Een voorbeeld: een onderzoek
32 | de EDP-Auditor nummer 2 | 2007
naar de mate waarin gerubriceerde informatie op een netwerk aanwezig en verwerkt wordt, is eenvoudiger uit te voeren indien de volledige toegang tot de fileservers tot op systeembeheerdersniveau geregeld is (green team). Indien de opdracht echter het inschatten van de risico´s voor de toegang tot gerubriceerde informatie behelst, moet de ITauditor de kans inschatten dat deze bedreiging manifest wordt. De bijbehorende kansinschatting kan in dat geval bijvoorbeeld plaatsvinden door de kwetsbaarheid van de betreffende fileserver in kaart te brengen. In dat geval zal de systeembeheerder van de fileserver niet op de hoogte gesteld worden. Hierdoor kan ook een inschatting gemaakt worden van de alertheid van een systeembeheerder (red team). Penetratietesten bij Defensie Sinds 2002 is het testen van de beveiliging van de informatievoorziening door middel van het binnendringen in geautomatiseerde informatiesystemen door de Secretaris Generaal (SG) als taak toegewezen aan de Auditdienst Defensie (ADD). Eisen/randvoorwaarden voor methodiek
De methodiek voor penetratietesten en bijbehorende activiteiten moet voldoen aan een aantal randvoorwaarden. Bij Defensie is een aantal belangrijke randvoorwaarden vastgelegd in een aanwijzing van de SG [SGAA02] die herkenbaar in de penetratietesting-methodiek aanwezig moet zijn. Het betreft: reproduceerbaar. De resultaten van tests dienen reproduceerbaar te zijn. Hiermee wordt bedoeld dat alle onderzoeksactiviteiten en stappen vastgelegd dienen te zijn in die mate dat de tests achteraf op dezelfde wijze uitgevoerd kunnen worden en leiden tot dezelfde resultaten. De verwachte uitwerking van onderzoeksactiviteiten dient vooraf vastgelegd te zijn; doelmatig. De activiteiten mogen alleen uitgevoerd worden voor zover dit voor de beoordeling van de toereikendheid van de beveiligingsmaatregelen en de beantwoording aan de onderzoeksdoelstelling(en) noodzakelijk is. Voorts dienen de te hanteren technieken en middelen representatief te zijn voor de dreiging tegen het desbetreffende informatiesysteem of netwerk; beheersbaar. Onder beheersbaarheid zijn de volgende deeleisen geschaard: a. Schade aan het te onderzoeken informatiesysteem en hieraan gekoppelde systemen dient zoveel mogelijk te worden voorkomen; b. De wijze van uitvoering moet zodanig worden vastgelegd dat eventueel optredende schade op relatief eenvoudige wijze kan worden hersteld; c. Tijdens de activiteiten ontsloten informatie mag niet voor andere dan de vooraf vastgestelde doeleinden worden gebruikt of worden overgedragen aan derden; d. Gegevens en bestanden die gebruikers niet in het kader
van hun functie, maar kennelijk als privé-persoon creëren, worden na herkenning als zodanig niet opgeslagen, reeds opgeslagen gegevens worden dan terstond vernietigd. Indien echter een vermoeden van strafbare feiten bestaat, moeten de gegevens worden overgedragen aan de bevoegde opsporingsinstantie; e. Alle bevindingen dienen voorts vertrouwelijk te worden behandeld en de bevindingen in de rapportages mogen niet te herleiden zijn tot individuele personen. Voorts is vastgelegd dat de methodiek geschikt moet zijn in verschillende omgevingen en inzetbaar moet zijn in verschillende situaties. Bovendien moet de kwaliteit van de penetratietest en bijbehorende werkzaamheden door middel van toezicht en controles zijn gewaarborgd. De organisatorische inrichting en samenstelling van een penetratietestteam moet een onderdeel vormen van de methodiek. Inventarisatiemethodieken In 2003 hebben wij meerdere methodieken voor penetratietesten nader beschouwd op bruikbaarheid binnen het ministerie. Een drietal organisaties had een aanzet gemaakt voor een methodische benadering. Het betreft het National Institute of Standards and Technology (NIST), ISECOM (Institute for Security and Open Methodologies) en de Common Criteria (CC) evaluatiestandaard. Naar onze overtuiging voldeed op dat moment echter geen enkele methodiek volledig aan de eisen die door ons werden gesteld. De voornaamste bezwaren die op dat moment golden waren: - er is in het algemeen weinig aandacht voor de opstart- en afrondingsfase van een penetratietest. Deze fasen zijn met name van belang omdat hierin uitgangspunten en onderzoeksdoelstellingen besproken, afgestemd en vastgelegd worden. Dit vormt de basis van een penetratietest. In de opstartfase van een onderzoek moet bijvoorbeeld een plan van aanpak en werkprogramma worden opgesteld. Deze onderdelen komen niet in de bestaande methodieken aan bod; - in de bestaande methodieken vormt het beperken van de schade geen uitgangspunt. Bij een aantal methodieken wordt geen rekening gehouden met beperkingen ten aanzien van het gebruik van de verkregen evidence en geheimhouding; - in de methodieken zijn geen of onvoldoende afhankelijkheden met interne of externe profielen, red team of green team opdrachten; - de methodieken besteden onvoldoende aandacht aan de vastlegging van penetratietestobjecten, kwaliteitsaspecten en te hanteren normering. Deze randvoorwaarden behoren bij de opstartfase van een penetratietest vastgesteld en bekend te zijn; - kwaliteitsborging, kwaliteitscontroles en toezicht op de penetratietesten vormen geen onderdeel van de bestaande methodieken.
33 | de EDP-Auditor nummer 2 | 2007
Artikel
6//2"%2%)$).' &ORMULEREN