- Rezbarenje podataka omogućuje vam oporavak datoteka analizom sirovih podataka bez korištenja datotečnog sustava.
- Oslanja se na potpise, zaglavlja, podnožja i magične brojeve kako bi locirao i rekonstruirao poznate formate.
- Alati poput Photoreca, Foremosta ili Scalpela implementiraju ove tehnike s različitim mogućnostima.
- Fragmentacija i gubitak imena su njegova glavna ograničenja koja pametni algoritmi za rezbarenje pokušavaju prevladati.

Rezbarenje podataka (ili rezbarenje datoteka) možda zvuči egzotično, ali zapravo je jedna od onih tehnika koje spašavaju dan kada se čini da je sve izgubljeno: formatirani diskovi, izbrisane particije, oštećeni datotečni sustavi… a ipak još uvijek možemo dohvatiti datoteke. To nije magija; radi se o iskorištavanju načina na koji su datoteke interno strukturirane i istiskivanju svakog posljednjeg bajta s diska, čak i ako operativni sustav kaže da je prazan.
Što je točno rezbarenje podataka?
Ukratko, rezbarenje podataka je proces izdvajanja nizova podataka (datoteka) iz većeg skupa podataka bez oslanjanja na strukture datotečnog sustava. DFRWS 2006 definirao ga je kao izdvajanje niza podataka iz većeg skupa podataka, tipično za analizu nedodijeljenog prostora datotečnog sustava, korištenjem zaglavlja i podnožja datoteka za prepoznavanje određenih tipova, potpuno ignorirajući datotečni sustav.
Jednostavnije rečeno: umjesto da pitaju datotečni sustav: "Hej, gdje je ova datoteka?", alati za rezbarenje čitaju disk kao masivni blok bajtova "u sirovom obliku ", a zatim traže datoteke na temelju njihovih internih potpisa. To je digitalni ekvivalent kopanja po odlagalištu otpada u potrazi za objektima koje prepoznajete po njihovom obliku, bez ikakvog popisa onoga što je tamo bilo prije.
Ovaj se postupak obično primjenjuje na nedodijeljeni ili nelocirani prostor : ona područja koja datotečni sustav označava kao slobodna, ali gdje još uvijek postoje ostaci starih datoteka. Na teško oštećenim, ponovno particioniranim ili formatiranim diskovima moguće je završiti radom izravno na cijeloj fizičkoj površini uređaja.
Važan detalj je da izrezivanje podataka nije ograničeno samo na tradicionalne tvrde diskove . To se odnosi i na SSD-ove, SD kartice, USB pogone , forenzičke RAW slike, memorijske dumpove i tako dalje. Sve dok postoje bajtovi za analizu, možete pokušati "izrezati" datoteke iz njih.

Klasični oporavak u odnosu na rezbarenje datoteka
Tradicionalni oporavak podataka oslanja se na činjenicu da metapodaci datotečnog sustava ostaju aktivni . Na primjer, u NTFS-u (Windows), FAT-u, ext4 (Linux) itd., kada izbrišete datoteku, obično se samo njezin unos u tablici označava kao slobodan, ali podaci ostaju dok se ne prebrišu.
Sve dok te strukture postoje, alati mogu čitati tablice datoteka, pratiti pokazivače na blokove podataka i rekonstruirati datoteku, čak i ako je fragmentirana. Također mogu lako razlikovati koji blokovi pripadaju aktivnim datotekama, a koji su "napušteni".
Problem? Kada se dogodi bilo koji od ovih scenarija, klasična metoda ostaje ranjiva i ne može oporaviti ništa korisno :
- Datoteka je davno izbrisana i njegov zapis u tablici datoteka je ponovno upotrijebljen.
- Disk je formatiran ili ponovno particioniran (na primjer, instalirate Linux na stari Windows sustav).
- Strukture datotečnog sustava su oštećene zbog fizičke štete, zlonamjernog softvera ili logičkih pogrešaka.
- Izvorni datotečni sustav je prepisan drugim (tipičan primjer: Windows disk formatiran kao ext4).
U tim slučajevima dolazi do izražaja rezbarenje datoteka : zaobilazi tablice, inode i MFT-ove te umjesto toga skenira sirovi prostor za pohranu uređaja tražeći poznate uzorke datoteka . To je "slijepiji" pristup, ali nevjerojatno koristan kada se nema ništa drugo na što se osloniti.
Potpisi, zaglavlja, podnožja i magični brojevi
Ključ za rezbarenje datoteka je u tome što gotovo sve vrste datoteka imaju prepoznatljive potpise . Ti se potpisi obično nalaze u zaglavlju (početak datoteke), a ponekad i u podnožju (kraj). Nadalje, mnogi formati pohranjuju metapodatke u tih prvih nekoliko bajtova, kao što su ukupna duljina datoteke ili druge strukturne informacije.
Koncept magičnog broja je ključan: to je konstanta koja vam omogućuje jedinstvenu identifikaciju vrste datoteke, bez obzira na ekstenziju koju je dodijelio operativni sustav. Ekstenzije (.jpg, .doc, .zip…) pomažu korisniku i sustavu, ali ono što je stvarno važno jest što se nalazi u prvih nekoliko bajtova datoteke.
Na primjer, standardni GIF-ovi počinju ASCII nizovima "GIF87a" ili "GIF89a" . U heksadecimalnom sustavu to se prevodi u određeno zaglavlje koje bilo koji alat može pretraživati. U slučaju GIF-ova, tipično podnožje uključuje bajt 0x3B (";"), opet na vrlo specifičnim pozicijama.
Još jedan dobro poznati primjer: ispravno formatirani JPEG počinje s 0xFFD8 i završava s 0xFFD9 . Ako otvorimo sliku u heksadecimalnom editoru, vidjet ćemo taj potpis na početku, a taj marker na kraju. Između njih postoje drugi markeri specifični za format (segmenti, Huffmanove tablice itd.) koji nam omogućuju da ga validiramo.
U Linuxu, naredba `file` koristi bazu podataka magičnih brojeva (smještenu u `/usr/share/file/magic` ili njegovoj kompiliranoj verziji, `magic.mgc` ) za identifikaciju stvarnog tipa datoteke pregledom prvih nekoliko bajtova , a ne njezine ekstenzije. Windows nema tako moćan izvorni ekvivalent, ali alati poput `filever` i uslužni programi trećih strana nude sličnu funkcionalnost.
Kako proces rezbarenja datoteke funkcionira korak po korak
Opća logika je vrlo slična u većini alata, iako svaki ima svoje trikove. Ukratko, proces rezbarenja datoteke obično slijedi ove osnovne korake :
1. Sekvencijalno čitanje uređaja ili slike
Alat čita sadržaj diska, particije ili forenzičke slike u blokovima (na primjer, iz 512 bajtova Prema zadanim postavkama, iako mnogi omogućuju podešavanje te veličine parametrima kao što su -bOvi blokovi se učitavaju u memoriju kako bi se mogli lako analizirati.
2. Potražite potpise zaglavlja i podnožja
Na temelju tih podataka u memoriji, program potražite potpise definirane u vašoj konfiguracijskoj datoteci (na primjer, foremost.conf (u slučaju Foremost-a). Svaki unos konfiguracije označava:
- Ekstenzija koja će se dodijeliti oporavljenoj datoteci (jpg, doc, gif, itd.).
- Ako je usporedba magičnog broja razlikuje velika i mala slova ili ne.
- Maksimalna veličina koje datoteka može imati ako nije pronađeno podnožje.
- Vrijednosti zaglavlja i, opcionalno, podnožja u heksadecimalni ili oktalni.
- Posebne opcije kao što su UNATRAG ili SLJEDEĆE za varijante pretraživanja.
Kada pronađe valjano zaglavlje, alat pretpostavlja da datoteka počinje tamo i traži odgovarajuće podnožje ili, ako format to dopušta, izračunava duljinu iz informacija ugrađenih u samo zaglavlje.
3. Ekstrakcija i ponovno sastavljanje podataka
Nakon što su locirane početna i krajnja točka (ili procijenjena veličina), program kopirajte sve blokove koji su dio datoteke i zapisuje ih u novu datoteku. U slučaju formata bez definiranog podnožja, ali s veličinom zaglavlja (na primjer, BMP), ovi se metapodaci koriste za određivanje koliko bajtova treba pročitati.
4. Validacija oporavljenih datoteka
Najnapredniji alati ne zadovoljavaju se s oporavkom "bilo čega": oni primjenjuju validatori specifični za vrstu datoteke kako bi se provjerilo da unutarnje strukture imaju smisla (tablice, kontrolni zbrojevi, obavezna polja itd.). To smanjuje lažno pozitivne rezultate i pomaže u otkrivanju oštećenih ili nepotpunih datoteka.
5. Organizacija rezultata i izvješća
Alat obično stvara izlazni direktorij (na primjer, izlaz ili onaj označen s -o) i unutar njega generira podmape s ekstenzijom: jpg, gif, oleitd. Također stvara revizijsku datoteku, tipa revizija.txt, gdje je dokumentirano:
- Parametri izvršenja, vrijeme početka i završetka.
- Naziv analiziranog uređaja ili slike.
- Broj raspakiranih datoteka prema vrsti.
- Naziv svake dohvaćene datoteke, veličina i pomak unutar izvorne slike.
Tipični alati za rezbarenje turpija
U svakodnevnom radu na oporavku podataka i forenzičkoj analizi koristi se nekoliko specijaliziranih alata koji na različite načine implementiraju ove tehnike rezbarenja, s više ili manje mogućnosti automatizacije i validacije.
fotorec
Photorec je vjerojatno jedan od najpopularnijih alata za rezbarenje. besplatno, otvorenog koda i višeplatformskoU početku je bio dizajniran za oporavak fotografija, ali danas podržava stotine vrsta datoteka. Radi tako što čita sirove slike ili uređaje i izdvaja datoteke iz poznatih potpisa, bez mijenjanja izvornog sadržaja.
Skalpel
Scalpel je još jedan klasik u besplatnom ekosustavu. Omogućuje vrlo detaljna konfiguracija potpisa putem svoje konfiguracijske datoteke, što ga čini vrlo fleksibilnim za forenzička okruženja gdje je važno precizno definirati koje se vrste datoteka pretražuju. Obično se pokreće iz komandna linija u Linuxu i zahtijeva određenu razinu tehničke vještine.
Najvažnije
Prije svega, nastao je u vojsci (razvijen je za Zračne snage Sjedinjenih Država), a njegov kod je kasnije objavljen. Njegova filozofija usredotočena je na... rezbarenje po uzglavlju/podnožju i po ugrađenoj duljiniOslanja se na vrlo sveobuhvatnu konfiguracijsku datoteku. Lako se instalira na Linux sustave, a na Windowsima se može koristiti kompajliranjem s Cygwin, koji djeluje kao sloj kompatibilnosti s POSIX-om.
U slučaju Foremosta, za korištenje na Windowsima potrebno ga je kompajlirati iz izvornog koda unutar Cygwin okruženja , a zatim kopirati izvršnu datoteku foremost.exe , njezinu datoteku foremost.conf i biblioteku cygwin1.dll u isti direktorij. Odatle se može pokrenuti kao da ste na Linuxu, s istim opcijama i ponašanjem.
Scenariji iz stvarnog svijeta u kojima se koristi rezbarenje podataka
Osim teorije, rezbarenje ima vrlo specifične i uobičajene primjene u profesionalnom i kućnom okruženju. Neki tipični primjeri su:
Oporavak datoteka izbrisanih prije nekog vremena
Kada se datoteka izbriše (na primjer) i pokušaju se njezini oporavci pomoću alata kao što su Oporavak datoteke WindowsAko sustav naknadno ponovno upotrijebi svoj unos u tablici datoteka, klasična metoda prestaje išta vidjeti. Međutim, sve dok blokovi datoteka nisu prepisani, rezbarenje podataka se nastavlja. Možete nastaviti tražiti te zaglavlja i rekonstruirati veći dio sadržaja.
Formatirani diskovi ili diskovi s izbrisanim particijama
Prilikom formatiranja ili ponovnog particioniranja, obično se utječu samo područja metapodataka i logička struktura. Fizički sadržaj ostaje, barem u početku. Dobar proces rezbarenja to omogućuje. prenesite fotografije, dokumente i ostale datoteke iz područja koja sada izgledaju "prazna".
Digitalna forenzička istraga
U forenzičkoj analizi uobičajeno je raditi s RAW slike diska koji su prošli kroz bezbrojne pokušaje: ponovno instalirane operativne sustave, zlonamjerni softver, pokušaje brisanja itd. Izrezivanje podataka je ključno za lociranje dokazi u nedodijeljenom prostorustare e-poruke, zapisnici aplikacija, privremeni dokumenti ili "zaboravljene" datoteke na koje datotečni sustav više ne upućuje.
Oporavak na oštećenim uređajima
Na diskovima s lošim sektorima ili SSD-ovima s logičkim problemima, datotečni sustav može postati toliko oštećen da Čak se ni ne sastavljaI ovdje, rezbarenje na prethodno stvorenoj slici (kako se ne bi pogoršala šteta) može spasiti barem neke od korisnih informacija.
Ograničenja rezbarenja datoteka: imenovanje, fragmentacija i lažno pozitivni rezultati
Rezbarenje podataka je nevjerojatno moćno, ali nije čudotvorni lijek. Ima strukturna ograničenja koja je važno razumjeti kako bi se izbjeglo razočaranje i donošenje pogrešnih zaključaka u forenzičkoj analizi.
Gubitak izvornog imena i rute
Bez pristupa datotečnom sustavu, program nema načina da sazna naziv datoteke ili mapu u kojoj se nalazila. Zato alati generiraju generička imena, kao što su 00032837.doc, slika0001.jpgitd. S gledišta dokaza ili korisnika, ovo obvezuje ručno pregledajte sadržaj kako bi se utvrdila njegova relevantnost.
Fragmentacija datoteka
Najveća prepreka u klasičnom rezbarenju je fragmentacija. Mnogi jednostavni algoritmi Pretpostavljaju da je datoteka u susjednim blokovimaU praksi, posebno na diskovima koji se intenzivno koriste, velike datoteke (slike visoke rezolucije, PST datoteke e-pošte, baze podataka itd.) obično se dijele u nekoliko fragmenata razasutih po disku.
Studije poput onih Simsona Garfinkela pokazale su da, iako se ukupni postotak fragmentacije može činiti skromnim, među vrstama datoteka od forenzičkog interesa brojke naglo rastu (na primjer, značajan postotak JPG, DOC ili PST datoteka čini se fragmentiranim). U tim slučajevima, jednostavan proces rezbarenja zaglavlja i podnožja oporavlja nepotpune datoteke ili datoteke s ugrađenim smećem iz drugih međudatoteka.
Lažno pozitivni rezultati i oštećene datoteke
Što je generičkiji potpis tipa datoteke, Lakše je pojaviti se lažnim slučajnostima u slučajnim podacima (npr. viđenje "PK" ZIP datoteke unutar tekstualne datoteke). Stoga je važno pravilno provjeriti unutarnju strukturu: deklariranu duljinu, obavezna polja, konzistentnost zaglavlja itd.
Kako bi se smanjili ovi problemi, pojavili su se pristupi poput rezbarenja temeljenog na strukturi datoteke, semantičkog rezbarenja, rezbarenja s naprednom validacijom i pametnog rezbarenja , koji kombiniraju analizu strukture, statističke obrasce (entropiju, distribuciju bajtova), pa čak i lingvističku analizu kako bi se odlučilo odgovara li blok kandidatskoj datoteci.
Pametno rezbarenje i napredne tehnike
Kako bi se riješila fragmentacija i poboljšala kvaliteta rezultata, razvijeni su pametni algoritmi za rezbarenje . Opća je ideja prestati pretpostavljati da je sve susjedno i pristupiti problemu kao slagalici blokova koji se moraju ponovno sastaviti ispravnim redoslijedom.
Neka klasična djela (na primjer, ona Shanmugasundarama) modeliraju rekonstrukciju fragmentirane arhive kao Hamiltonov put u grafu: svaki blok je čvor, a rubovi predstavljaju vjerojatnost da jedan blok slijedi drugi, ovisno o tome kako se njihov sadržaj uklapa. Nakon toga se primjenjuju heuristike, alfa-beta pretraživanje i druge tehnike teorije grafova i teorije igara kako bi se pronašao najvjerojatniji niz.
Na visokoj razini, mnogi trenutni pametni rezbači slijede tri faze:
- Prethodno obrađenodekomprimirati, dešifrirati ili normalizirati blokove kako bi se mogli analizirati.
- Označeno: klasificirati blokove prema vrsti datoteke kojoj vjerojatno pripadaju (prema potpisu, entropiji, unutarnjim uzorcima…).
- Ponovno sastavljen: poredajte fragmente u najlogičnijem slijedu kako biste rekonstruirali potpune datoteke, čak i ako su jako fragmentirane.
Ovaj pristup čini osnovu komercijalnih alata kao što su Adroit Photo Forensics ili Adroit Photo Recovery, dizajniranih za oporavak fotografija u zaista izazovnim uvjetima. Oni se također obično oslanjaju na vrlo stroge validatore za svaku vrstu slike (JPEG, TIFF, camera RAW itd.).
Dobre prakse prije i tijekom rezbarenja
Ako će se rezbarenje podataka koristiti u ozbiljnom slučaju (bilo da se radi o tvrtki koja pokušava oporaviti podatke ili forenzičkoj istrazi), postoji niz najboljih praksi kojih se uvijek treba pridržavati :
Izradite sliku diska
Prije nego što išta poduzmete, razumno je generirati slika uređaja bit po bit (na primjer, s dd, dc3dd, Guymageritd.). Time se izbjegava dodirivanje originalnog diska i omogućuje ponavljanje procesa rezbarenja s različitim alatima i parametrima bez dodavanja oštećenja.
Uvijek radite na kopijama
Nakon što je glavna slika kreirana, dobra je ideja napraviti radne kopije i primijeniti na njih alate za rezbarenje. To čuva nepromjenjive dokaze u slučaju da je potrebno ponoviti analize, predstaviti dokaze na sudu ili jednostavno provjeriti rezultate novim verzijama alata.
Prilagodite i testirajte postavke
Alati poput Foremost, Scalpel ili Photorec omogućuju vam fino podešavanje vrsta datoteka koje se pretražuju, koje su maksimalne veličine prihvaćene, kako se potpisi interpretiraju itd. Preporučljivo je isprobajte različite konfiguracijeposebno kada unaprijed znate koje vas vrste datoteka zanimaju (na primjer, samo Office dokumenti ili samo slike).
Ručno potvrdi i pregledaj
Iako automatski validatori pomažu, na kraju je potrebno nešto drugo. ljudski pregled Za procjenu je li oporavljena datoteka relevantna, potpuna ili samo šum. U forenzičkim kontekstima također je bitno dokumentirati svaki korak, sačuvati zapisnike i održavati lanac čuvanja.
Kada se sve to kombinira s organiziranim pristupom i pravim alatima, rezbarenje podataka postaje jedno od najmoćnijih oružja za oporavak informacija u kritičnim situacijama , kako u profesionalnom području, tako i u svakodnevnijim slučajevima (klasični "formatirao sam karticu fotoaparata i imao sam sve fotografije s odmora").
U konačnici, istinsko razumijevanje što je rezbarenje podataka, kako koristi interne potpise datoteka i koja su njegova ograničenja u pogledu fragmentacije , čini razliku između odustajanja od slučaja i mogućnosti oporavka dokumenata ili slika koje su se činile zauvijek izgubljenima.
Strastveni pisac o svijetu bajtova i tehnologije općenito. Volim dijeliti svoje znanje pisanjem, a to je ono što ću učiniti na ovom blogu, pokazati vam sve najzanimljivije stvari o gadgetima, softveru, hardveru, tehnološkim trendovima i još mnogo toga. Moj cilj je pomoći vam da se snađete u digitalnom svijetu na jednostavan i zabavan način.