Обзор лучших бесплатных приложений для исследований в рамках форензики

На сегодняшний день у ряда специалистов по форензике в РФ возникают трудности в проведении исследования цифровых свидетельств с помощью платного коммерческого ПО, поскольку не всегда есть возможность продлить лицензионную подписку или срок действия аппаратного ключа. Приходится искать альтернативные пути, которые позволят, пусть и с некоторыми потерями во времени, выполнять расследования с сохранением достаточного уровня качества. Мы в «Информзащите» изучили довольно большой ряд бесплатных опенсорсных инструментов, которые применяем в наших расследованиях и хотим поделиться с вами нашими впечатлениями и опытом применения такого ПО.

3c2c80530a0f5913a59e81905e43b804.jpeg

MemProcFS-Analyzer

Регулярно обновляемый инструмент, представляющий из себя комплексный скрипт Powershell и набор многих популярных утилит для проведения цифровых исследований в рамках форензики. Важная особенность — полностью автоматическая установка всех необходимых компонентов при первом запуске скрипта. Основной фокус этого инструмента — исследование дампов оперативной памяти, однако анализ здесь проводится без применения традиционного Volatility. Скрипт создаёт виртуальный диск и монтирует к нему исследуемый дамп памяти, взаимодействуя с ним в дальнейшем как с файловой системой. 

d52b5be724ce586d7dce7e5bac8ec34d.png

Интересное решение для тех, кто не любит использовать Volatility из-за большого набора плагинов и необходимости подбирать нужный профиль ОС для анализа. Справедливости ради, я должен заметить, что применял этот тулкит только для анализа дампов памяти ОС Windows. Насколько инструмент приемлем для анализа дампов памяти ОС Linux, я сказать не могу. Автор тулкита тоже ничего не указал в описании по этому поводу. Мне же хочется отметить некоторые фичи, которые вызвали у меня отдельный интерес в рамках исследований.

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

d51cc6ba02e6a5f44716d60a4943c4da.png

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

44d7176ab1e90901c4eefe5b6a1e91d4.png

После завершения извлечения и первичной обработки данных мы получаем вот такой набор папок, содержащих отсортированные свидетельства:

6d856baf29d0b5d197848774bae961ca.png

Радует, что в результате обработки создаются не только текстовые и .csv файлы, но и отформатированные таблицы Excel, с которыми гораздо приятнее работать.

Из интересного — файл FindEvil.xlsx, в котором содержится информация о подозрительных файлах, выявленных на основе индикаторов, описанных автором отдельно по ссылке https://github.com/ufrisk/MemProcFS/wiki/FS_FindEvil

e6413ba70ba311a60e2ddaac57137b5a.png

В файле proc.xlsx содержится не только список процессов с их PID, PPID и имени пользователя, из-под которого производится запуск, но и полная команда запуска процесса по аналогии с плагином cmdscan/cmdline из Volatility.

5e556ab046472bbd92fc55dbf1d343a5.png

Файл tasks.xlsx содержит полный список всех задач планировщика с полной строкой запуска команд.

385d23605d958051bdc38396450c95c9.png

Если в процессе автоматической обработки скрипт выявил процессы с подозрительным наследованием, например, когда типичный процесс outlook.exe порождает powershell.exe, то список этих процессов с их описанием располагается в отдельной папке sys\proc\Unusual_Parent-Child_Relationships в виде текстовых файлов.

Ну и, конечно, так всеми любимый таймлайн. Полностью отформатированный, с удобными фильтрами.

49a67cd84b279b59980568c2a53b70c8.png

Из минусов, которые встретились мне в ходе работы с инструментом, хочется отметить следующие.

  • На сегодняшний день есть проблема с сетевой доступностью обновлений для компонентов этого тулкита, поэтому при запуске вы увидите такие вот ошибки.

ac29322bde0c8924a00aa00c7ce15f88.jpeg

Данные компоненты придётся загружать вручную. Это касается и обновления базы данных для ClamAV. Без обновлённых баз ClamAV просто «повесит» скрипт в бесконечных попытках подключиться к локальному сервису ClamAV, который, в свою очередь, без обновлённых баз просто не запустится.

  • Нет отдельного списка по выявленным компонентам «автозагрузки». Есть некоторые данные из реестра, но мы с вами знаем, что это не полноценная информация.

  • Обработанные данные в итоге запаковываются в архив 7zip с паролем MemProcFS, что на сайте автора не указано, и найти его можно только в теле скрипта. Это может вызвать замешательство при первом использовании.

Hayabusa

Отличный, регулярно обновляемый опенсорсный инструмент для глубокого анализа системных событий Windows с фокусом на выявление завершённых или активных кибератак. Скачать можно по ссылке https://github.com/Yamato-Security/hayabusa

Для бесплатного ПО имеет достаточно гибкие настройки и не требует каких-либо «танцев с бубном» при установке. В последних релизах умеет работать в несколько потоков, что значительно сокращает время анализа.

На вход ожидается указание пути к папке с файлами событий .evtx, либо можно провести live-анализ текущего хоста. Вывод можно направить в .csv файл, который будет выглядеть следующим образом:

82fe18e19dccf0cbceaabb10c08ea370.png

С моей точки зрения, это весьма информативный список результатов. Данный инструмент не просто экспортирует системные события и сортирует по источникам, но и на основе внутренних алгоритмов находит взаимосвязи определённых событий и делает предположения о наличии вредоносной активности в системе. Сортировать результаты можно не только по уровню их опасности, но и по типу вредоносного воздействия из классификации MitreAttack. Кстати, уровень точности значительно возрастает при установленном сервисе sysmon в системе. Впрочем, это логично, учитывая, что sysmon ведёт очень подробный лог событий сам по себе. 

Hayabusa позволяет кастомизировать правила, которые пишутся в .yml файлах, в синтаксисе,   напоминающем YARA-правила:

f0a26c6020bc4b1df6d23605ab803a9d.png

Кстати, можно импортировать отдельные Sigma-правила, которые Hayabusa прекрасно понимает.

По личному опыту — Hayabusa очень хорошо выявляет атаки, направленные на Active Directory. Различные попытки брутфорса, Password Spray, Pass-the-hash, Pass-the-ticket, Golden Ticket, Credential Dumping и вот это вот всё детектится очень хорошо.

Из минусов — разве что вывод доступен только в формате .csv, так что придётся форматировать вручную.

KAPE

Теперь расскажу про более масштабный инструмент, работающий прежде всего с клонами/образами жёсткого диска. Автором является достаточно известный специалистам по форензике Eric Zimmerman. Собственно, KAPE и расшифровывается как Kroll’s Artifact Parser and Extractor, а Kroll — это название компании, частью которой является и сам автор KAPE. 

Скачать KAPE можно с официального сайта по запросу через форму обращения. https://www.kroll.com/en/services/cyber-risk/incident-response-litigation-support/kroll-artifact-parser-extractor-kape

Инструмент тоже регулярно обновляется и представляет собой набор скриптов, тесно интегрированных с форензик-утилитами самого Eric Zimmerman, имеющий вполне приличный для бесплатного инструмента графический интерфейс.

aebc2e7a24ea9017137fd30a95e65a46.png

У KAPE есть два основных режима работы: сбор данных (т.н. acquisition) и их анализ. Левая часть главного окна отвечает как раз за сбор данных, а правая — за различные варианты анализа.

Сначала вы выбираете диск-источник, данные с которого нужно исследовать. Здесь важный момент — KAPE не умеет принимать на вход образы дисков. Поэтому сначала необходимо смонтировать образ в виде логического диска и на вход Target source подать путь к логическому диску. В Target destination указываем папку, куда будут извлечены данные для анализа. А вот то, какие именно данные будут извлечены, вы выбираете из длинного списка плагинов. На самом деле запутаться здесь сложно, потому что названия плагинов соответствуют тем данным, которые будут извлечены. Например, плагин ! SANS_Triage извлечёт стандартный набор данных по методологии SANS. Какие именно данные? Делаем двойной клик по названию плагина и видим такое окно:

c65e8f32195faaa54729332559b17f9e.png

Здесь перечислены модули, которые будут использованы данным скриптом. Эти модули хранятся в папке KAPE\Targets. Открываем, к примеру, EventLogs.tkape и видим:

87bc50f7d850d123cf59160a90e548fd.png

Делаем вывод, что для анализа будут извлечены файлы .evtx из соответствующих папок.

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

Запускаем извлечение, процесс пошёл:

f2a3129fb2892f5b9fad595ebf69904f.png

В моём случае, при выбранном ! SANS_Triage, я получил вот такой набор папок и файлов для дальнейшего анализа:

b7c658b6c2ad3796fe6764e5014d1e7f.png

Теперь в работу вступает вторая часть KAPE — плагины для анализа из правой части главного окна. Логика та же самая — на вход Module source указываем папку с содержимым из первого этапа и в Module destination указываем, куда сохранить результаты анализа файлов. Содержимое плагинов можно просматривать точно так же, как и на первом этапе. С модулями — то же самое. Далее — выбираем формат сохранения результатов и запускаем анализ.

7ed45ca777764070ca4f60bb3168aea9.png

В ходе выполнения можно заметить запуски стандартных инструментов от Eric Zimmerman, но это характерно для плагина ! EZParser. Другие модули запускают утилиты, указанные в их описании:

a74d340f6e03c4eda912ae9d9e0b2f72.png

Кстати, скорее всего вам уже стало понятно, что можно создать собственные плагины и добавить их в папку KAPE\Modules.

На выходе получаем набор папок с результатами анализа, разложенные по категориям:

0940cdf94db00b5a55bb67701ab984e7.png

Дальше — типичная работа специалиста по форензике. Изучаем .csv файлы и ищем необходимые доказательства.

Из минусов можно отметить следующие. 

  • На сегодняшний день есть некоторые проблемы с получением ссылки на KAPE после заполнения формы на сайте. Письмо с ней приходит с перебоями или не приходит вовсе. К тому же, требуется обязательно указывать  корпоративную почту.

  • Необходимость самостоятельно скачивать некоторые утилиты для модулей и копировать их в папку KAPE\Modules\bin.

  • KAPE плохо реагирует на работу с образами дисков, которые смонтированы с помощью FTKImager, и рекомендует использовать Arsenal Image Mounter. Впрочем, эта проблема решается установкой опции Ignore FTK Warning в правой части главного окна. Но, по опыту, с FTKImager здесь действительно какие-то проблемы, потому что с Arsenal у меня действительно получалось вытащить больше данных из анализируемых файлов при базовом анализе с плагином ! EZParser.

Вот такие три отличные, бесплатные приложения, которые мы используем при проведении исследований в рамках форензики. Если будут какие-то вопросы, оставляйте их в комментариях.

© Habrahabr.ru