Passejant per l'agonia o la llarga història d'un intent de recuperació de dades

Va ser el 2019. El nostre laboratori va rebre una unitat QUANTUM FIREBALL Plus KA amb una capacitat de 9.1 GB, cosa que no és gaire habitual en la nostra època. Segons el propietari de la unitat, la fallada es va produir l'any 2004 a causa d'una font d'alimentació fallada, que va portar el disc dur i altres components de l'ordinador. Després hi va haver visites a diversos serveis amb intents de reparar la unitat i restaurar les dades, que no van tenir èxit. En alguns casos van prometre que seria barat, però mai van resoldre el problema, en altres era massa car i el client no volia restaurar les dades, però al final el disc va passar per molts centres de servei. Es va perdre diverses vegades, però gràcies al fet que el propietari es va encarregar de gravar amb antelació la informació de diversos adhesius a la unitat, va aconseguir que el seu disc dur fos retornat d'alguns centres de servei. Les passejades no van passar sense deixar rastre, es van mantenir múltiples rastres de soldadura a la placa controladora original i també es va sentir visualment la manca d'elements SMD (de cara al futur, diré que aquest és el menor dels problemes d'aquesta unitat).

Passejant per l'agonia o la llarga història d'un intent de recuperació de dades
Arròs. 1 disc dur Quantum Fireball Plus KA de 9,1 GB

El primer que vam haver de fer va ser buscar a l'arxiu del donant un germà bessó tan antic d'aquesta unitat amb una placa controladora que funcionava. Quan es va completar aquesta recerca, va ser possible dur a terme mesures de diagnòstic àmplies. Després de comprovar si hi ha un curtcircuit en els bobinatges del motor i assegurar-nos que no hi ha cap curtcircuit, instal·lem la placa des de la unitat donant a la unitat del pacient. Apliquem potència i escoltem el so normal de l'eix girant, superant una prova de calibratge amb la càrrega del microprogramari i, al cap d'uns segons, la unitat informa per registres que està a punt per respondre a les ordres de la interfície.

Passejant per l'agonia o la llarga història d'un intent de recuperació de dades
Arròs. 2 Els indicadors DRD DSC indiquen la disposició per rebre ordres.

Fem una còpia de seguretat de totes les còpies dels mòduls de microprogramari. Comprovem la integritat dels mòduls del firmware. No hi ha problemes amb la lectura dels mòduls, però l'anàlisi dels informes mostra que hi ha algunes curiositats.

Passejant per l'agonia o la llarga història d'un intent de recuperació de dades
Arròs. 3. Taula de zones.

Prestem atenció a la taula de distribució zonal i observem que el nombre de cilindres és 13845.

Passejant per l'agonia o la llarga història d'un intent de recuperació de dades
Arròs. 4 Llista P (llista primària – llista de defectes introduïts durant el cicle de producció).

Cridem l'atenció sobre el nombre massa petit de defectes i la seva ubicació. Observem el mòdul de registre d'amagat de defecte de fàbrica (60 h) i trobem que està buit i no conté una sola entrada. A partir d'això, podem suposar que en un dels centres de servei anteriors, es poden haver fet algunes manipulacions amb l'àrea de servei de la unitat, i accidentalment o intencionadament s'ha escrit un mòdul estranger o la llista de defectes a l'original. una es va netejar. Per provar aquesta hipòtesi, creem una tasca a Data Extractor amb les opcions "crear una còpia sector per sector" i "crear un traductor virtual" habilitades.

Passejant per l'agonia o la llarga història d'un intent de recuperació de dades
Arròs. 5 Paràmetres de la tasca.

Un cop creada la tasca, observem les entrades de la taula de particions del sector zero (LBA 0)

Passejant per l'agonia o la llarga història d'un intent de recuperació de dades
Arròs. 6 Registre d'arrencada mestre i taula de particions.

A l'offset 0x1BE hi ha una única entrada (16 bytes). El tipus de sistema de fitxers de la partició és NTFS, desplaçat al principi dels sectors 0x3F (63), la mida de la partició 0x011309A3 (18) sectors.
A l'editor del sector, obriu LBA 63.

Passejant per l'agonia o la llarga història d'un intent de recuperació de dades
Arròs. 7 Sector d'arrencada NTFS

Segons la informació del sector d'arrencada de la partició NTFS, podem dir el següent: la mida del sector acceptada al volum és de 512 bytes (la paraula 0x0 (0) s'escriu a l'offset 0200x512B), el nombre de sectors del clúster és 8 (el byte 0x0 s'escriu al desplaçament 0x08D), la mida del clúster és de 512x8=4096 bytes, el primer registre MFT es troba a un desplaçament de 6 sectors des de l'inici del disc (a un desplaçament de 291x519 paraula quàdruple 0x30 0 00 00 00 00C 00 0 (00) número del primer clúster MFT. El número de sector es calcula mitjançant la fórmula: Número de clúster * nombre de sectors del clúster + desplaçament al començament de la secció 00* 786+432= 786).
Passem al sector 6.

Passejant per l'agonia o la llarga història d'un intent de recuperació de dades
La figura. 8

Però les dades contingudes en aquest sector són completament diferents del registre MFT. Tot i que això indica una possible traducció incorrecta a causa d'una llista incorrecta de defectes, no prova aquest fet. Per comprovar-ho més, llegirem el disc per 10 sectors en ambdues direccions en relació amb 000 sectors. I després buscarem expressions regulars en el que llegim.

Passejant per l'agonia o la llarga història d'un intent de recuperació de dades
Arròs. 9 Primera gravació MFT

Al sector 6 trobem el primer registre de MFT. La seva posició difereix de la calculada per 291 sectors, i després segueix contínuament un grup de 551 registres (de 32 a 16). Introduïm la posició del sector 0 a la taula de torns i avancem en 15 sectors.

Passejant per l'agonia o la llarga història d'un intent de recuperació de dades
La figura. 10

La posició del registre número 16 hauria d'estar al desplaçament 12, però hi trobem zeros en lloc del registre MFT. Anem a fer una recerca similar als voltants.

Passejant per l'agonia o la llarga història d'un intent de recuperació de dades
Arròs. 11 entrada MFT 0x00000011 (17)

Es detecta un gran fragment de MFT, començant pel registre número 17 amb una longitud de 53 registres) amb un desplaçament de 646 sectors. Per a la posició 17, poseu un desplaçament de +12 sectors a la taula de canvis.
Després d'haver determinat la posició dels fragments MFT a l'espai, podem concloure que això no sembla una fallada aleatòria i un enregistrament de fragments MFT amb desplaçaments incorrectes. Una versió amb un traductor incorrecte es pot considerar confirmada.
Per localitzar encara més els punts de canvi, establirem el màxim desplaçament possible. Per fer-ho, determinem quant es desplaça el marcador final de la partició NTFS (còpia del sector d'arrencada). A la figura 7, al desplaçament 0x28, la paraula quàdruple és el valor de la mida de la partició dels sectors 0x00 00 00 00 01 13 09 A2 (18). Afegim el desplaçament de la partició mateixa des del principi del disc fins a la seva longitud, i obtenim el desplaçament del marcador NTFS final 024 + 866= 18. Com era d'esperar, la còpia necessària del sector d'arrencada no hi era. En cercar la zona circumdant, es va trobar amb un desplaçament creixent de +024 sectors en relació amb l'últim fragment MFT.

Passejant per l'agonia o la llarga història d'un intent de recuperació de dades
Arròs. 12 Còpia del sector d'arrencada NTFS

Ignorem l'altra còpia del sector d'arrencada al desplaçament 18, ja que no està relacionada amb la nostra partició. A partir d'activitats anteriors, es va establir que dins de l'apartat hi ha inclusions de 041 sectors que van “sorgir” a l'emissió, fet que va ampliar les dades.
Realitzem una lectura completa de la unitat, que deixa 34 sectors sense llegir. Malauradament, és impossible garantir de manera fiable que tots ells siguin defectes eliminats de la llista P, però en una anàlisi posterior s'aconsella tenir en compte la seva posició, ja que en alguns casos serà possible determinar de manera fiable els punts de canvi amb una precisió del sector, i no del fitxer.

Passejant per l'agonia o la llarga història d'un intent de recuperació de dades
Arròs. 13 Estadístiques de lectura de disc.

La nostra següent tasca serà establir les ubicacions aproximades dels torns (a la precisió del fitxer en què es van produir). Per fer-ho, analitzarem tots els registres MFT i construirem cadenes d'ubicacions de fitxers (fragments de fitxers).

Passejant per l'agonia o la llarga història d'un intent de recuperació de dades
Arròs. 14 Cadenes d'ubicació d'arxius o els seus fragments.

A continuació, passant d'un fitxer a un altre, busquem el moment en què hi haurà altres dades en lloc de la capçalera esperada del fitxer, i es trobarà la capçalera desitjada amb un cert desplaçament positiu. I a mesura que afinem els punts de canvi, omplim la taula. El resultat d'omplir-lo serà més del 99% dels fitxers sense danys.

Passejant per l'agonia o la llarga història d'un intent de recuperació de dades
Arròs. 15 Llista de fitxers d'usuari (es va rebre el consentiment del client per publicar aquesta captura de pantalla)

Per establir desplaçaments de punts en fitxers individuals, podeu fer un treball addicional i, si coneixeu l'estructura del fitxer, trobar inclusions de dades que no hi estiguin relacionades. Però en aquesta tasca no era viable econòmicament.

PD També m'agradaria adreçar-me als meus companys, a les mans dels quals abans estava aquest disc. Si us plau, aneu amb compte quan treballeu amb el microprogramari del dispositiu i feu una còpia de seguretat de les dades del servei abans de canviar res, i no agreugueu deliberadament el problema si no heu pogut estar d'acord amb el client sobre el treball.

Publicació anterior: Desa de coincidències o recuperació de dades d'un disc dur de trituració Seagate ST3000NC002-1DY166

Font: www.habr.com

Afegeix comentari