Dit artikel geeft handvatten voor bedrijven en instellingen die te maken krijgen met computercriminaliteit. Punten die van belang zijn als men overweegt om bij de politie aangifte te doen of zelf het incident wil (laten) onderzoeken. Het benaderd een incident vanuit de kant van de opsporing en geeft een overzicht van welke informatie vastgelegd moet worden en een beschrijving van tools die daarbij gebruikt kunnen worden.
Inleiding
In het geval dat een server wordt gehackt is een van de eerste acties van de systeembeheerder om de betreffende server offline te halen, uit te schakelen en opnieuw te configureren. De server moet weer snel online zijn. Immers het bedrijf moet doorgaan. Echter door deze acties zijn waardevolle sporen die van belang kunnen zijn bij de opsporing en vervolging van de dader verloren gegaan.
Nadat de server weer normaal functioneert en de bedrijfprocessen hun doorgang vinden, zal bij het slachtoffer de behoefte ontstaan om deze schade op de dader te verhalen. Een stap in dit proces kan zijn dat men naar de politie gaat voor het doen van aangifte. Maar de eventuele sporen die de dader achter gelaten heeft zijn verdwenen. Dit geeft de politie dan weinig mogelijkheden om tot een succesvolle opsporing te komen. Een schade vergoeding zit er dan dus niet meer in.
Ook kan de dader de gehackte server gebruikt hebben als een stepping stone. Hij heeft dan via uw server ingebroken in een ander bedrijf. Als dit bedrijf of een opsporingsinstantie het spoor terug volgt en bij u uitkomt, is het zeer moeilijk om de onschuld aan te tonen. Het bewijs is immers al vernietigd.
Door het niet onderzoeken van een dergelijk incident kan het doel en motief van de dader niet meer achterhaald worden. Er bestaat nog steeds de kans op herhaling.
In de omschreven situatie waren de handelingen, begrijpelijk, volledig gericht op de continuïteit van de informatie voorziening. Deze handelingen zijn vaak het gevolg van het ontbreken van een incident response plan. Het hebben van een degelijk incident response plan helpt om de schade te beperken, maar biedt ook een kans om de ontstane schade op de dader te verhalen, door het veilig stellen van sporen.
Voor de politie begint een onderzoek met het stellen van een aantal vragen: “Wat?”, “Waar?”, “Wanneer?”, “Waarmee?”, “Waarom?” en “Hoe?”. Deze vragen moeten uiteindelijk leiden tot een antwoord op de ultieme vraag “Wie heeft het gedaan?”
Het goed onderzoeken van een incident begin bij de voorbereiding! Dit artikel is een aanzet daartoe. Het is niet de bedoeling om een compleet incident response plan neer te leggen.
Wat?
De vraag "Wat is er gebeurd?" kan alleen betrouwbaar beantwoord worden als het bewijs op integere en transparante wijze veiliggesteld is. De volgende 4 soorten data kunnen worden veiliggesteld:
1. data uit het geheugen (memory)
2. vluchtige data
3. data op de harde schijf
4. netwerkverkeer
Het is niet verplicht om bij elk incident deze 4 stappen te doorlopen. Dit zal sterk afhangen van het soort incident. Als het een werknemer betreft die fraude heeft gepleegd met facturen is het voldoende om het onderzoek tot stap 3 te beperken. Bij een hacking incident is het juist zeer aan te bevelen om alle stappen te doorlopen
Memory
Het onderzoeken van het geheugen van een computer is een relatief nieuwe ontwikkeling binnen het digitaal onderzoek. Daarom wil ik dit niet te uitgebreid behandelen. Vooral voor Windows systemen zijn er interessante ontwikkelingen op dit gebied.
In het kort komt het er op neer dat er een dump van het geheugen wordt gemaakt. Deze dump wordt verder geanalyseerd. Het is daarbij mogelijk om bijvoorbeeld programma’s te reconstrueren.
Interessante links voor dit onderwerp zijn: Forensikblog.de en dfrws.org
vluchtige data
Op een computer is systeem ook vluchtige data aanwezig die voor het onderzoek belangrijke informatie kan bevatten. Deze informatie is bij het uitschakelen van het systeem niet meer aanwezig en moet dus veiliggesteld worden voordat het systeem uitgeschakeld wordt. Hierbij valt te denken aan:
In verband met de mogelijke aanwezigheid van rootkits moet voor het veiligstellen van deze data gebruik gemaakt worden van vertrouwde, schone programma’s. Bij Windows kunnen deze van een vertrouwd systeem op een cd-rom gekopieerd worden. Vergeet daarbij niet om de cmd.exe mee te kopiëren. Voor Unix moeten static linked binaries gemaakt worden. Voorbeelden van programma’s die gebruikt kunnen worden:
Windows | Unix |
date | date |
netstat | netstat |
psloggedon | w |
pslist | df |
fport | lsof |
nbtstat | ifconfig |
arp | arp |
route | route |
cmd.exe |
De programma’s kunnen het beste in een script gedraaid worden, waarbij het script begint en eindigt met de vermelding van datum en tijdstip. De output wordt dan in een bestand opgeslagen. Deze programma’s zullen wel kleine wijzigingen op de harddisk tot gevolg hebben, daarom moeten alle handelingen goed gedocumenteerd worden. Het output bestand moet in ieder geval niet op het gehackte systeem opgeslagen worden. Daar kan het immers data overschrijven die van belang zou kunnen zijn. Maar ik heb ook al meegemaakt dat het door de hacker ontdekt werd en vervolgens overschreven werd. Mijn aanbeveling is om met programma’s zoals netcat en cryptcat de output te redirecten naar een remote systeem. Om routing en firewall problemen te voorkomen moet het forensische systeem in hetzelfde subnet geplaatst worden als het gehackte systeem.
Beperk dit onderzoek altijd tot data die echt vluchtig is. Ik heb vaak genoeg handleidingen gezien waarbij werd aangeraden om bijvoorbeeld bepaalde settings uit het register op te vragen of een dump van de password file te maken. Een dergelijk onderzoek kan altijd leiden tot het vernietigen van sporen. Het is een stuk analyse wat ook heel goed achteraf uitgevoerd kan worden zonder dat het tot data verlies leidt.
Voor Windows systemen zijn er een aantal programma’s die dit proces ondersteunen. Mijn persoonlijke favoriet is de Windows Forensic Toolchest. Dit programma staat op het Helix boot cd die in het volgende gedeelte aangehaald wordt. Een andere goede oplossing is het Forensic Server Project:
Als alle data verzameld is kan het systeem afgesloten worden. Dit kan op 2 manieren: de correcte wijze of de juiste wijze. De correcte wijze is de shutdown procedure zoals die in de handleiding van het besturings systeem staat. De juiste is het stroomsnoer uit het systeem te trekken. De juiste wijze is gezien vanuit een forensisch oogpunt. Het is altijd mogelijk dat het systeem zodanig is gemanipuleerd dat bij het afsluiten er een script in werking treed dat alle bestanden overschrijft. Maar vanuit het oogpunt van continuïteit van de informatie voorziening kan een dergelijke wijze van afsluiten ook onherstelbare schade tot gevolg hebben, bijvoorbeeld bij een database. Hier zal dus een afweging gemaakt moeten worden, waarbij het financiële belang vooropstaat.
harde schijf
De beste methode voor het veiligstellen van bewijsmateriaal is het verwijderen van de harde schijf uit de server en de server te herinstalleren op een nieuwe harde schijf.
De originele harde schijf is dan ter beschikking voor het “post-mortem” onderzoek. Om geen risico te lopen zal er een kopie van de harde schijf gemaakt moeten worden. De kopie wordt dan gebruikt voor het onderzoek en het origineel kan in een kluis worden opgeborgen. Het maken van deze kopie moet op een forensisch verantwoorde manier gebeuren. Het is van belang om te waarborgen dat er geen data verloren of gewijzigd wordt.
Het kan natuurlijk gebeuren dat de harde schijf niet bewaard kan worden en dat deze weer gebruikt moet worden. Dit hoeft op zich geen probleem te zijn voor het verder onderzoek. Het bewaren van de originele harde schijf biedt alleen meer zekerheid. Het is nu mogelijk om te allen tijde de situatie weer te reconstrueren.
Het maken van de kopie gebeurd door het maken van een bitstream image. Een bitstream image houdt in dat er een kopie wordt gemaakt van de harde schijf van de eerste bit tot en met de laatste bit. Bij het maken de image is zeer belangrijk dat dit zodanig gebeurd dat de data op originele harde schijf integer en ongewijzigd blijft. Dit kan worden bereikt door gebruik te maken van een hardwarematige of softwarematige schrijfbeveiliging.
Software matige schrijfbeveiliging kan onder Unix door het bestands systeem read only te mounten:
Onder DOS kan er gebruik gemaakt worden van een bootdiskette van Encase van Guidance Software. Deze plaatst bij het opstarten een lock op alle in het systeem aanwezige harde schijven.
Voor hardwarematige schrijfbeveiliging kan gebruik gemaakt worden van:
Voor het daadwerkelijk maken van de image kan gebruik gemaakt worden van:
Met name HP servers zijn gevoelig voor het toevoegen van extra hardware. In die gevallen kan een image gemaakt worden via een netwerk verbinding. Een goede methode en populaire manier om dit te doen is om gebruik te maken van dd en de output via netcat over het netwerk te versturen.
Het kan zo zijn dan een server zodanig belangrijk is voor een bedrijf dat deze ten alle tijde online moet blijven. In die gevallen rest ons niks anders dan op het live systeem de image te maken. Ook hier biedt de combinatie van dd en netcat weer redding.
Voor Windows systemen is er ook een goede versie van dd beschikbaar. Netcat is zelfs geïntegreerd in deze versie:
Monitoren netwerkverkeer
Op het moment dat een gecompromitteerd systeem ontdekt wordt gaat er vaak enige tijd overheen voordat er daadwerkelijk actie ondernomen wordt. Deze tijd kan gebruikt worden om extra informatie over het incident te verzamelen of om zelfs de hacker op heterdaad te betrappen. Het monitoren, sniffen van het ingaande en uitgaande netwerkverkeer kan informatie verschaffen over verbindingen van de hacker, speciale programma’s (DDOS software of beveiligings scripts). De mogelijkheid bestaat dat de hacker net inlogt of nog ingelogd is.
Het sniffen van het netwerkverkeer moet gebeuren vanaf een apart systeem. De kans is zeer groot dat door de hacker een rootkit is geïnstalleerd. De rootkit schermt de aanwezigheid van de hacker af voor de legitieme gebruikers. Door de hacker worden bepaalde systeembeheer programma’s vervangen door eigen versies. Hierdoor zijn de processen, bestanden en verbindingen van de hacker onzichtbaar. Ook kan de rootkit bestaan uit een zogenaamde kernel module. Deze module wordt in het geheugen geladen en vangt alle verwijzingen naar de hacker af. Door te sniffen vanaf het gehackte systeem bestaat daardoor de kans dat het netwerkverkeer van de hacker niet zichtbaar is. Maar de hacker zou wel kunnen zien dat het netwerkverkeer gelogd wordt en kunnen overgaan tot minimaal het vernietigen van bewijs en misschien tot het vernielen van het gehele systeem. Porbeer altijd te voorkomen dat de netwerkverbinding van het gehackte systeem verbroken wordt. De hacker zou bijvoorbeeld een ping script gemaakt kunnen hebben dat bij het wegvallen van de verbinding het systeem overschrijft en daarmee alle data vernietigd.
Voor het ontdekken van de aanwezigheid van rootkits op Unix systemen kan meer informatie worden verkregen op de website:
Het sniffen van het netwerkverkeer kan in een geswitcht netwerk lastig zijn. Gebruik in geen geval oplossingen waarbij netwerkverkeer via spoofing wordt omgeleid. De meeste managed switches bieden de mogelijkheid om netwerkverkeer om een poort te kopiëren. Maak hier gebruik van. Een andere methode om toegang te krijgen tot het netwerkverkeer kan zijn door gebruik te maken van een ethernettap. Het is alleen niet mogelijk om deze te plaatsen zonder het netwerkverkeer te onderbreken. Dergelijke taps worden o.a. geleverd door Netoptics.
Voor het opslaan van het netwerkverkeer kan gebruikt gemaakt worden van:
Naast de juiste tijd van het systeem is het ook zeer belangrijk om gedetailleerde notities, met datum en tijdstippen van alle handelingen en gesprekken met betrekking tot het incident vast te leggen. Bijvoorbeeld het tijdstip van het draaien van een script om de vluchtige data veilig te stellen. Door het uitvoeren van een dergelijk script worden datums en tijdstippen van bestanden op het gehackte systeem veranderd. Als het juiste tijdstip bekend kunnen de gewijzigde bestanden in het onderzoek uitgesloten worden en roepen zij geen vragen op.
Waar?
Een van de vragen die de politie zal stellen is: “Waar heeft het incident plaatsgevonden?”. Hier wordt de fysieke plaats mee bedoeld. De Nederlandse politie zal geen onderzoek instellen naar de aangifte van een server, die in werkelijkheid in Amerika in een datacenter staat. Ook in het uiteindelijke strafproces vind er een toetsing van een aantal punten plaats (artikel 348 van het Wetboek van Strafvordering). Een van de punten waar naar gekeken wordt is de zogenaamde “locus delicti”, waar heeft het feit plaatsgevonden. Om dit vast te stellen zijn er 3 leren en als aan 1 van deze leren voldaan wordt kan de zaak voor de Nederlandse rechter gebracht worden.
Wie?
De vraag ‘wie?’ heeft niet alleen betrekking op de dader. Hoewel het voor de onderzoeker zeer makkelijk is als de identiteit van de dader op dat moment al bekend is. Deze vraag heeft ook betrekking op personen die tijdens het incident handelingen hebben verricht. Wie heeft het feit ontdekt? Wie heeft dit stukje bewijs veiliggesteld? Om juridisch zeker te zijn moet al het bewijs herleidbaar te zijn en de herkomst mag geen vragen oproepen.
Het is in het verleden wel gebeurd dat werknemers van betrokken bedrijf op IRC hebben zitten chatten met de hacker om op deze manier te achterhalen op welke wijze de hacker toegang had gekregen tot het systeem. Als hiervan logfiles aan de politie worden overhandigd zal de politie moeten weten wie de betrokken werknemer is en deze persoon een korte verklaring afnemen om de herkomst van het bewijs vast te leggen.
In een andere hacking zaak werd de hacker betrapt door de systeembeheerder. Op het moment dat de hacker dit in de gaten had, stuurde hij naar alle ingelogde gebruikers een boodschap waaruit bleek dat hij het systeem ging vernielen. In dit geval is van een aantal mensen die deze boodschap gezien hadden de naam vastgelegd. De hacker kon zich er vervolgens niet meer op beroepen dat hij een “type foutje” gemaakt had.
Welke?
Noteer alle IP adressen en hostnames die aan een gehackt systeem zijn toegekend. IP adressen en hostnames willen nog wel eens veranderen. Deze informatie is vaak later niet meer terug te halen. Dit leidt tot vragen die een zaak minder sterk maken.
Er is een probleem als in het onderzoek bewijs materiaal wordt gevonden met daarbij het IP adres van de gehackte computer en bij de onderzoekers is staat alleen de hostname van het gehackte systeem bekend. Toon dan maar aan dat je bewijs betrekking heeft op de gehackte server. Het IP adres dat op dat moment aan de hostname gekoppeld is hoeft niet hetzelfde IP adres te zijn dat het systeem op het moment van het incident had. Het is dan te hopen dat er een registratie is van de verandering van het IP adres.
Hoe?
Hoe is de hacker binnengekomen? Dat zal waarschijnlijk geweest zijn door een kwetsbaarheid in een van de aangeboden diensten. Een opgave van het betreffende besturingssysteem met versienummer, de draaiende services (bijvoorbeeld ssh, webserver) met patchlevel, kunnen helpen om vast te stellen hoe de hacker is binnengedrongen in het systeem.
Deze wetenschap is zeer belangrijk om dergelijke incidenten in de toekomst te voorkomen. Het kan ook bewijs materiaal zijn dat later in het onderzoek van pas kan komen. Het gaat hier om zogenaamde dader wetenschap.
Het aantreffen van het gebruikte exploit op de pc van de verdachte is geen doorslaggevend bewijs. Het maakt voor hem wel de situatie lastiger.
Hoeveel?
Om de geleden schade op de dader te kunnen verhalen moet de schade wel inzichtelijk zijn. Het is voor slachtoffers van een misdrijf mogelijk om zich te voegen in het strafproces. De strafrechter kan dan op de zitting een schadevergoeding toekennen. Een voorwaarde is wel dat de schade eenvoudig te bepalen is. Te denken valt aan arbeidsloon, materiaal huur en schadevergoedingen aan klanten. Voor vergoeding van immateriële schade zoals reputatie verlies zal een gang naar de civiele rechter gemaakt moeten worden.
Aandachtspunten
Een standaard werkmethode voor hackers is om het netwerk te sniffen voor inlognamen en wachtwoorden. Dit is mogelijk omdat er nog steeds van services gebruik wordt gemaakt waarbij het wachtwoord onversleuteld verstuurd wordt, zoals telnet en FTP. Dit geldt ook voor ophalen van e-mail. Daarom is het aan te bevelen om na een incident van alle gebruikers de wachtwoorden te wijzigen. Het is voor een hacker een stuk eenvoudiger om een systeem van binnenuit te hacken. Hij is immers al binnen en zal alleen hogere rechten willen hebben.
Verder is het aan te bevelen om gebruik te maken van een syslogserver. Dit is een server waarop andere computers hun logs kunnen wegschrijven. Een standaard programma in een hacker’s toolkit is een script dat in de logfiles bepaalde regels wist. Door gebruik te maken van een syslogserver wordt voorkomen dat er gerommeld kan worden met de logfiles. Veel van de bovenstaande vragen kunnen makkelijk beantwoord worden als de logfiles intact beschikbaar zijn.
In Nederland houden naast de politie, ook gespecialiseerde bedrijven, zich bezig met het onderzoeken van incidenten waarbij computers zijn betrokken. Deze kunnen het voorbereidende onderzoek doen, zodat u bij de politie een compleet en mogelijk al opgelost onderzoek kan neerleggen.
Conclusie
Een goede incident response kan alleen plaatsvinden als er van te voren een goed incident response plan gemaakt is. Punten voor een incident response plan zijn:
Deze posting is gelocked. Reageren is niet meer mogelijk.