Какво е изрязване на данни и как се използва за възстановяване на файлове?

Последна актуализация: 26/02/2026
Автор: Isaac
  • Изрязването на данни ви позволява да възстановявате файлове, като анализирате суровите данни, без да използвате файловата система.
  • Разчита на подписи, заглавки, долни колонтитули и магически числа, за да локализира и реконструира известни формати.
  • Инструменти като Photorec, Foremost или Scalpel прилагат тези техники с различни възможности.
  • Фрагментацията и загубата на име са основните му ограничения, които интелигентните алгоритми за дърворезба се опитват да преодолеят.

Илюстрация за издълбаване на данни

El изрязване на данни (или изрязване на файлове) Звучи екзотично, но всъщност е една от онези техники, които спасяват положението, когато всичко изглежда загубено: форматирани дискове, изтрити дялове, повредени файлови системи... и въпреки това все още можем да възстановим файлове. Не е магия; става въпрос за използване на начина, по който файловете са структурирани вътрешно, и изстискване на всеки последен байт от диска, дори ако операционната система казва, че е празен.

Какво точно е издълбаване на данни?

Накратко, издълбаването на данни е процес на извличане на поредици от данни (файлове) от по-голям набор от даннибез да се разчита на структурите на файловата система. DFRWS 2006 го дефинира като извличане на серия от данни от по-голям набор от данни, типично за анализа на неразпределено пространство във файловата система, използвайки заглавки и долни колонтитули на файловете за разпознаване на специфични типове, като напълно игнорира файловата система.

Казано по-просто: вместо да питате файловата система „хей, къде е този файл?“, инструментите за дърворезба Те четат диска като огромен блок от байтове „суров“А вътре те търсят файлове въз основа на вътрешните си подписи. Това е дигитален еквивалент на ровене в сметище, търсейки обекти, които разпознавате по формата им, без никакъв опис на това, което е било там.

Този процес обикновено се прилага към неразпределено или неизползвано пространствоТова са области, които файловата система маркира като свободни, но където все още има остатъци от стари файлове. На силно повредени, преразделени или форматирани дискове може да се наложи да работите директно върху тези области. цялата физическа повърхност на устройството.

Важен детайл е, че издълбаването на данни Не се ограничава само до класически твърди дисковеТова важи и за SSD дискове, SD карти, USB стиковеКриминалистични изображения в RAW формат, дъмпове на паметта и др. Стига да има байтове за анализ, можете да опитате да „издълбаете“ файлове от тях.

визуален пример за дърворезба с пила

Класическо възстановяване срещу изрязване на файлове

Традиционното възстановяване на данни разчита на факта, че Метаданните на файловата система са все още активниНапример, в NTFS (Windows), FAT, ext4 (Linux) и др., когато изтриете файл, обикновено само неговият запис в таблицата се маркира като свободен, но данните остават там, докато не бъдат презаписани.

Докато тези структури съществуват, инструментите могат прочетете файловите таблици, следвайте указателите към блоковете с данни и да реконструират файла, дори ако е фрагментиран. Те могат лесно да различат кои блокове принадлежат на активни файлове и кои са „осиротели“.

Проблемът? Когато възникне някой от тези сценарии, класическият метод остава уязвим и Не може да възстанови нищо полезно.:

  • Файлът е изтрит отдавна и записът му във файловата таблица е бил използван повторно.
  • Дискът е форматиран или преразделен (например, инсталирате Linux върху стара Windows система).
  • Структурите на файловата система са повредени поради физически повреди, злонамерен софтуер или логически грешки.
  • Оригиналната файлова система е била презаписана от друга (типичен пример: диск с Windows, форматиран като ext4).

Ето къде идва дърворезбата на файловеТой отделя таблици, inode и MFT и се фокусира върху Сканиране на суровото пространство за съхранение на устройството в търсене на известни файлови шаблониТова е по-„сляп“ подход, но изключително полезен, когато няма нищо друго, за което да се хванете.

Подписи, заглавки, долни колонтитули и магически числа

Ключът към дърворезбата е, че почти всички типове пили имат разпознаваеми подписиТези сигнатури обикновено се намират в заглавката (началото на файла), а понякога и в долната част (края). Освен това, много формати съхраняват данни в тези първи няколко байта. метаданни, като например общата дължина на файла или друга структурна информация.

Концепцията за магическо число Това е от съществено значение: това е константа, която ви позволява недвусмислено да идентифицирате типа файл, независимо от разширението, което операционната система му е дала. Разширенията (.jpg, .doc, .zip…) помагат на потребителя и системата, но това, което наистина има значение, е какво се съдържа в първите няколко байта на файла.

  Как да променяте или изтривате метаданни в PDF файлове стъпка по стъпка

Например, стандартните GIF файлове започват с ASCII низове „GIF87a“ или „GIF89a“В шестнадесетична система това се превежда като специфичен заглавен файл, който всеки инструмент може да търси. В случая с GIF файловете, типичният долен колонтитул включва байта 0x3B («;»), отново на много специфични позиции.

Друг добре познат пример: добре оформен JPEG Започва с 0xFFD8 и завършва с 0xFFD9Ако отворим изображение в шестнадесетичен редактор, ще видим този подпис в началото и този маркер в края. Между тях има други специфични за формата маркери (сегменти, таблици на Хъфман и др.), които ни позволяват да го валидираме.

В Linux командата досие използва база данни с магически числа (в /usr/share/file/magic или неговата компилирана версия magic.mgc) за Определете действителния тип на файла, като проверите първите му няколко байта.не разширението. Няма толкова мощен нативен еквивалент в Windows, но инструменти като файловодител или помощни програми на трети страни, които предлагат подобни функции.

Как работи процесът на изрязване на пила стъпка по стъпка

Общата логика е много сходна в повечето инструменти, въпреки че всеки има свои собствени трикове. Накратко, обикновено следва процес на изрязване на пила тези основни етапи:

1. Последователно четене на устройството или изображението
Инструментът чете съдържанието на диска, дяла или криминалистичното изображение на блокове (например от 512 байта По подразбиране, въпреки че много от тях ви позволяват да регулирате този размер с параметри като -bТези блокове се зареждат в паметта, за да могат лесно да бъдат анализирани.

2. Търсене на подписи в горния и долния колонтитул
Въз основа на тези данни в паметта, програмата търсене на сигнатурите, дефинирани във вашия конфигурационен файл (например foremost.conf (в случая на Foremost). Всеки запис в конфигурацията показва:

  • Разширение, което ще бъде присвоено на възстановения файл (jpg, doc, gif и др.).
  • Ако сравнението на магическото число е чувствителност към главни и малки букви или не.
  • Максимален размер които файлът може да има, ако не е намерен долен колонтитул.
  • Стойностите на заглавката и, по избор, на долния колонтитул в шестнадесетичен или осмичен.
  • Специални опции, като например ОБРАТНО или СЛЕДВАЩО за варианти на търсене.

Когато намери валиден заглавен файл, инструментът приема, че файлът започва там и търси съответния долен колонтитул или, ако форматът позволява, изчислява дължината от вградената информация в самата заглавка.

3. Извличане и повторно сглобяване на данни
След като началната и крайната точка (или приблизителният размер) бъдат определени, програмата копирайте всички блокове, които са част от файла и ги записва в нов файл. В случай на формати без дефиниран долен колонтитул, но с размер на заглавния файл (например BMP), тези метаданни се използват за определяне на броя байтове, които да се прочетат.

4. Валидиране на възстановените файлове
Най-модерните инструменти не се задоволяват с възстановяването на „просто всичко“: те прилагат валидатори, специфични за типа файл да се провери дали вътрешните структури са логични (таблици, контролни суми, задължителни полета и др.). Това намалява фалшивите положителни резултати и помага за откриването на повредени или непълни файлове.

5. Организиране на резултатите и доклада
Обикновено инструментът създава изходна директория (например продукция или този, обозначен с -o) и в него генерира подпапки с разширение: JPG, GIF, олеи т.н. Също така създава одитен файл, тип audit.txt, където е документирано:

  • Параметри на изпълнение, начално и крайно време.
  • Име на анализираното устройство или изображение.
  • Брой извлечени файлове по тип.
  • Име на всеки извлечен файл, размер и отместване в изходното изображение.

Типични инструменти за резба на пили

В ежедневната работа по възстановяване на данни и криминалистичен анализ се използват следните методи: различни специализирани инструменти които прилагат тези техники за дърворезба по различни начини, с повече или по-малко възможности за автоматизация и валидиране.

photorec
Photorec е може би един от най-популярните инструменти за дърворезба. Той е... безплатен, с отворен код и междуплатформенПървоначално е проектиран за възстановяване на снимки, но днес поддържа стотици файлови типове. Работи, като чете сурови изображения или устройства и извлича файлове от известни сигнатури, без да променя оригиналното съдържание.

скалпел
Скалпел е друга класика в безплатната екосистема. Той позволява много подробна конфигурация на подписа чрез конфигурационния си файл, което го прави много гъвкав за криминалистични среди, където е важно точно да се определи кои типове файлове се търсят. Обикновено се изпълнява от команден ред в Linux и изисква определено ниво на технически умения.

  Как да инсталирате и управлявате разширения на File Explorer в Windows

най-важен
Преди всичко е възникнал във военните (разработен е за Военновъздушните сили на Съединените щати) и кодът му е публикуван по-късно. Философията му е съсредоточена върху... резба по табла/долен край и по вградена дължинаРазчита на много подробен конфигурационен файл. Инсталира се лесно на Linux системи, а на Windows може да се използва чрез компилиране с Cygwin, който действа като слой за съвместимост с POSIX.

В случая с Foremost, за да го използвате в Windows, трябва да Компилирайте го от изходния код в средата Cygwinслед което копиране на изпълнимия файл foremost.exe, вашият файл foremost.conf и книжарницата cygwin1.dll в същата директория. Оттам може да се стартира, сякаш сме на Linux система, със същите опции и поведение.

Реални сценарии, в които се използва изрязване на данни

Отвъд теорията, дърворезбата има много специфични и често срещани приложения както в професионална, така и в домашна обстановка. Някои типични примери са:

Възстановяване на файлове, изтрити отдавна
Когато даден файл бъде изтрит (например) и се правят опити за възстановяването му с помощта на инструменти като Възстановяване на файлове на WindowsАко системата впоследствие използва повторно записа си във файловата таблица, класическият метод спира да вижда каквото и да било. Въпреки това, докато файловите блокове не бъдат презаписани, изрязването на данни продължава. Можете да продължите да търсите тези заглавки и да реконструирате голяма част от съдържанието.

Форматирани дискове или дискове с изтрити дялове
При форматиране или преразделяне обикновено се засягат само областите с метаданни и логическата структура. Физическото съдържание се запазва, поне първоначално. Добрият процес на изрязване позволява това. качвайте снимки, документи и други файлове от областите, които сега изглеждат „празни“.

Цифрово криминалистично разследване
В криминалистичния анализ е обичайно да се работи с RAW дискови изображения които са преминали през безброй изпитания: преинсталирани операционни системи, злонамерен софтуер, опити за изтриване и др. Изрязването на данни е от съществено значение за локализирането доказателства в неразпределеното пространствостари имейли, регистрационни файлове на приложения, временни документи или „забравени“ файлове, към които файловата система вече не се прави препратка.

Възстановяване на повредени устройства
На дискове с лоши сектори или SSD дискове с логически проблеми, файловата система може да се повреди толкова много, че Дори не се сглобяваИ тук, издълбаването върху предварително създадено изображение (за да не се утежнят щетите) може да спаси поне част от полезната информация.

Ограничения на изрязването на файлове: именуване, фрагментация и фалшиви положителни резултати

Изрязването на данни е невероятно мощно, но не е чудо. То е... структурни ограничения, които трябва да бъдат известни за да се избегнат разочарования или погрешни заключения при криминалистичен анализ.

Загуба на оригиналното име и маршрут
Без достъп до файловата система, програмата няма как да знае името на файла или папката, в която се е намирал. Ето защо инструментите генерират общи имена, като например 00032837.doc, изображение0001.jpgи т.н. От гледна точка на доказателствата или потребителя, това задължава ръчно прегледайте съдържанието да се определи неговата релевантност.

Фрагментация на файлове
Най-голямата пречка в класическата резба е фрагментацията. Много прости алгоритми Те приемат, че файлът е в съседни блоковеНа практика, особено на силно използвани дискове, големите файлове (изображения с висока резолюция, PST файлове от имейли, бази данни и др.) обикновено се разделят на няколко фрагмента, разпръснати по диска.

Проучвания като тези на Симсън Гарфинкел показват, че въпреки че общият процент на фрагментация може да изглежда скромен, Сред видовете досиета от криминалистичен интерес, цифрите се увеличават драстично. (Например, значителен процент от JPG, DOC или PST файловете изглеждат фрагментирани.) В тези случаи е необходимо просто изрязване на горен и долен колонтитул. Възстановява непълни файлове или файлове с вградени ненужни файлове от други междинни файлове.

Фалшиви положителни резултати и повредени файлове
Колкото по-общ е подписът на даден файлов тип, По-лесно е да се появят фалшиви съвпадения в произволни данни (напр. виждане на „PK“ на ZIP файл в текстов файл). Оттук е важно правилното валидиране на вътрешната структура: декларирана дължина, задължителни полета, консистентност на заглавката и др.

  exFAT срещу FAT32 срещу FAT срещу FAT16: Разлики, предимства и обяснение на употребата

За да се намалят тези проблеми, се използват подходи като Дърворезба, базирана на файлова структура, семантична дърворезба, дърворезба с усъвършенствана валидация и интелигентна дърворезба, които комбинират структурен анализ, статистически модели (ентропия, разпределение на байтове) и дори лингвистичен анализ, за ​​да решат дали даден блок се вписва в кандидат-файл или не.

Умна резба и усъвършенствани техники

За да се справи с фрагментацията и да подобри качеството на резултатите, са разработени алгоритми за умна дърворезбаОбщата идея е да се спре приемането, че всичко е съседно и да се подходи към проблема като блок пъзел които трябва да се сглобят отново в правилния ред.

Някои класически произведения (например тези на Шанмугасундарам) моделират реконструкцията на фрагментиран архив като Хамилтонов път В графика: всеки блок е възел, а ръбовете представляват вероятността един блок да следва друг, в зависимост от това как съдържанието им се съчетава. Оттам нататък се прилага следното: евристики, алфа-бета търсене и други техники на графите и теорията на игрите да се намери най-правдоподобната последователност.

На високо ниво, много от настоящите интелигентни резбари следват три фази:

  • Предварително обработенодекомпресирайте, декриптирайте или нормализирайте блоковете, за да могат да бъдат анализирани.
  • Проверенокласифицирайте блоковете според типа файл, към който вероятно принадлежат (по сигнатура, ентропия, вътрешни модели...).
  • Сглобено отново: подрежда фрагментите в най-логичната последователност, за да се реконструират пълни файлове, дори ако са силно фрагментирани.

Този подход е в основата на бизнес инструменти като бизнес инструменти като например Adroit Photo Forensics или Adroit Photo Recovery, предназначени за възстановяване на снимки в наистина трудни условия. Те също така обикновено разчитат на много строги валидатори за всеки тип изображение (JPEG, TIFF, camera RAW и др.).

Добри практики преди и по време на дърворезба

Ако изрязването на данни ще се използва в сериозен случай (независимо дали става въпрос за компания, която се опитва да възстанови данни, или за съдебномедицинско разследване), има редица... добри практики, които винаги трябва да се следват:

Създаване на образ на диск
Преди да предприемете каквото и да било, разумното нещо е да генерирате изображение на устройството бит по бит (например, с дд, dc3dd, Гаймагери др.). Това избягва докосването на оригиналния диск и позволява повтаряне на процесите на дърворезба с различни инструменти и параметри, без да се добавят повреди.

Винаги работете с копия
След като основното изображение е създадено, е добра идея правене на работни копия и да приложат към тях инструментите за резба. Това запазва непроменими доказателства в случай на необходимост от повторение на анализи, представяне на доказателства в съда или просто проверка на резултатите с нови версии на инструментите.

Регулиране и тестване на настройките
Инструменти като Foremost, Scalpel или Photorec ви позволяват да настроите фино какви типове файлове се търсят, какви максимални размери се приемат, как се интерпретират подписите и т.н. Препоръчително е тестване на различни конфигурацииособено когато знаете предварително какъв тип файлове ви интересуват (например само документи на Office или само изображения).

Валидиране и преглед ръчно
Въпреки че автоматичните валидатори помагат, в крайна сметка е необходимо нещо друго. човешки преглед За да се оцени дали възстановеният файл е релевантен, пълен или просто шум. В криминалистични контексти е важно също така да се документира всяка стъпка, да се запазват регистрационни файлове и да се поддържа веригата на съхранение.

Когато всичко това се комбинира с организиран подход и правилните инструменти, изрязването на данни става един от най-мощните инструменти за възстановяване на информация в критични ситуации, както в професионалната сфера, така и в по-обикновени случаи (класическото „форматирах картата на фотоапарата и имах всички снимки от почивката“).

В крайна сметка става въпрос за разбиране какво е изрязване на данни и как то се възползва от вътрешни файлови подписи и какви ограничения имат те при фрагментацияТова е разликата между това да се откажеш от случая или да успееш да спасиш точно онези документи или изображения, които сякаш са изчезнали завинаги.

Възстановяване на изтрити файлове с TestDisk и PhotoRec-3
Свързана статия:
Как да възстановим изтрити файлове с TestDisk и PhotoRec