Skocz do zawartości

Misja forensic www.hackthissite.org/missions/forensic/


Rekomendowane odpowiedzi

Misja forensic z https://www.hackthissite.org/missions/forensic/. Analiza śledcza. Fajna zabawa, aczkolwiek jej trudność jest faktycznie troszkę niska! Postanowiłem do tematu podejść troszkę ambitniej. I ku mojemu zaskoczeniu – nikt nie opublikował takiej metody, którą przedstawię. Prochu nie wymyślę, koła na nowo nie odkryję, ale to zawsze dobra zabawa, zwłaszcza, że pokrywa się z moim hobby – data recovery! Do dzieła!

Ideą, która mi przyświecała jest oczywiście jak najbardziej surowe podejście do tego małego wyzwania. Można użyć programów do odzyskiwania danych – tylko po co? Gdyby nam je zabrali – to nagle misja z poziomu "basic" urosła by do poziomu "medium" czy "hard"? Dla sporej grupy ludzi na pewno tak! Dlatego opiszę jak odzyskać pliki bez żadnego softu do odzysku danych. 
Jako, że systemy microsoft windows nie oferują domyślnie softu do przeglądania poszczególnych klastrów czy sektorów na hdd to będziemy musieli się posłużyć prostym hex editorem, który umozliwi nam i wgląd i edycje naszych cennych bajtów. Pytanie google o bezpłatny i przenośny (portable) hex editor skierowało mnie na HxD. W takim razie trzeba się nim zadowolić. Drugim softem, ktorym niestety musimy się posłużyć z racji tego, że w windowsie nie ma natywnego narzędzia, które by zamontowało nam binarny obraz pendrive (osobiście wolę to nazywać kopią posektorową) będzie ImDisk. Testy robiłem na wersji 1.9.2. Dla fanów GUI w panelu sterowania będzie ikonka. Wgrania obrazu z naszego zadanka bezpośrednio na pena, nie brałem pod uwagę, bo wydaje mi się, że nie uda się tego zrobić bez sięgania po oprogramowanie zewnętrzne. 


Odpalamy nasz HxD, wczytujemy obraz z zadania.

1.png

Przywita nas widok pierwszego sektora z obrazu.

2.png

Od razu widać, że to sektor rozruchowy (boot sector). A pierwsza jego część nazywa się BPB - Bios Parametr Block. Możemy odczytać z niego lokalizację MFT. Operujemy w Little Endian i na klastrach! (domyślnie klaster ma 8 sektorów), 0x30-0x33 to młodsze słowo numeru klastra, 0x34-0x37 starsze. W przykładzie jest 04 00 00 00. 4 klaster, klaster to 8 sektorów, a więc otrzymujemy LBA 32. Nie polecam tej metody laikom. 

3.png
Wygodniej i pewniej jest po prostu wyszukać magiczne liczby MFT: 46494c45. Skrót ctrl + f.

4.png

Jesteśmy w pierwszym indeksie MFT, nota bene tak też się nazywa ta metadana. I faktycznie to 32 LBA. Co prawda nasz programik pokazuje tylko offset, ale przecież wystarczy offset podzielić przez 512B (bo tyle liczy sektor) i mamy numer sektora. Offset 0x4000, konwertujemy na dziesiętną liczbę: 16384, dzielimy na 512 i otrzymujemy 32. Nie chce być inaczej!
Jedziemy dalej. Pierwsze 26 indeksów na pewno są metadanymi. To wynika z budowy systemu plików NTFS (mowa o NTFS 3.1). Na indeks przypadają dwa sektory. Albo klikamy 26x F3 (find again, czyli ponowne wyszukanie) albo obliczymy offset odpowiadający 86 LBA, wciskamy ctrl + G (goto) i wklepujemy obliczony offset.

5.png

Przeglądamy żmudnie indeksy w MFT szukając śladu danych :).

6.png

Pierwsze znalezisko mamy w 0x14000, a więc w LBA 160. Zakładając, że pierwszy bajt tego sektora to 0, szukamy bajtu nr 0x16 (dziesiętnie 22) i sprawdzamy jaka tam stoi wartość. Mamy dwójkę. Co ona oznacza? Że katalog został skasowany. 
Żargonowo nazywa się to flagą użytkowania.
Opiszę wszystkie wartości: 
0 – wolne miejsce w indeksie MFT, a więc, że indeks nie jest przydzielony do żadnego pliku
1 – indeks przydzielony do pliku, czytajcie: zajęty przez plik
2 – wolne miejsce w indeksie MFT po uprzednio zajmującym go katalogu, czyli skasowany katalog. 
3 - indeks przydzielony do katalogu, czytajcie: zajęty przez katalog.

Niżej mamy parametry określające ten folder, nie będę podawał dokładnej analizy, jedyna ściągawka w polskiej wersji językowej jest na elektrodzie - > http://www.elektroda.pl/rtvforum/topic891920.html
Napisana przez Litwina o nicku Okzo, osoby ze światowej czołówki DR.

7.png
Naszym celem jest zatem podmiana 0 na 1 i 2 na 3. Prawda, że proste? Jednak kasowanie – to nie tylko zmiana tej wartości. To bardziej złożony proces. Trzeba jeszcze obliczyć zmiany w indeksach i $Bitmap, ale tym zajmować się nie będziemy. 
Teraz zostaje zamontować obraz programem ImDisk.

8.png

Można to było zrobić wcześniej. Nawet bym to zalecał. Wtedy jest zdecydowanie czytelniej w HxD, bo pokazuje sektory! 
Po zamontowaniu okazuje się, że nasze operacje nic nie zmieniły! Spokojnie. Odpalamy cmd jako admin, a w nim checkdisk komendą: chkdsk x: /r (gdzie x: to litera dysku) i patrzymy jak wykonuje za nas całą brudną i trudna robotę. 

10.png
W efekcie wyodrębnił on osierocone pliki i wrzucił je do ukrytego folderu found.000. Domyślnie do tego folderu nie mamy praw, dlatego przy próbie wejscia (oczywiście jeśli mamy włączoną opcję widzenia ukrytych plikow i folderów) wywali błąd odnośnie odmowy dostępu.

11.png

Wystarczy nadać sobie prawa. W środku mamy odzyskane pliki.

13.png

 

Bez żadnego softu do DR.

 

To by było na tyle! 
Zainteresowanym nie będę odbierał reszty zabawy. Możecie dalej szukać hasła  ;).

Pozdro, Groszexxx.

 

-----------------------------------------------------------------------------------------------------------------------

 

Konkluzja nr 2. 

Jeden z moich znajomych o imieniu Waldek, z nieskrywanym zdziwieniem zapytał - po co to pisałem  skoro wg. niego lepiej i tak używać "specjalnego" oprogramowania do odzyskiwania danych. Wartość edukacyjna informacji tu zebranych jest dyskusyjna. Jednak zupełnie nie o to chodzi. Istotne są słowa "specjalne oprogramowanie do odzyskiwania danych" jak i sama świadomość przeciętnego Kowalskiego na to. Otóż dla wspomnianego Kowalskiego - skoro program faktycznie służy do DR to na pewno będzie lepszy niż takie "misz masz" z chkdsk. Wszak jest firmowy, brandowany i nierzadko - drogi! 

Takie uogólnianie może kryć wiele pułapek. 

Tu wspomne tylko pobieżnie, bo akurat ten temat w tutku jaki od dawna szykuje. 

 

Odzyskiwanie plików można podzielić na dwie techniki (tutaj na forum wielokrotnie o tym wspominalem)

1) w oparciu o system plikow 

2) w oparciu o sygnatury, a wiec "magiczne liczby"  (Bawi mnie, gdy na różnych portalach, serwisach, ludzie oceniający działanie programów DR w wadach wymieniają "brak oryginalnych nazw". Otóż to nie wada programu, a samej techniki, dane typu nazwa programu, folder w jakimś się znajdował - są zapisane w systemie plików, konkretniej w indeksach MFT, co mieliśmy okazję zaobserwować). 

 

Ludzie bezgranicznie ufają programom, dla nich wystarczy tylko kliknąć parę razy "next, next, next" i to cała filozofia. 

Jeden z najlepszych, na licencji GPL v2+, opensource'owy Photorec (Photorec wykorzystuje 2 technikę),  z pakietu testdisk na domyślnych ustawieniach nie wykryje nam jednego pliku, krytycznego pod względem ukończenia misji. Trzeba zaznaczyć "Keep corrupted files". Dopiero wtedy powstanie plik zip. Pliki office od 2007 mają zmodyfikowane rozszerzenia i zawierają dodatkowo x, czyli docx, xlsx, pptx. Te pliki w oparciu o strukturę są tak naprawdę plikami zip. 

Gdy otworzymy taki plik w winrar:

14 Winrar.png

Nie muszę chyba dodawać, że pliku wypakować się nie da :). Otóż wystarczy tylko zmienić rozszerzenie na docx

15 Word.png

16 Word 2.png

Po zatwierdzeniu ukaże się nam zawartość naszego pliku tesktwego docx. 

 

Podsumowanie nasuwa się samo: nie wszystko jest takie proste jak się wydaje. Zwłaszcza dla przytoczonego tu pana Kowalskiego. 

 

Pozdro, Groszexxx.

Edytowane przez Groszexxx
Odnośnik do komentarza
Pomoc jest darmowa, ale proszę rozważ przekazanie dotacji na utrzymanie serwisu: klik.
  • 5 miesięcy temu...
  • 4 miesiące temu...

Jeśli chcesz dodać odpowiedź, zaloguj się lub zarejestruj nowe konto

Jedynie zarejestrowani użytkownicy mogą komentować zawartość tej strony.

Zarejestruj nowe konto

Załóż nowe konto. To bardzo proste!

Zarejestruj się

Zaloguj się

Posiadasz już konto? Zaloguj się poniżej.

Zaloguj się
  • Ostatnio przeglądający   0 użytkowników

    • Brak zarejestrowanych użytkowników przeglądających tę stronę.
×
×
  • Dodaj nową pozycję...