Шифровальщики. Как реагировать на атаки с использованием программ-вымогателей - Олег Скулкин
Рис. 7.8. $MFT и другие метафайлы NTFS, отображенные в AccessData FTK Imager
Я не собираюсь утомлять вас внутренним устройством NTFS — на эту тему есть много прекрасных источников информации, например «Криминалистический анализ файловых систем»18 (File System Forensic Analysis) Брайана Кэрриэ: https://www.amazon.com/System-Forensic-Analysis-Brian-Carrier/dp/0321268172.
Что делать после того, как вы извлекли метафайл $MFT? Можно либо просмотреть его напрямую, либо сначала разобрать его, а затем проанализировать извлеченные данные.
Я буду ссылаться на Эрика Циммермана — обладателя награды «Компьютерный криминалист года» в 2019 г. и инструктора SANS — и его прославленный набор бесплатных инструментов для цифрового криминалистического анализа. Инструменты доступны по адресу https://ericzimmerman.github.io/#!index.md.
Если вы предпочитаете просматривать $MFT напрямую, вам подойдет вариант MFTExplorer. К сожалению, подобные просмотровые средства не очень быстро работают, поэтому я бы рекомендовал сначала разобрать метафайл. Для этого существует отдельный инструмент — MFTECmd. Используя его, вы можете преобразовать данные из $MFT в легко читаемый файл с полями, разделенными запятыми (Comma-Separated Values, CSV), который можно анализировать с помощью любого из ваших любимых инструментов, таких как Microsoft Excel.
Еще один инструмент, представленный в пакете Эрика Циммермана, — Timeline Explorer. Вот как проанализированный файл $MFT может выглядеть в Timeline Explorer.
Рис. 7.9. Проанализированный $MFT, открытый в Timeline Explorer
Timeline Explorer позволяет выбрать столбцы, на которых вы хотите сосредоточиться. Он также имеет удобные возможности фильтрации, чтобы вы могли легко отсеивать лишнее.
В операционной системе Windows существует множество источников артефактов, полезных для специалистов по реагированию на инциденты. Начнем с тех, которые помогают собирать следы выполнения, и для начала обсудим файлы трассировки.
Файлы трассировки
Файлы трассировки находятся в папке C: WindowPrefetch и используются для повышения производительности системы за счет предварительной загрузки кода часто используемых приложений.
Эти файлы имеют расширение. pf и содержат временны́е метки выполнения программы и количество запусков, а также список папок и файлов, с которыми взаимодействовал исполняемый файл.
Файлы трассировки можно проанализировать с помощью PECmd.
Рис. 7.10. Часть вывода PECmd
Разумеется, файлы трассировки — это не единственный источник следов запуска программ, другие мы обсудим в разделах «Реестр Windows» и «Журналы событий Windows».
А сейчас давайте рассмотрим артефакты доступа к файлам — LNK-файлы и списки переходов.
LNK-файлы
Файлы LNK (или «ярлыки») автоматически создаются операционной системой Windows, когда пользователь (или злоумышленник) открывает локальный или удаленный файл. Эти файлы можно найти в следующих местах:
C: %USERPROFILE%AppDataRoamingMicrosoftWindowsRecent
C: %USERPROFILE%AppDataRoamingMicrosoftOfficeRecent
Среди прочих данных такие файлы содержат временные метки как самого файла LNK, так и файла, на который он указывает, то есть того файла, который был открыт (и, возможно, уже удален).
Существует и инструмент для разбора таких файлов — LECmd.
Рис. 7.11. Часть вывода LECmd
На скриншоте видны доказательства того, что злоумышленники делали дамп LSASS, применив очень распространенный метод доступа к учетным данным.
Давайте рассмотрим другой аналогичный источник цифровых криминалистических артефактов, относящийся к файловой системе, — списки переходов.
Списки переходов
Списки переходов — это функция панели задач Windows, которая позволяет пользователям просматривать список недавно использованных элементов. Эту функцию также могут использовать специалисты по цифровой криминалистике и реагированию на инциденты для изучения списка файлов, к которым недавно обращались.
Такие файлы можно найти в папке C: %USERPROFILE%AppDataRoamingMicrosoftWindowsRecentAutomaticDestinations.
Для просмотра содержимого таких файлов существует инструмент с графическим интерфейсом JumpList Explorer.
Как видно на рисунке 7.12, списки переходов содержат информацию не только о файлах, но и, например, о хостах, к которым осуществляется доступ через RDP. Это чрезвычайно полезно при отслеживании горизонтального перемещения по сети.
Рис. 7.12. Просмотр списков переходов с помощью JumpList Explorer
Обратимся к одному из инструментов расследования кражи данных — к монитору использования системных ресурсов (System Resource Usage Monitor, SRUM).
Монитор использования системных ресурсов
Эта функция Windows используется для мониторинга производительности системы и помогает специалисту по реагированию на инциденты получать информацию о том, сколько данных отправлено/получено каждым приложением в час, что имеет решающее значение при расследовании кражи данных.
База данных с данными SRUM находится в папке C: WindowsSystem32SRU.
Для корректного анализа данных вам также может потребоваться файл с разделом реестра SOFTWARE, расположенный в папке C: WindowsSystem32config.
Оба этих файла можно обработать с помощью SrumECmd. Полученные файлы можно просмотреть с помощью Timeline Explorer (рис. 7.13).
Рис. 7.13. Просмотр проанализированных данных SRUM с помощью Timeline Explorer
Что еще используют злоумышленники для кражи данных и копирования инструментов? Конечно, веб-браузеры!
Веб-браузеры
Веб-браузеры широко применяются как обычными пользователями, которые могут оказаться жертвами целевых фишинговых атак, так и злоумышленниками, которые обычно используют их для загрузки дополнительных инструментов и кражи данных.
Давайте сосредоточимся на трех основных браузерах — Microsoft Edge, Google Chrome и Mozilla Firefox.
Основной источник улик, связанных с браузером, — история просмотров. Ее анализ может выявить места, откуда взломщики загружали инструменты или, например, где они размещали собранные данные. Обычно эти данные хранятся в базах данных SQLite, которые можно найти здесь:
Microsoft Edge: C: Users%USERNAME%AppDataLocalMicrosoftEdgeUser DataDefaultHistory
Google Chrome: C: Users%USERNAME%AppDataLocalGoogleChromeUser DataDefaultHistory
Mozilla Firefox: C: Users%USERPNAME%AppDataRoamingMozillaFirefoxProfiles<random text>.defaultplaces.sqlite
Базы данных SQLite можно анализировать либо вручную, используя, например, DB Browser для SQLite (https://sqlitebrowser.org/dl/), либо с помощью специализированных инструментов криминалистики для браузеров, например BrowsingHistoryView (https://www.nirsoft.net/utils/browsing_history_view.html).
Рис. 7.14. Анализ истории веб-поиска с помощью BrowsingHistoryView
Полезными криминалистическими артефактами также являются файлы «куки» и кэш.
Файлы «куки» позволяют веб-браузерам отслеживать и сохранять информацию о сеансе каждого пользователя, в том числе и о посещенных веб-сайтах. Эта информация также хранится в базах данных SQLite:
Microsoft Edge: C: Users%USERNAME%AppDataLocalMicrosoftEdgeUser DataDefaultCookies
Google Chrome: C: Users%USERNAME%AppDataLocalGoogleChromeUser DataDefaultCookies
Mozilla Firefox: C: Users%USERNAME%AppDataRoamingMozillaFirefoxProfiles<randomtext>.defaultcookies.sqlite
Еще один артефакт, связанный с браузером, — его кэш, то есть компоненты веб-страниц, сохраненные (или кэшированные) локально, чтобы при следующем посещении страницы загружались быстрее.
Вот где находятся файлы кэша для разных браузеров:
Microsoft Edge: C: Users%USERNAME%AppDataLocalMicrosoftEdgeUser DataDefaultCache
Google Chrome: C: Users%USERNAME%AppDataLocalGoogleChromeUser DataDefaultCache
Mozilla Firefox: C: Users%USERNAME%AppDataRoamingMozillaFirefoxProfiles<randomtext>.defaultCache
Существует несколько инструментов, способных интерпретировать данные, хранящиеся в файлах кэша. Некоторые из них — ChromeCacheView (https://www.nirsoft.net/utils/chrome_cache_view.html) и MozillaCacheView (https://www.nirsoft.net/utils/mozilla_cache_viewer.html), но есть и другие.
Еще один источник цифровых улик — реестр Windows.
Реестр Windows
Реестр Windows представляет собой иерархическую базу данных, в которой хранятся различные параметры конфигурации, а также важная информация о запуске программ и действиях пользователей.
Вот где расположены файлы реестра:
Файлы SAM, SYSTEM и SOFTWARE находятся в папке C: WindowsSystem32config.
Файлы NTUSER.DAT и USRCLASS.DAT индивидуальны для каждого пользователя, NTUSER.DAT находится в папке C: Users%USERNAME%, а USRCLASS.DAT — в папке C: Users%USERNAME%AppDataLocalMicrosoftWindows.
Файл Amcache.hve находится в папке C: WindowsAppCompatPrograms.
Файл Syscache.hve хранится в папке C: System Volume Information. Он имеется только в Windows 7 и Windows Server 2008 R2, но может быть очень полезен, поскольку содержит хеши SHA1 для двоичных файлов, которые были запущены.
Теперь давайте рассмотрим