В этой статье я расскажу о некоторых особенностях различных способов создания копий (образов) носителей информации в компьютерной криминалистике (форензике). Статья будет полезна сотрудникам отделов информационной безопасности, которые реагируют на инциденты ИБ и проводят внутренние расследования. Надеюсь, что и судебные эксперты, проводящие компьютерно-техническую экспертизу (далее КТЭ), найдут в ней что-то новое.
Для начала цитата:
Автор полагает (и многие исследователи с этим согласны), что исследовать в ходе КТЭ оригинал носителя вообще нежелательно. Чтобы гарантировать неизменность информации, а также оставить возможность проведения повторной или дополнительной экспертизы, надо оставить оригинал нетронутым. А все исследования проводить с его копией. Это не только надежнее, но и удобнее, поскольку копию можно сделать на таком носителе, который лучше приспособлен для имеющихся у эксперта инструментов, надежнее, быстрее.
Н.Н. Федотов. Форензика – компьютерная криминалистика
Чтобы созданный образ был криминалистически достоверен, нужно, во первых, в процессе создания не изменить содержимого исследуемого носителя, во вторых, после извлечения образ должен побитово соответствовать исследуемому носителю. Такой образ будет содержать не только живые файлы, но и служебные данные, свободные области файловых систем и области неразмеченные файловыми системами.
Если вы, подобно слону в посудной лавке, подключите исследуемый носитель к обычной операционной системе (ОС), то произойдет необратимое: в стандартной конфигурации ОС активирует устройство сразу после обнаружения, смонтирует файловые системы и, не спрашивая вас, изменит его содержимое. Windows, например, без спроса изменяет временные метки в атрибутах файлов (в некоторых случаях), создает скрытые папки Корзины, сохраняет информацию о конфигурации.
Предотвратить изменение информации на носителе можно двумя способами: аппаратно или программно.
Аппаратные блокираторы записи
С аппаратными решениями я не работал, но приведу немного теории из интернетов. Бывают блокираторы записи (bridge), через которые исследуемые носители информации подключаются к компьютеру, а бывают дубликаторы (duplicator), которые умеют автономно создавать полные копии и образы исследуемых дисков.
Блокираторы записи перехватывают команды записи от ОС и предотвращают их передачу на носитель информации. Когда это возможно, они сообщают ОС, что устройство подключено в режиме «только чтение», иначе просто сообщают ОС об ошибках записи. Некоторые устройства используют встроенную память для кэширования записанных данных и создают для ОС видимость того, что данные на диске действительно изменились.
Аппаратные решения безусловно имеют свои плюсы, но есть у них и недостатки:
Они недешевы. Для примера, блокиратор записи T35u имеет рекомендованную розничную цену $349.00, дубликатор Tableau TD2u — $1,599.00.
- И они небезупречны. Бывали случаи, когда аппаратные устройства пропускали команды записи на устройство (пример).
Загрузочные диски для компьютерной криминалистики
Софтверизация неизбежна в компаниях с распределенной территориальной структурой (особенно, если у вас нет желания попилить половину бюджета ИТ на железяки, которые могут никогда не понадобиться). Программные решения сэкономят вам время в случае массовых инцидентов: вы можете создать столько загрузочных флешек, сколько вам нужно исследовать компьютеров, а после запустить создание образов на всех компьютерах одновременно. Осталось только определиться, что за софт должен быть на этих загрузочных флешках.
Linux дистрибутивы
Снять образ можно одним из многочисленных специализированных дистрибутивов Linux, вот некоторые из них: Rip Linux, DEFT Linux, CAINE, Paladin, Helix, Kali. В некоторых при загрузке нужно выбрать режим forensic mode (или что-то в этом духе). Часть из этих дистрибутивов уже содержат ПО для анализа образов.
Некоторые проблемы режима «только чтение» у Linux дистрибутивов описаны здесь. Но самая главная проблема Linux — относительная сложность в использовании, и, как следствие, отсутствие персонала, обладающего достаточной экспертизой. В Linux для снятия образа придется использовать командную строку (например, ftk imager под linux существует только в консольной версии), где одна опечатка может уничтожить все свидетельства (пусть эта история и оказалась вирусной рекламой, но не просто же так в нее многие поверили).
Windows загрузочные диски
Чтобы можно было доверить создание образа любому рядовому сотруднику ИТ, нужно сократить до минимума вероятность ошибки. С этим хорошо справляется специальная сборка Windows Forensic Environment (WinFE), которая имеет графический интерфейс во многом похожий на обычный Windows, при этом ограниченный только необходимыми функциями. WinFE была создана компьютерным криминалистом, работающим в Microsoft. Сборка основана на WinPE и работает по аналогии с «forensically sound» Linux дистрибутивами, которые не монтируют разделы в процессе загрузки.
Вот несколько сильных сторон WinFE:
- Можно использовать Windows-приложения для криминалистики (портативные версии)
- Большинство судебных экспертов уже используют Windows
- Бесплатно (если у вас есть лицензия на Windows)
- Относительно легко собрать и кастомизировать
- Меньше возможностей для серьезных ошибок в процессе использования
Самый простой способ собрать WinFE — утилита из проекта WinBuilder Mini-WinFE. Вам понадобятся дистрибутив Windows и ПО, которое вы захотите включить в сборку. На выходе вы получите ISO файл, который можно записать на CD или на USB (с помощью Rufus).
Основной сценарий использования WinFE:
- Создание загрузочного диска с WinFE.
- Загрузка WinFE на исследуемом компьютере.
- Снятие образа дисков исследуемого компьютера. Образы записываются на носитель с WinFE или на любой другой носитель.
Supported applications include — CloneDisk (included)
DMDE (included)
Forensic Acquisition Utilities (included)
FTK Imager (copied from local install)
HWiNFO (included)
LinuxReader (downloaded automatically)
MW Snap (included)
NT Password Edit (included)
Opera (included)
Sumatra PDF Reader (included)
WinHex (copied from local install)
X-Ways Forensics (copied from local install)
Write Protect Tool (included)
За особое поведение WinFE в процедуре подключения дисков отвечают два параметра реестра:
- HKEY_LOCAL_MACHINE\system\ControlSet001\Services\MountMgr. Параметр NoAutoMount типа DWord принимает значение 1. После этого сервис Mount-Manager не выполняет автоматического монтирование любых storage device.
- HKEY_LOCAL_MACHINE\system\ControlSet001\Services\partmgr\Parameters параметр SanPolicy принимает значение "3" или "4" в зависимости от версии Windows.
Существуют как минимум семь версий WinFE, каждая доступна в варианте 32 и 64 бита.
Windows FE 2.0 (6.0.6000 - Vista)
Windows FE 2.1 (6.0.6001 - Vista SP1/Server 2008)
Windows FE 3.0 (6.1.7600 - 7/Server 2008 R2)
Windows FE 3.1 (6.1.7601 - 7 SP1/Server 2008 R2 SP1)
Windows FE 4.0 (6.2.9200 - 8/Server 2012)
Windows FE 5.0 (6.3.9600 - 8.1)
Windows FE 5.1 (6.3.9600 - 8.1 Update 1)
Каждая из версий имеет свой набор возможностей, подробное сравнение, но я рекомендую 32-битную версию Windows FE 5.x (подробности ниже).
Итак, во время загрузки WinFE не монтирует разделы, а предлагает сделать это пользователю самостоятельно с помощью специальной утилиты Write Protect Tool (WProtect.exe, автор Colin Ramsden). Как следует из названия, эта утилита предотвращает запись на диск.
Впрочем, и у WinFE были случаи непреднамеренной записи. Важно, что эти случаи хорошо изучены, относятся к старым версиям Windows <4.0 и не влияют на пользовательские данные, т.к. затрагивают только, так называемую, подпись диска — это 4 байта в главной загрузочной записи (MBR), которые Windows добавляет при подключении диска, если он ранее не подключался к NT-системам. Узнать подробнее о том, что такое disk signature можно в этой статье Марка Руссиновича, а в этом посте подробно описывается, в каких случаях Windows изменяет подпись диска.
Основной блог по WinFE сейчас располагается здесь.
Создание образа
После того как мы загрузили нашу доверенную ОС, можно приступать к созданию образа. Желтая майка лидера находится у формата E01 (Encase) и этому есть несколько причин:
- признанный экспертами формат — это важно, если дело дойдет до суда.
- большинство форензик-утилит имеют поддержку этого формата — на этапе анализа вам не придется конвертировать образ.
- произвольная степень сжатия — от нее зависит итоговый размер и необходимое для создания образа время, вы сможете выбрать нужную степень в зависимости от ситуации.
- произвольный размер фрагмента — чтобы образ было удобно копировать по сети или сохранять образ на файловых системах FAT32, можно разбить образ на фрагменты по 4000 Мб.
- служебные поля, в которых можно сохранить различные данные (например, ФИО эксперта, который выполняет снятие образа, расхождение времени на исследуемом компьютере с действительным временем, серийный номер диска, с которого снимается образ, и т.п.).
- контроль целостности — на этапе создания выполняется подсчет контрольной суммы образа.
Для создания образа в формате E01 лучше всего использовать проверенный временем и бесплатный FTK Imager Lite, который можно включить в загрузочный диск WinFE. Кстати, нет особого смысла использовать функцию Use AD Encryption (защита образа паролем), т.к. эта защита легко снимается.
Заключение
Обязательная часть для тех, кому некогда читать эту статью: для снятия образа с исследуемого компьютера используйте WinFE в комплекте с FTK Imager Lite и сохраняйте образ в формате E01.
P.S. За рамками данной статьи остался инструментарий для накопителей с флеш-памятью (Флеш-память: проблемы для компьютерной криминалистики, Стереть нельзя восстановить), а также инструментарий для снятия дампа памяти с работающей системы.
Если Хабру будет интересно, то я расскажу о том, как можно анализировать полученные образы с помощью ПО с открытым исходным кодом.
Комментарии (30)
kirosvi
10.05.2016 14:19Конечно будет интересно. Уже столкнулся с похожим вопросом, но обошелся обычным linux livecd.
yurror
10.05.2016 14:19+8Если компьютерные криминалисты говорят что «Linux — это сложно», у меня для вас очень плохие новости.
Sid_Vishez
10.05.2016 14:23-2Почувствуйте разницу: «Это сложно» и «Это сложнее, чем...». В статье речь не только про криминалистов, но и про обычную деятельность по расследованию чего-либо в любой компании, когда этап сбора данных поручается рядовому сотруднику ИТ.
staticspb
10.05.2016 14:23Давно хотел подробно изучить данный инструмент, но все никак руки не доходили. Ваша статья опять подогрела мой интерес, но, к сожалению, но ссылки на загрузку Mini-WinFE уже не работают.
Sid_Vishez
10.05.2016 14:50+1Такое случается, когда пишешь статью больше месяца :) Пока авторы Mini-WinFE не починили битые ссылки, можете скачать архив по моей ссылке https://yadi.sk/d/-mf7vQz_rbfA3
parkito
10.05.2016 15:49Очень интересно было бы почитать про методы, которыми пользуются криминалисты для извлечения уже удаленной информации, какой спектр устройств может быть исследован (например с айфончиками у фбр головная боль, как у нас дела?), насколько глубоко можно копнуть современными методами для отыскания правды.
imbasoft
10.05.2016 16:04В свое время, пытались RAID-60 массив восстановить, а точнее один файл (снапшот виртуалки), обратились в специализированную компанию, были готовы заплатить ~20k $ — они поднять не смогли.
А вообще, сейчас реально «поднять» данные только с носителей, имеющих физические дефекты (например, головка сгорела), а для данных имеющих логические повреждения (как из примера ранее) — это практически нереально.
mibori
10.05.2016 17:38Если Хабру будет интересно, то я расскажу о том, как можно анализировать полученные образы с помощью ПО с открытым исходным кодом.
да, было бы очень интересно.
redc0de
10.05.2016 21:03Чтобы гарантировать неизменность информации, а также оставить возможность проведения повторной или дополнительной экспертизы, надо оставить оригинал нетронутым.
Иногда это трудно сделать, например если:
- Мы имеем дело с SSD
- live acquisition
- Мы имеем дело с мобильными устройствами, к которым совершенно другой подход
- Битые секторы? Что с ними делать? В dd их можно заменить нулями, но это уже проблема
Кстате, про какую программу будете писать, не Autopsy ли?
Sid_Vishez
10.05.2016 21:27Думал рассказать про Autopsy и Timesketch/Plaso.
Про битые секторы: FTK Imager также заменяет их нулями и записывает в лог. Первый результат из гугла http://www.filesig.co.uk/ftk-imager-log-bad-sectors-read-errors.html
Остальные темы за рамками статьи, как я и написал в конце.
ogoNEKto
10.05.2016 21:18на сайте Mini-WinFE уже недоступно для скачивания… ссылка получилась в никуда
про продолжение / использование ЗА!Sid_Vishez
10.05.2016 21:28Про битую ссылку уже обсудили: https://habrahabr.ru/post/283036/#comment_8889210
stopwar
11.05.2016 11:11На самом деле в этой теме есть прекрасная книга (по сути пошаговый мануал) со всеми необходимыми скриптами и подробным рассмотрением используемого ПО, а также технологий и порядка проведения расследования Linux Forensics — www.amazon.com/Linux-Forensics-Philip-Polstra/dp/1515037630/ref=sr_1_1?ie=UTF8&qid=1462947850&sr=8-1&keywords=linux+forensics
Aleksandr_Vedernikov
11.05.2016 11:12Мне кажется что использование Windows PE для этих целей не совсем честно с точки зрения EULA к WAIK куда и входит WinPE. Так же пока нет исследований режима подключения «только чтение» в Mini-WinFE.
Sid_Vishez
11.05.2016 11:34Можете уточнить, в чем именно нечестность? (готовый образ с WinPE не распространяется, распространяется только инструмент для сборки).
Исследований Mini-WinFE уровня NIST мне действительно не попадалось, но есть похожий коммерческий продукт SAFE, который также сделан на WinPE и заявляется, что он прошел все тесты NIST.
Также есть Windows Triage Environment, авторы которого прямо заявляют, что их комбайн сделан на основе WinFE. Но их продукт распространяется только среди правоохранительных органов и правительственных учреждений.msuhanov
11.05.2016 12:58Исследований… уровня NIST
Это довольно простой уровень, где многие ошибки остаются незамеченными, как показывает практика. И что еще хуже – те редкие ошибки, которые находят при тестировании в NIST, производители исправляют без огласки.
но есть похожий коммерческий продукт SAFE, который также сделан на WinPE и заявляется, что он прошел все тесты NIST
Там используется программный блокиратор записи. В Windows FE программного блокиратора записи нет.Sid_Vishez
11.05.2016 12:59Write Protect Tool (WProtect.exe, автор Colin Ramsden) — а это не программный блокиратор?
msuhanov
11.05.2016 13:43Это лишь программа для заполнения структуры SET_DISK_ATTRIBUTES и вызова функции DeviceIoControl.
Sid_Vishez
11.05.2016 14:57Вопрос терминологии. WProtect.exe назначает букву разделу вместе с атрибутом «Только чтение». В каких случаях этого недостаточно для предотвращения записи на диск (если мы говорим про WinFE)? У SAFE Boot возможности заявляются похожие. А SAFE Block совсем другой продукт.
msuhanov
11.05.2016 16:26Вопрос терминологии. WProtect.exe назначает букву разделу вместе с атрибутом «Только чтение». В каких случаях этого недостаточно для предотвращения записи на диск (если мы говорим про WinFE)?
Не знаю. Это должны разработчики доказать, что все работает так, как надо. В Linux, например, на блочное устройство, переведенное в режим «только чтение», все равно возможна запись в некоторых случаях. А может ли драйвер fake RAID в Windows сделать нечто похожее? Тем более, что одним из преимуществ Windows FE называется хорошая поддержка RAID, если сравнивать с Linux.
У SAFE Boot возможности заявляются похожие. А SAFE Block совсем другой продукт.
В составе SAFE Boot Disk есть SAFE Block.
Aleksandr_Vedernikov
11.05.2016 16:12В EULA к WAIK 7 и Microsoft Software License Terms (Standard 8) есть такой пункт.
Windows Kits. If the software includes Windows Kits, the following additional terms apply to you.
Windows Pre-Installation Environment. You may install and use the Windows Pre-Installation Environment for purposes of diagnosing and recovering Windows operating system software. For the avoidance of doubt, you may not use the Windows Pre-Installation Environment for any other purpose, including without limitation as a general operating system, as a thin client or as a remote desktop client.
Т.е. можно использовать только для диагностики и восстановления Windows. Любое другое использование не разрешено. Хотя возможно есть и другие варианты поставки WinPE с другим лицензионным соглашением.msuhanov
11.05.2016 16:28Если речь идет об использовании Windows FE при производстве судебных экспертиз, то в ГК РФ есть такая норма:
Статья 1278. Свободное воспроизведение произведения для целей правоприменения
Допускается без согласия автора или иного правообладателя и без выплаты вознаграждения воспроизведение произведения для осуществления производства по делу об административном правонарушении, для производства дознания, предварительного следствия или осуществления судопроизводства в объеме, оправданном этой целью.
А программы охраняются как произведения литературы.Aleksandr_Vedernikov
12.05.2016 11:20C Гражданским кодексом Российской Федерации спорить бесполезно, по этому я и написал, что «использование не совсем честно с точки зрения EULA», а не невозможно.
Sid_Vishez
11.05.2016 17:14Тут конечно есть о чем подискутировать, но вот, что я думаю: 1) Снятие образа и анализ содержимого — это и есть диагностика 2) Основной смысл пункта — не использовать WinPE как основную операционную систему на постоянной основе (WinPE предполагает использование как LiveCD/USB) 3) Во всех описаниях, включая обучающие курсы, которым уже много лет, указывается Free, при наличии лицензии Windows 4) Автор первой версии — сотрудник Microsoft 5) Я нигде не встречал упоминаний о противоречии WinFE этому пункту
Aleksandr_Vedernikov
12.05.2016 11:35Я согласен, тут все упирается в текст EULA и его трактовку. Разрешено использование при наличии «лицензии на Windows» но лицензии приобретаются либо на личный компьютер, либо на юр. лицо, а исследуемый компьютер юридически принадлежит другому лицу и тут вопрос, «Возможно ли со своей лицензией диагностировать чужой компьютер». Но это мои мысли и моя трактовка EULA. К тому же я не слышал ни одного громкого дела по нелицензионному использованию WinPE. Ну и как написали выше ГК РФ на территории России позволяет использовать WinFE без оглядки на EULA.
imbasoft
Создание образа — это 3/100 от расследования. Реальная проблему взывает аналитика, особенно когда не знаешь что ищет и принесли машину «посмотреть».
В случаях проведения внутреннего расследование (без необходимости передачи данных в суд) анализ делают вообще без образа, прямо на живой системе, в параллель работе пользователя, либо с даунтаймом на час или парочку.
Но опять таки — аналитика, аналитика, аналитика :) вот что нужно.