Hide and Seek: Concealing and Recovering Hard Disk Data

Спрятать и найти: удаление и восстановление данных на жестком диске

Источник: http://www.infosec.jmu.edu/reports/jmu-infosec-tr-2006-002.pdf

Автор: Steven Dillon

Автор перевода: Рябцев А.К.

Резюме

Хороший специалист должен иметь представление о технических методах атак, которые могут быть использованы злоумышленником  - это и вредоносные программы, вирусы или черви. Действительно, необходим значительный объем знаний для того, чтобы отследить каждый шаг злоумышленника, собрать все части головоломки воедино и успешно защитить свои интересы. Не каждая атака будет установлена, тем более, если это сделал эксперт. Автоматизированные инструменты становятся все более изощренными из-за дня в день, что даже ребенок может стать угрозой, написав вредоносные программы, которые ранее не существовали.

Во время совершения преступления общая человеческая черта, направленна на то, чтобы скрыть, замаскировать или иным способом утаить доказательства преступной деятельности. В некоторых случаях сокрытие является частью плана, позволяющего успешно реализовать противоправные действия. Удаление данных с жесткого диска может быть использован как один из способов сокрытия доказательства.

Чтобы быть успешным специалистом необходимо знать и понимать эти методы. Кроме того они (специалисты) должны быть способны восстановить максимум выявленных скрытых и удаленных пакетов данных.

                Отправными точками для восстановления информации являются: физические характеристики жесткого диска; характерные атрибуты для файловых систем FAT32, NTFS и Ext2fs; используемые методы для скрытия и поиска цифровых данных; программные средства для удаления и восстановления данных; истинность удаления данных; принятых положений, касающихся уничтожения данных; возможность восстановления данных.

       1.Введение

Чтобы понять, как различия в файловых системах влияют на сокрытие, удаление и восстановление данных, необходимо знать физические характеристики  жесткого диска. Важнейшими из них являются: использование магнитных свойств материала, применяемых на современных жестких дисках и  его состав; разметка диска, формирующая дорожки и сектора; формат диска, исходная информация, а также механизм, используемый для чтения и записи данных. Эти отправные точки необходимы для создания концепции и методов по восстановлению данных, которых будет придерживаться специалист.

Хотя и существуют точки соприкосновения между скрытием и восстановлением данных, отдельные файловые системы имеют особенности, которые влияют на работу операционных систем и их приложений. Эти различия влияют как на результат работы злоумышленника, так и на результат работы специалиста, который борется с нежелательным воздействием на хранящуюся информацию. Эта статья сфокусирована на файловых системах FAT32, NTFS и Ext2fs (возможно наиболее используемых файловых системах на сегодня), поскольку они непосредственно относятся к сокрытию удалению и восстановлению данных. Специфика файловых систем и их структура будут служить для лучшего понимания предметной области и получения дополнительной справочной информации.

Вместе с фундаментальными основами могут быть введены и способы сокрытия данных. На диске располагается большое количество пустых пространств, что может представлять собой области для сокрытия информации. Существуют различные типы пустых пространств, так называемых зазоров, которые, в свою очередь зависят, от вида файловой системы. Таким образом, будут рассматриваться зазоры в файловых системах FAT32, NTFS и Ext2fs. Также представлены экспериментальные данные по файловым системам NTFS и Ext2fs. Некоторые методы сокрытия данных являются специфическими для конкретной файловой системы, например, такой как альтернативный поток данных. Этот метод применяется, как способ защиты информации от злоумышленника. Есть и другие хорошие методы сокрытия информации. Например, маскировка файлов использую скрытые атрибуты или удаление файла, как способ скрыть данные. Наконец, важнейшим есть то, что эти технологии используются специалистом для оценки перспектив таких методов скрытия данных.

Наверное, каждый заядлый компьютерщик слышал байки о том, что происходит с данными после решения их удалить. Но мало кто имеет представление (даже специалисты), что происходит с данными после удаления их нажатием соответствующей кнопки на клавиатуре. Само по себе то, что происходит при удалении данных, является интересной темой, и почему она, является проблемной для вычислительной техники. Снова и снова можно находить различия между файловыми системами FAT32, NTFS и Ext2fs, касающиеся механизмов удаления данных. Например, концепция очистки и удаления информации с диска в операционных системах Windows и Linux представлены по-разному, поэтому инструменты будут использоваться для этого разные.

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

Очень важны умения специалистов по выявлению и восстановлению данных. В противовес методам для скрытия информации, будут обсуждаться методы по обнаружению и восстановлению данных. Наиболее популярные инструменты (в виде ссылок в этой статье) будут приведены как для Windows так и для Linux платформ. Эта информация позволяет подчеркнуть особенности поддержки файловых систем и потенциальные возможности по восстановлению данных. Если программное обеспечение не в состоянии извлечь удаленные данные, то могут применяться радикальные или экзотические методы. Использование таких методов можно рассматривать при крайней важности восстанавливаемых данных, но они также направленны показать то, что все действия на компьютере можно отследить.

 
2.       Описание жесткого диска
2.1   Физические характеристики

По сути, жесткий диск – это магнит, со своими магнитными свойствами. Благодаря использованию магнитных свойств могут быть созданы определенные картины, обозначающие биты информации (главной единицы информации) и в зависимости от вида определяющиеся как нуль или единица. Для формирования данных биты группируются в байты  или символы, размер которых будет меняться в зависимости от различных типов устройств и компьютеров, как правило, это 8 бит. Термин «символ» используют как синоним термину «байт». Далее в данной статье байт и символ будем считать эквивалентные 8 битам. На сегодняшний день простому пользователю доступны жесткие диски с объемами в сотни Гбайт [13].

Первые магнитные носители состояли из пластин в виде тонких круглых дисков, которые состояли из немагнитных материалов, таких как стекло или алюминий, которые покрывались тонким слоем магнитного материала, как правило, оксид железа (III) (магнитный носитель) и оксид алюминия (для абразивного сопротивления). Современные магнитные носители называют "тонкопленочными носителями" (см. рисунок 1) и состоят из металлической подложки с тонкими слоями, нанесенными в большом количестве путем физического оседания частиц металла (атомы различных материалов формируют поверхность при помощи технологий химического испарения), образующие, так называемый, бутерброд. Тонкий слой углерода увеличивает механическую прочность, замедляют коррозию магнитных слоев. Углеродного слой покрывается смазкой, для минимизации его износа [19, 23].

Состав тонкопленочного носителя


Рис.1 Состав тонкопленочного носителя [23]

1 - Смазка, 2 – карбоновое покрытие (<15 нм), 3 – магнитный слой (~30 нм), 4 – хромовый подслой (~50 нм), 5 – никеле фосфорный дополнительный слой (~10000 нм), 6 – металлическая подложка

Существуют диски с односторонним и двусторонним хранением данных. Несколько дисков могут быть объединены в стек, известный как диск-пакет для увеличения емкости одного устройства. Информация хранится на поверхности диска в виде концентрических кругов - «дорожек» различного диаметра. Т.к. в устройстве содержится дисковый пакет, треки с одинаковым диаметром образуют цилиндр. Дисковое пространство может быть разбито на сотни и тысячи треков. Прилегающие к ним участки разделены промежутками, для того, чтобы предотвратить или свести к минимуму ошибки в результате смещения или интерференции магнитного поля. Для упрощения электроники на каждом треке хранится одинаковое число битов. Таким образом, плотность битов на дюйм увеличивается при переходе от внешнего трека к внутренней дорожке (такой же метод используется в фонографе). В связи с потенциально большим количеством информации, хранящемся на одном треке, его разбивают на сектора  (см. рисунок 2). Сектора, образованные в процессе деления трека, жестко закрепленны на поверхности диска и неизменны.

 Пример трека и сектора

Рис.2 Пример трека (желтый) и сектора (синий) [2]

Существует несколько методов для организации секторов. Например, использование угла или дуги от центра диска, наподобие железнодорожных путей, которые распространяются от центра диска к его краям. Использование меньших углов при записи у  краев диска, чем у его центра для равномерности плотности записи. Другой метод, известный как «Зона записи битов» способствует тому, что один и тот же сектор находится на одной дуге для ряда цилиндров.

Форматирование диска осуществляется операционной системой для того, чтобы разбить трек на одинаковые по размеру блоки. После его осуществления размеры блока не могут быть динамически изменены. Размеры блока обычно составляет от 512 до 4096 байт. Во время процесса форматирования, жестко закрепленные блоки будут формировать сектора. Блоки разделены фиксированным межблочным пробелом, который содержит специально закодированные контрольные поля  (созданные во время инициализации жесткого диска), использующиеся для расположения блочных атрибутов.

2.2 Доступ к данным и передачи

Диск – это произвольно доступное адресное устройство. Основной единицей передачи данных между диском и памятью является дисковый блок. Физический аппаратный адрес блока состоит из номера цилиндра, номера трека (номер поверхности в цилиндре, где расположен трек) и номера блока (внутри трека). Отдельный номер называется ЛАБ (логический адрес блока). При помощи ЛАБ дисковый контроллер определяет корректность блока. Некоторые устройства передают несколько смежных блоков, известных как кластеры, записанных или считанных с диска как единое целое.

Механизмом для записи и считывания диска является головка чтения/записи, которая представляет собой индукционную катушку. Способность головки записывать основано на магнитном поле, возникающем при протекании тока через ее катушку. Электрические импульсы передаются головке, вызывая магнитные структуры, под воздействием которых происходит запись на диск. Эти структуры различны для положительных и отрицательных токов. Считывание с диска основано на том, что магнитное поле, воздействующее на головку, наводит в ее катушке электрический ток той же полярности, что его и записал.

Традиционно, существует воздушный зазор между головкой и пластинами диска, головка расположена на фиксированном расстоянии от диска. Для того, чтобы головка считывала и записывала правильно, она должна иметь потенциал для создания электромагнитного поля нужной величины, иметь достаточную чувствительность, быть определенного размера и как можно ближе расположена к поверхности диска. Чем уже головка, тем уже дорожка, что увеличивает плотность записи (желательного качества). К сожалению, близкое расположение головки увеличивает риск ошибки вызванной примесями или дефектами диска. Но винчестеры (он же жесткие диски) были разработаны так, чтобы побороть эту особенность. Головки винчестеров работают в запечатанных дисках, что предотвращает загрязнение. Головки выполнены из аэродинамической фольги, которые слегка лежат на поверхности диска, когда он находится в покое и поднимается над поверхностью при помощи воздушного давления, образованного вращением дисков.

Головка чтения/записи прикрепляется к механической руке, которая связана с приводом для возможности ее перемещения (в унисон, если имеется несколько рук) точно в нужное место на треке по адресу блока. Диск или дисковый пакет непрерывно вращается двигателем с постоянной скоростью (как правило, между 5400 и 15000 об / мин). Когда головка чтения/записи будет перемещена на требуемый трек и под ней будет желаемый блок, активируются электронные компоненты головки. Дисковая головка, используемая в конструкции, еще называется как подвижная дисковая головка (см. рисунок 3). Фиксированная дисковая головка представляет собой множество головок предназначенных для отдельных треков. При настройке на трек фиксированная головка использует электрическое переключение для выбора соответствующей головки, что делает систему более быстро действенной, по сравнению с подвижными головками [13, 32].

Подвижные головки дискового пакета

Рис.3. Подвижные головки дискового пакета

            Диск обычно содержит встроенный контроллер диска, который взаимодействует с компьютером и управляет приводом. На высоком уровне контроллер принимает команды для ввода/вывода, позиции рук и основания для чтения/записи данных которые должны будут выполнены. Контроллеры могут быть предоставлены на различных видах шин включая: ATA (IDE, EIDE), Serial ATA, SCSI, SAS, FireWire (aka IEEE 1394), USB, и Fibre Channel [13, 19].

                Время, необходимое для размещения головки чтения/записи на правильный трек называется время поиска (обычно от 3 до 10 миллисекунд). Дополнительная задержка называется вращательной задержкой или задержкой, вызванной поиском нужного блока вращением диска в месте под головкой чтения/записи. Чем быстрее вращение диска, тем меньше будет задержка. Передача данных с устройства называют время передачи блока. Таким образом, общее количество времени, необходимое для обнаружения и передачи произвольного блока, учитывая его адрес, является сумма времени поиска, вращательной задержкой и временем передачи блока. Современные жесткие диски могут достичь скорости передачи данных до 100 МБ/с [13, 32].

                Ссылки

[1] Bauer, S., and Priyantha, N. B. Secure Data Deletion for Linux File Systems. In Proceedings of the 10th USENIX Security Symposium, (August, 2001), 153-164.
[2] Brain, M. How Hard Disks Work, Retrieved February, 2006 from: http://computer.howstuffworks.com/hard-disk7.htm
[3] Buckeye, B. and Liston, K. Recovering Deleted Files In Linux, Retrieved February, 2006 from: http://www.samag.com/documents/s=7033/sam0204g/sam0204g.htm
[4] Card, R., Ts’o, T., and Tweedie, S., Design and Implementation of the Second Extended Filesystem, Retrieved February, 2006 from: http://e2fsprogs.sourceforge.net/ext2intro.htm
[5] Carlton, G. H. A Critical Evaluation of the Treatment of Deleted Files in Microsoft Windows Operating Systems. In Proceedings of the 38th Hawaii International Conference on System Sciences. IEEE, 2005.
[6] Carvey, H. The Dark Side of NTFS (Microsoft’s Scarlet Letter), Retrieved February, 2006 from: http://www.infosecwriters.com/texts.php?op=display&id=53
[7] Casey, E. Digital Evidence and Computer Crime: Forensic Science, Computers, and the Internet, 2nd Edition. Academic Press, San Diego, CA, 2004
[8] Chuvakin, A. Linux Data Hiding and Recovery, Retrieved February, 2006 from: http://www.linuxsecurity.com/content/view/117638/49/
[9] Dawson, M., Davis, J., Forgie C., and Tauber S. Data Recovery, Retrieved February, 2006 from:
http://staff.washington.edu/dittrich/misc/Data%20Recovery.ppt
[10] Dear, D. An Exploration of Future Anti-Forensic Techniques, Retrieved February, 2006 from:
http://www.assuremind.com/antiForensics.pdf
[11] Devera, D. The Difficulty of Data Annihilation from Disk Drives: or Exnihilation Made Easy, Retrieved February, 2006 from: http://www.thuktun.org/cs574/papers/cs574_ddevera.pdf
[12] Dominus, M. J., Internals of ext2fs, Retrieved February, 2006 from: http://perl.plover.com/yak/ext2fs/samples/slide001.htm
[13] Elmasri, R. and Navathe, S. Fundamentals of Database Systems, Fourth Edition. Pearson Education Inc., Boston, MA, 2004.
[14] Farmer, D., and Venema, W. Forensic Discovery, Retrieved January, 2006 from: http://fish2.com/forensics/pipe/forensic-discovery-book.zip
[15] Federspiel, D. Data Disposal – Gone For Good, Retrieved February, 2006 from: http://www.snia.org/education/tutorials/fall2005/security/Data_Disposal_Gone_for_Good_Rev3.pdf
[16] NTFS.com, “File Storage Hardware and Disk Organization”, Retrieved February, 2006 from:
http://www.ntfs.com/hard-disk-basics.htm#Hard
[17] Gittings, K. Where Data Hides and Resides Understanding Hidden Data in Windows, Retrieved February, 2006 from:
http://www.giac.org/certified_professionals/practicals/gsec/3839.php
[18] Gutmann, P. Secure Deletion of Data from Magnetic and Solid-State Memory, Retrieved February, 2006 from:
http://www.cs.auckland.ac.nz/~pgut001/pubs/secure_del.htm
[19] Wikipedia, “Hard disk,” Retrieved February, 2006 from: http://en.wikipedia.org/wiki/Hard_disk
[20] Microsoft Corporation, “How NTFS Works,” Retrieved February, 2006 from: http://technet2.microsoft.com/WindowsServer/en/Library/81cc8a8a-bd32-4786-a849-03245d68d8e41033.mspx
[21] Kuepper, B. What You Don’t See On Your Hard Drive, Retrieved February, 2006 from:
http://www.sans.org/rr/whitepapers/incident/653.php
[22] Microsoft Corporation, “Limitations of FAT32 File System,” Retrieved February, 2006 from:
http://support.microsoft.com/default.aspx?scid=KB;ENUS;Q184006&
[23] eMag Solutions, “Magnetic Hard Disk Drive,” Retrieved February, 2006 from:
http://www.usbyte.com/common/HDD.htm
[24] Mallery, J. R. Secure File Deletion, Fact or Fiction?, Retrieved February, 2006 from:
http://www.sans.org/rr/whitepapers/incident/631.php
[25] Mandia, K., Prosise, C., and Pepe, M. Incident Response & Computer Forensics, Second Edition. McGraw-Hill/Osborne, Emeryville, CA, 2003
[26] Martin, D. Windows, NTFS and Alternate Data Streams, Retrieved February, 2006 from:
http://www.giac.org/certified_professionals/practicals/gsec/0715.php
[27] Microsoft Corporation, “Microsoft Extensible Firmware Initiative FAT32 File System Specification, FAT: General Overview of On-Disk Format, Version 1.03,” Retrieved February, 2006 from: http://download.microsoft.com/download/1/6/1/161ba512-40e2-4cc9-843a-923143f3456c/fatgen103.doc
[28] Pan, L. Data Recovery Software Tools: Today and the Future, Retrieved February, 2006 from:
http://www.deakin.edu.au/~ln/PhD/Talks/DataRecovery.pdf
[29] Pendyala, K. S., Cyber Forensics, Retrieved March, 2006 from: http://www.csi-pune.org/downloads/cyberpune.ppt
[30] Richard, G. G., and Roussev, V. Scalpel: A Frugal, High Performance File Carver, Digital Forensic Research Workshop (DFRWS), New Orleans, LA, 2005
[31] Robertson, G. An Introduction to Hiding and Finding Data on Linux, Retrieved March, 2006 from:
http://www.giac.com/practical/GSEC/Gary_Robertson_GSEC.pdf
[32] Stallings, W. Operating Systems: Internals and Design Principles, Fourth Edition. Prentice-Hall Inc., Upper Saddle River, NJ, 2001.
[33] Carnegie Mellon University, “Using The Coroner’s Toolkit: Rescuing Files with Lazarus”, Retrieved February, 2006
from: http://www.cert.org/securityimprovement/implementations/i046.03.htm
[34] Microsoft Corporation, “Windows XP Professional Resource Kit, Working with File Systems,” Retrieved February, 2006
from: http://www.microsoft.com/technet/prodtechnol/winxppro/reskit/c13621675.mspx
[35] Zetterstrom, H. Deleting Sensitive Information Why Hitting Delete Isn’t Enough, Retrieved February, 2006 from:
http://www.sans.org/rr/whitepapers/privacy/691.php
[36] Van Hauser. Secure Delete, Secure FILL, Retrieved July, 2006 from: http://linux.softpedia.com/get/Security/THCSecureDelete-10390.shtm
[37] Eraser: http://www.tolvanen.com/eraser/
[38] WipePro+: http://www.marcompress.com/AboutWipePro.htm
[39] Msweep: http://www.secure-data.com/ms.htm