Jak odzyskać dane z uszkodzonego pendrive

Pendrive zwany także pamięcią USB już dawno zastąpił popularne kiedyś dyskietki, wypiera płyty CD/DVD jako nośnik do przechowywania i przenoszenia danych czy tworzenia kopii zapasowych. Dzisiaj nie ma już chyba użytkownika komputera, który nie posiada ani jednego pendrive. Niestety tak jak wszystkie inne urządzenia pendrive również ulega uszkodzeniom. W poniższym przykładzie opiszę sposób odzyskiwania danych z uszkodzonego pendrive. Poprzez uszkodzonego pendrive rozumiem tutaj sytuacje w której po podłączeniu pendrive do komputera nie jest on wykrywalny przez system, nie świeci się dioda kontrolna, pendrive nie daje żadnych oznak życia. Oczywiście programy do odzyskiwania danych również nie są w stanie go wykryć – co również oznacza, że nie odzyskają z niego danych.

Zapraszam do przeczytania poniższego artykułu oraz do zadawania pytań.

Przypadek:

Jakiś czas temu jeden z klientów dostarczył do nas uszkodzony pendrive marki Kingston o pojemności 2GB. W odpowiedzi na zadane przez nas pytanie, w jaki sposób doszło do uszkodzenia nośnika klient odpowiedział, że nie wie. Podłączył pendrive do komputera, edytował na nim dokumenty, zapisał zmiany i wyciągnął nośnik. Po ponownym podłączeniu do komputera pendrive już nie działał.

Jak wygląda proces odzyskiwania danych z uszkodzonego pendrive (bądź innego nośnika np. SD, SSD opartego na układach scalonych – pamięci)

Co potrzebujemy:

  • skalpel/nożyk/śrubokręt precyzyjny (narzędzie do „otwarcia” pendrive)
  • lutownice na gorące powietrze
  • topnik
  • cyna
  • lupa/mikroskop stereoskopowy (oględziny)
  • zestaw sprzętowo-programowy do odzyskiwania danych (np: PC3000 Flash – ACE Laboratory, Visual Nand Reconstructor – Rusolut,Flash Extractor – Soft Center, Flash Doctor – SalvationData)

Zaczynamy:

Pierwszą czynnością jaką sprawdzamy po otrzymaniu od klienta nośnika to czy mamy do czy na pewno mamy do czynienia z uszkodzeniem elektronicznym/mechanicznym. Prawidłowa diagnoza problemu na starcie pozwoli oszczędzić nasz czas i pieniądze klienta. Jeżeli upewnimy się, że problem nie jest natury logicznej (np. błąd systemu plików, usunięcie danych, partycji itp.) przystępujemy do pierwszej czynności.

Zaczynamy od rozebrania obudowy pendrive. Niektóre pendrive umieszczone są w obudowach plastikowych zamykanych na zatrzaski, bądź zgrzewanych, inne w obudowach aluminiowych skręcanych śrubkami. W naszym przypadku pendrive jest w obudowie plastikowej zamykanej na zatrzask.

Przy pomocy nożyka podważamy obudowę celem jej otwarcia. Należy przy tym zachować szczególną ostrożność, tak aby nie doszło do uszkodzenia samej pamięci. Może ona występować w postaci kości pamięci, bądź jednolitego układu zwanego monolitem. W pierwszym przypadku po otwarciu pendrive zobaczymy płytkę z wyróżniającymi się co najmniej dwoma układami. Jednym z nich będzie kontroler, pozostałe (może być ich kilka) to układy pamięci. W drugim przypadku zobaczymy płaską płytkę bez układów. Jest to tak zwany monolit, gdzie ścieżki, kontroler oraz pamięć została „zlana” w jedną płytkę. W naszym przypadku po dostaniu się do wnętrza pendrive ukazała się płytka z jednym układem pamięci firmy Kingston o numerze: TH58NVG4D4CTG00 oraz kontrolerem: S2-001-ACC-0E. W skrócie, kontroler decyduje w jaki sposób dane zapisywane są w na kości pamięci.

Kolejną czynnością będzie wylutowanie układu pamięci z uszkodzonego pendrive. W tym celu nagrzewamy lutownicę na gorące powietrze do temperatury bezpiecznej dla komórek pamięci (320*C), nakładamy topnik na nóżki układu scalonego i podgrzewamy. Należy pamiętać aby gorące powietrze skierowane było na nóżki. Kolbę lutownicy przesuwamy wzdłuż nóżek grzejąc je do czasu, aż układ stanie się „luźny” i możliwy do lekkiego wyciągnięcia. Nie wolno wyciągać układu na siłę – można uszkodzić nóżki, a wtedy odzyskiwanie danych będzie trudniejsze, ale możliwe.

Po wylutowaniy układu należy jeszcze nóżki oczyścić z nadmiaru cyny. Po tej czynności możemy umieścić układ w czytniku i dokonać odczytu pamięci. Korzystamy do tego z zestawu sprzętowo-programowego do odzyskiwania danych z pamięci flash. Przy jego pomocy kopiujemy całą zawartość pamięci na dysk komputera. Możemy tutaj określić z jaką prędkością pamięć będzie odczytywana i zapisywana na dysk. Im niższa prędkość, tym mniej błędów podczas odczytywania komórek pamięci.

Wielu z was myśli pewnie, że na tym kroku kończy się odzyskiwanie danych z uszkodzonych pendrive. Jednak to co dopiero odczytaliśmy to „zestaw krzaczków”, które zostały przekształcone z „czytelnej postaci” poprzez kontroler. Teraz musimy zasymulować działanie kontrolera i przekształcić otrzymane „krzaczki” do postaci w której dane będą możliwe do odczytania. Żeby tego dokonać należy wiedzieć jakie operacje na danych wykonuje kontroler. W naszym przykładzie mamy do czynienia z kontrolerem S2-001-ACC-0E. Posiadając tą informację wiemy, że nasz odczytany obraz danych musimy poddać następującym obróbką:

  • ECC Correction
  • Page size transformation
  • Split by dump
  • Join by block for pairs
  • Join by dump

Po wykonaniu wszystkich powyższych czynności naszym oczom ukazują się pliki możliwe do odczytania.
Wszystko wydaje się proste, gdy jesteśmy w stanie odczytać model kontrolera i dotrzeć do informacji jakie operacje wykonuje. Niestety często zdarza się, że producenci korzystają z nietypowych i rzadkich rozwiązań. Nie jesteśmy w stanie wtedy uzyskać informacji o operacjach jakie dokonuje kontroler podczas odczytu i zapisu danych. Jesteśmy zdani na siebie, naszą wiedzę i doświadczenie. Sami musimy dojść do docelowego obrazu danych wykonując różnego rodzaju konwersje na danych, co niestety sprawia, że odzyskiwanie danych z uszkodzonych pendrive staje się trudniejsze i czasochłonne.

Jeżeli ktoś myśli, że odzyskiwanie danych z uszkodzonych pendrive to proces który polega tylko na klikaniu „Dalej”, tak jak jest to w przypadku odzyskiwania danych usuniętych to jest w błędzie. Powyższy przykład dotyczył odzyskiwania danych z pendrive opartego na osobnych układach scalonych: pamięć i kontroler. W przypadku kiedy układy te są w postaci jednej „płytki” zwanej monolitem proces ten jest nieco trudniejszy. Podstawową różnicą jest „sposób” dostania się do pamięci i jej odczytania. O tym dokładniej opiszę w drugim artykule na temat odzyskiwania danych z uszkodzonej karty pamięci opartej na układzie typu „monolit”.

Na koniec jeszcze mała uwaga. Proces odzyskiwania danych z kart pamięci opartych na kościach pamięci jest analogiczny do procesu odzyskiwania z pendrive opartego na kościach pamięci. Podobnie wygląda to w przypadku pendrive opartych na układzie typu monolit. Odzyskanie z niego danych przebiega analogicznie jak odzyskiwanie danych z kart pamięci typu monolit.