februari 2008 nummer 1
special
IT Forensics
Forensic Ready, hoe word je dat? NICC: samen tegen cybercrime
De juridische aspecten van forensisch digitaal onderzoek
Forensic Intelligence: onderwijs en onderzoek
Data terughalen middels data carving
INFORMATIEBEVEILIGING
Inleiding digitaal onderzoek
http://creativecommons.org/licenses/by-sa/3.0/nl/
IB 1 2008.indd 1
21-02-2008 13:54:59
Data carving: een bedreiging voor informatiebeveiliging? Auteur: Bas Kloet > Bas Kloet is digitaal forensisch onderzoeker bij Hoffmann Bedrijfsrecherche B.V. Hij is te bereiken via b.kloet@ hoffmannBV.nl. Kloet is onlangs afgestudeerd aan de opleiding Technische Informatica aan de Technische Universiteit Eindhoven, met als onderwerp ‘het meten en verbeteren van de kwaliteit van carving technieken’. Dit afstuderen werd uitgevoerd bij Hoffmann Bedrijfsrecherche, waar hij na zijn afstuderen ook is gaan werken als digitaal forensisch onderzoeker. De thesis is te vinden op: http://www.uitwisselplatform.nl/frs/download.php/461/thesis.pdf.
In het huidige klimaat is het zeer belangrijk zorgvuldig met informatie om te gaan, toch hoor je nog steeds met enige regelmaat verhalen over data die ongewild op straat terechtkomen. In de meeste gevallen stond die informatie simpelweg zichtbaar en onbeveiligd op de gegevensdrager, maar met de huidige technieken zou zelfs het verwijderen van de data niet genoeg zijn geweest. Dit artikel beschrijft een techniek, genaamd carving, die zelfs na formatteren en/of herpartitioneren nog zeer veel data terug kan halen.
verwijderen van bestanden. Aan de hand hiervan kunnen meestal nog heel veel bestanden worden teruggehaald. Aangezien dit een relatief efficiënte oplossing is, is dit in veel situaties een zeer goede keuze voor data recovery. Het nadeel van deze technieken is dat ze afhankelijk zijn van correcte bestandssysteem-informatie. Als deze informatie (opzettelijk)
De meeste bekende verhalen over het
deze geen gegevens bevatte. Hij krijgt
gecorrumpeerd is, dan werken deze
ongewild verspreiden van informatie
een vermaning, maar aangezien de stick
technieken niet meer. Dit betekent ook dat
gaan over het verlies van memory sticks,
leeg was, wordt er geen verder onderzoek
ze geen bestanden meer kunnen terughalen
zoals in het geval van de MIVD’er die
ingesteld.
van een geformatteerd systeem, sterker
hier recentelijk een taakstraf van 120 uur
Een aantal maanden later verschijnt er
nog, ze zien niet dat deze bestanden
voor heeft gekregen. Door het verlies van
ineens vertrouwelijke defensie informatie
er überhaupt nog zijn. Carving werkt
deze en eerdere USB-sticks worden er nu
op het internet, omdat een slimme cracker
daarentegen puur door te kijken naar de
steekproefsgewijs controles gedaan van
een data carving tool op de gevonden
ruwe data en wordt dus niet beïnvloed door
digitale media bij de in- en uitgangen van
USB-stick heeft toegepast. Na uitvoerig
het bestandssysteem. Dit betekent ook dat
defensielocaties1. Een belangrijke vraag
intern onderzoek wordt de publiek
een carver (nagenoeg) even goed werkt op
betreffende deze controles is: kijken ze
gemaakte informatie gekoppeld aan
een FAT of NTFS, maar bijvoorbeeld ook op
ook naar de verwijderde informatie en zo
deze eerder verloren stick. Nu moet niet
een Ext2/3 bestandssysteem.
ja, met welke technieken? De volgende
alleen uitgelegd worden waarom er wéér
(hypothethische) situatie laat zien waarom
informatie op straat is beland, maar ook
Als een carver geen gebruikmaakt van de
deze vraag relevant is2:
waarom er niet adequaat is ingegrepen
aanwezige bestandssysteem-informatie,
Iemand gebruikt intern bij defensie
toen het verlies bekend werd. En dit gaat
hoe worden de verwijderde bestanden dan
een USB-stick voor het transporteren
zelfs nog uit van het geval dat er geen
herkend en teruggehaald? Hiervoor kan
van vertrouwelijke informatie. Aan het
opzet in het spel is. Uit onderzoeken
een carver gebruikmaken van de interne
eind van iedere dag formatteert hij deze
van Hoffmann blijkt keer op keer dat de
structuur die aanwezig is in verschillende
stick, om er zeker van te zijn dat er geen
meeste fraude van binnenuit gepleegd
bestandstypen. Een voorbeeld van deze
gegevens achterblijven. Op een dag neemt
wordt. Zou u het detecteren als iemand
structuur is gegeven in figuur 1.
hij deze stick mee naar huis en wordt hij
data meeneemt op een vers geformatteerde
toevallig gecontroleerd bij de uitgang. De
USB-stick, de geformatteerde memory card
In de PNG bestandsstructuur zijn een
stick lijkt leeg en met conventionele file
van een gsm, pda of navigatiesysteem?
aantal karakteristieke elementen aan
recovery technieken worden dankzij het
te wijzen die een carver kunnen helpen
formatteren geen bestanden aangetroffen;
De kern van de eerdergenoemde
dit bestand te onderscheiden van de
hij kan dus zonder problemen vertrekken.
hypothetische situatie draait om het
omliggende data. Allereerst is er de header, r
Onderweg naar huis verliest hij de stick
verschil tussen data carving en meer
een identificatiestring die uniek is voor
en hij geeft dit nog diezelfde avond door
conventionele file recovery technieken.
ieder bestandsformaat3. Deze kan dus bij
aan de veiligheidsofficier. Gelukkig kan
Bij de conventionele technieken wordt
uitstek gebruikt worden om het begin van
hij hierbij nog wel melden dat de stick
gebruikgemaakt van bestandssysteem-
een bepaald type bestand te detecteren.
voor vertrek nog gecontroleerd was en dat
informatie die achterblijft na het
Veel bestandsformaten hebben naast een
1••• http://mindef.nl/tekst/actueel/parlement/kamerbrieven/2006/2/20060609_briefveiligheidsincidenten.aspx 2••• Dit is hypothetisch, de exacte controlemethode is bij ons niet bekend
36 •
• • • • • Informatiebeveiliging februari 2008
IB 1 2008.indd 36
04-02-2008 12:46:12
carver zal al deze gevallen zien als het begin van een MP3 bestand en uiteindelijk ook resultaten produceren die helemaal geen correcte MP3 bestanden zijn. Het controleren van dit soort foute resultaten kost relatief veel tijd, zeker als hier geen geautomatiseerde tools voor gebruikt worden. Om de hoeveelheid incorrecte bestanden sterk te verminderen, is de file structure carving techniek ontwikkeld. File structure carving maakt gebruik van het feit dat een bestand buiten de header en de footer nog veel meer duidelijk herkenbare structuren bevat. In het geval van het PNG formaat zijn er meerdere duidelijk herkenbare strings, namelijk de identifiers, die gebruikt kunnen worden om ook tussen de header en de footer te blijven checken of het bestand wel klopt. De locatie van deze identifiers verschilt per PNG bestand, afhankelijk van de precieze inhoud, maar de ‘size’ informatie kan gebruikt worden om de positie van de verschillende identifiers te bepalen. Tevens kan gebruik gemaakt worden van de CRC informatie om te kijken of de secties goed gedetecteerd zijn. Het gebruik van
Figuur 1: PNG bestandsstructuur
al deze extra informatie zorgt ervoor dat deze techniek veel betrouwbaarder is dan
header ook een unieke footerr om het einde
Header-footer carving is de meest simpele
header-footer carving, maar ook deze
van het bestand aan te geven en intern is
techniek en maakt alleen gebruik van de
techniek is helaas niet vrij van problemen.
een bestand vaak ook weer opgedeeld in
header en footer informatie. Deze techniek
Om deze problemen goed uit te kunnen
stukken met een vaste layout. Bij PNG heet
doorzoekt de data tot een bekende header
leggen, moet eerst meer verteld worden
zo’n onderdeel een sectie, welke bestaat
gedetecteerd wordt, waarna gezocht
over de manier waarop (verwijderde)
uit een omschrijving van de grootte van
wordt naar een bijbehorende footer. De
bestanden op bijvoorbeeld een harde schijf
de sectie (size), een identificatie string
data tussen de header en footer wordt
of USB-stick kunnen staan.
(identifier), r de inhoud van de sectie
beschouwd als een bestand.
(content data) en een waarde die gebruikt
Als een digitaal medium enige tijd
kan worden om de sectie te verifiëren (CRC
Op het eerste gezicht lijkt dit een simpele
gebruikt is en er gedurende die tijd
data). Al deze data kan in meer of mindere
en goed werkende oplossing, maar toch
bestanden toegevoegd en verwijderd zijn,
mate door een carver gebruikt worden
kleven er een aantal grote nadelen aan.
ontstaat er een verdeling op dit medium
om een bestand te onderscheiden van
Allereerst zijn de headers en footers wel
waarbij bestanden en lege ruimte elkaar
de omliggende data, op bijvoorbeeld een
uniek voor de verschillende bestandstypen,
afwisselen. Bij het wegschrijven van een
harde schijf of USB-stick.
maar dat betekent niet dat ze niet op
nieuw bestand zal het bestandssysteem
andere plaatsen in de onderzochte
zoeken naar een stuk lege ruimte dat
Op het moment zijn er drie technieken
data voorkomen. Een goed voorbeeld is
groot genoeg is om dit bestand als geheel
bekend om deze bestandsinformatie
het MP3 bestandsformaat waarvan de
weg te schrijven. Dit is helaas niet altijd
te gebruiken voor het terughalen van
header simpelweg bestaat uit de letters
mogelijk, dus moet soms een bestand in
verwijderde bestanden, namelijk:
‘mp’. De header van geen enkel ander
twee of meer delen worden opgesplitst,
• Header-footer carving
bestandsformaat begint hiermee, maar er
waarna deze delen op verschillende
• File structure carving
zijn genoeg plaatsen op een harde schijf
plaatsen worden weggeschreven. Dit wordt
• Content carving
waar ‘mp’ staat4, zonder dat daar een
fragmentatie genoemd en kan voor een
MP3 bestand begint. Een header-footer
carver veel problemen opleveren.
3••• Let wel dat bijvoorbeeld kale tekst bestanden geen vaste identificatiestring hebben. 4••• Ofwel \x6d\x70, wat ‘mp’ is in hexadecimale notatie.
Informatiebeveiliging februari 2008 • • • • • •
IB 1 2008.indd 37
37
04-02-2008 12:46:13
dat eigenlijk alleen maar met behulp van content carving teruggehaald kan worden is (unicode) tekst. Een simpel tekstbestand bevat geen standaard structuur waarvan
Data carving: een bedreiging voor informatiebeveiliging?
Figuur 2: Fragmentatie scenario
een carver gebruik kan maken, maar de
Figuur 2 toont een voorbeeld van een
‘x00x00x00x0C’ en ‘IHDR’ kan dan apart
toegestane karakters zijn wel precies
mogelijk fragmentatie scenario, waarin F1
verwerkt worden, waarna bij het detecteren
bekend. Als een carver dus een gebied
in twee delen opgesplitst is. Als een file
van ‘IDHR’ de verwerking van dit PNG
in de data tegenkomt dat puur bestaat
recovery techniek gebruikmaakt van de
bestand weer verder kan gaan. Het tweede
uit tekstkarakters5, dan zou dit een
bestandssysteem-informatie dan is er niets
geval van fragmentatie is veel moeilijker
tekstbestand kunnen zijn.
aan de hand, aangezien deze informatie
om af te handelen, aangezien deze in de
precies beschrijft waar F1 opgeslagen is.
‘content data’ plaatsvindt. Content data is
Een andere content carving techniek is
Een carver daarentegen moet zelf detecteren
een term voor die delen van een bestand
het definiëren dat bepaalde karakters niet
waar het eerste deel eindigt en waar het
waarvan de structuur zo ingewikkeld is
voor mogen komen in specifieke delen van
tweede deel weer begint. Als dit niet goed
dat deze niet of zeer moeilijk gebruikt kan
een bestand. Als een carver deze karakters
gebeurt, bijvoorbeeld als een header-footer
worden voor carven. Een voorbeeld hiervan
toch tegenkomt in zo’n deel, dan is dit een
techniek wordt gebruikt, dan kan dit leiden
is de (gecomprimeerde) grafische data in
zeer goede indicatie dat het bestand daar
tot allerlei foute resultaten. Afhankelijk van
een PNG of JPEG bestand. Bij sommige
gefragmenteerd is.
het type van F2 zijn er bij header-footer
bestandsformaten, zoals PNG, bestaat het
carving in dit geval grofweg drie uitkomsten
merendeel van de data uit content data, dus
Een laatste bekende content carving
mogelijk:
fragmentatie van dit soort files zal meestal
techniek werkt door statistische informatie
in die gebieden optreden.
te verzamelen over de geïnspecteerde
1. F1 en F2 zijn van verschillende types,
data. Als in een gebied met content data
waardoor de carver (waarschijnlijk) pas
Om om te kunnen gaan met fragmentatie
een of meer van de statistische variabelen
aan het eind van F1(2/2) een footer
in deze gebieden is een andere techniek
plotseling veranderen, kan dit een teken
zal vinden die past bij de header van
ontwikkeld die niet kijkt naar de structuur
zijn dat er op dat gebied fragmentatie
F1(1/2). In dit geval zal dus het hele
van bepaalde onderdelen in de data, maar
aanwezig is. Een van de statistische
gebied van het begin van F1(1/2) tot
naar de data als geheel. Deze techniek wordt
variabelen die hiervoor gebruikt wordt is
het eind van F1(2/2) als één bestand
begrijpelijkerwijs ‘content carving’ genoemd.
‘informatie entropie’. Kort gezegd geeft
gecarved worden, dus inclusief F2 en een
Een voorbeeld van een bestandsformaat
informatie entropie de informatiedichtheid
stuk lege ruimte. 2. F1 en F2 zijn van hetzelfde type, waardoor de carver de footer van F2 koppelt aan de header van F1(1/2). F1(1/2) en F2 worden dan samen als één bestand gecarved en F1(2/2) wordt niet meegenomen. 3. Een intelligentere header-footer carver zou de header van F2 kunnen detecteren en daardoor het carven van F1 afbreken. In dit geval wordt F2 (waarschijnlijk) wel goed gecarved, maar F1 niet. Om uit te leggen hoe, en in welke gevallen, een file structure carving techniek om kan gaan met fragmentatie, wordt weer teruggegrepen op het PNG voorbeeld, waarbij de PNG ditmaal op twee plaatsen gefragmenteerd is. Dit is te zien in figuur 3. De eerste fragmentatie is in een gebied met veel structuur informatie, waardoor een file structure carving techniek relatief gemakkelijk kan ontdekken dat de PNG op dat punt gefragmenteerd is. Alle data tussen
Figuur 3: Gefragmenteerd PNG bestand
5••• Dus geen binaire data
38 •
• • • • • Informatiebeveiliging februari 2008
IB 1 2008.indd 38
04-02-2008 12:46:16
van de onderzochte data aan. Data met
Onderstaand tabel bevat de resultaten voor
informatieverlies te voorkomen, is het
een relatief lage informatiedichtheid,
Encase, FTK en Revit op de drie images.
niet te versturen.
zoals tekstbestanden, hebben in het
Voor ieder image is gekeken hoeveel van de
algemeen een lage entropie. Hoge entropie
in het image aanwezige bestanden correct
via een digitaal medium, zoals een USB-
wordt voornamelijk aangetroffen bij
werden opgehaald. Tevens is voor ieder
stick of cd-rom, absoluut noodzakelijk is,
gecomprimeerde data, zoals bijvoorbeeld ZIP
image gekeken hoeveel incorrecte resultaten
zorg dan voor goede encryptie van die
bestanden.
door de tools opgeleverd werden.
2. Indien vervoer van gevoelige informatie
data. 3. Controleer bij digitale media die het
Het gebruik en de ontwikkeling van
Kort gezegd haalt het Revit framework op
bedrijfspand verlaat, in ieder geval
verschillende content carving technieken
deze drie images minimaal twee keer zoveel
steekproefsgewijs en met de beste
staan feitelijk nog in de kinderschoenen,
bestanden correct terug als de bekende
beschikbare technieken, of er geen
maar de al bereikte resultaten zijn zeer
forensische programma’s, met nagenoeg
vertrouwelijke informatie meegenomen
veelbelovend voor het potentieel van deze
geen incorrecte resultaten.
wordt. Dit hoeft niet altijd met opzet te
techniek.
zijn, maar het resultaat blijft hetzelfde. U als informatiebeveiliger dient te weten
Door medewerkers van Hoffmann is een
dat er steeds meer verwijderde data van
Natuurlijk kan een techniek als carving
carver ontwikkeld die de verschillende
(geformatteerde) digitale media terug te
ook in uw voordeel werken, met name bij
technieken combineert, om de kracht van
halen valt. Dit betekent dus ook dat er
fraude, hacking en beveiligingsonderzoeken.
zowel file structure als content carving
steeds meer manieren zijn waarop informatie
Aangezien in de meeste bedrijven de
technieken in de praktijk te kunnen
bewust en onbewust buiten de grenzen
medewerkers lokaal data op kunnen slaan,
gebruiken. Tevens is een framework
van uw organisatie kan komen. Daarom is
en belastende informatie door hen vaak
ontwikkeld waarbinnen de resultaten
het van groot belang om bij het vervoer
alleen verwijderd wordt, kan carving veel
van deze carver automatisch gevalideerd
van (bedrijfskritische) informatie via een
nuttige informatie opleveren in een digitaal
kunnen worden. Hiermee kunnen incorrecte
digitaal medium altijd de volgende vragen
onderzoek. Dit werkt bij carven ook als de
resultaten van de carver, zonder menselijke
te stellen:
computer al ge-herinstalleerd is. Daarom
interventie, geïdentificeerd worden. Hoewel de carver, genaamd Revit6, en het
zal Hoffmann ook in de toekomst verder 1. Is het absoluut noodzakelijk om
blijven ontwikkelen aan deze en andere
bijbehorend framework nog in een zeer
de informatie op die manier te
technieken om haar onderzoeken met nog
vroege ontwikkelingsfase zijn, kunnen er al
transporteren? De beste wijze om
meer diepgang uit te kunnen voeren.
zeer goede resultaten mee behaald worden. Om het verschil tussen Revit en de huidige
Aantal
Correct
Incorrecte
(veel gebruikte) forensische programma’s
Image
Programma
aanwezige
teruggehaald
Resultaten
aan te tonen, is het Revit framework
bestanden
vergeleken met FTK 1.71 van AccessData en Encase 6.7.1 van Guidance. FTK en
11-fat
Encase
15
7 (47 %)
6
FTK
15
6 (40%)
2
Revit
15
14 (93%)
0
Encase
10
1 (10%)
7
FTK
10
3 (30%)
8
Revit
10
7 (70%)
1
Encase
32
6 (19%)
19
FTK
32
8 (25%)
24
Revit
32
19 (59%)
0
Encase zijn vooraanstaande forensisch onderzoeksprogramma’s met ingebouwde carving mogelijkheden. De verschillende programma’s zijn gebruikt om bestanden terug te halen uit drie ‘images’ (datakopieën op bit-niveau) die speciaal ontwikkeld zijn
12-ext2
om carvers te testen. Deze images komen uit twee bronnen: • Het 11-fat en 12-ext2 image zijn twee carving testsets van Nick Mikus7, welke gebaseerd zijn op bitkopieën van een
DFRWS 2006
FAT12 en een Extended2 bestandssysteem. • Het DFRWS2006 image is het databestand 8
van de DFRWS 2006 challenge , waaruit met behulp van carving zo veel mogelijk bestanden teruggehaald moesten worden. 6••• Revit is een samentrekking van Revive It 7••• http://dftt.sourceforge.net/test11/index.html en http://dftt.sourceforge.net/test12/index.html 8••• http://dfrws.org/2006/challenge/submission.shtml
Informatiebeveiliging februari 2008 • • • • • •
IB 1 2008.indd 39
39
04-02-2008 12:46:20