Расследование атак с использованием программ-вымогателей.


Часть 1

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

Центр мониторинга компании «АйТи Новация» часто занимается расследованием атак, связанных с «шифрованием» данных и последующим требованием выкупа. Мы накопили достаточно опыта и хотим поделиться им с нашими читателями.
Расследуя атаки с использованием программ-вымогателей, возможны два сценария:
- Все уже зашифровано, и нам необходимо реконструировать произошедшие события;
-  В сети были замечены признаки компрометации, и нам необходимо как можно быстрее локализовать и устранить угрозу.

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

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

В нашем цикле статей мы будем рассматривать человекоуправляемые атаки с использованием «Шифровальщиков», которые нацелены на системы под управлением ОС Windows. Это достаточно важное примечание, так как ОС *nix имеет свои, характерные только для нее форензик-артефакты.

Принципы форензики, порядок сбора материалов

Применение компьютерной форензики является необходимым процессом в рамках DFIR, который помогает построить наиболее полную картину действий злоумышленника на атакованном устройстве в ходе проведения этапа анализа процесса реагирования на компьютерный инцидент.

При проведении мероприятий цифровой криминалистики, аналитик должен придерживаться следующих правил:
1.    Не работать с оригинальным источником данных;
2.    Делать одну или несколько копий оригинального источника;
3.    Сверять копию с оригиналом на основе хеширования;
4.    Организовать защиту оригинального источника;
5.    Использовать аппаратную или программную блокировку записи при снятии образа с оригинального источника;
6.    Документировать проводимые мероприятия.

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

Методы проведения анализа доказательств

Жизненное правило компьютерного криминалистического анализа гласит, что, если устройство включено, оставьте его включенным, а если оно выключено, оставьте его выключенным. Это правило позволяет разделить компьютерную криминалистику на два подхода:
  1. Post-mortem (лат. «после смерти») – проводится с устройством, которое было отключено от источника питания;
  2. Live-анализ – проводится на «живой» разблокированной системе.

Для Post-mortem анализа характерны следующие условия:
· Анализируемая система отключена;
· Есть возможность исследования HDD/SSD;
· Нет возможности снятия дампа оперативной памяти.

Однако стоит учитывать, что при таком подходе могут возникнуть некоторые сложности:
·Снятие дампа диска может быть затруднено из-за его объема. Примером служит огромный RAID массив;
·Если используется шифрование жесткого диска, то анализ может быть невозможен.

В случае снятия образа диска выключенной машины, возможно проведение данной процедуры по двум сценариям:
  1. Извлечение жёсткого диска устройства и его подключение к рабочей станции или ноутбуку аналитика, через аппаратный блокиратор;
  2. Загрузка в Live-режиме на атакованном устройстве с целью снятия образа диска без извлечения его из данного устройства.
Загрузка в Live-режиме, как правило, осуществляется с помощью специализированных дистрибутивов, которые содержат ряд специализированных программ, среди которых программный блокиратор записи, а также инструменты для работы с дисками и артефактами. К числу таких дистрибутивов, можно отнести:
· Tsurugi (https://tsurugi-linux.org/downloads.php);
· Parrot OS (https://parrotlinux.org/download/);
· CAINE (https://www.caine-live.net/index.html)
· Kali-Linux (https://www.kali.org/get-kali/#kali-live).
К слову, последний является любимым дистрибутивом автора и ни разу не подвел.

Для Live-анализа характерны следующие условия:
· Система запущена и разблокирована;
· Имеется возможность подключения внешнего устройства (usb накопитель с утилитами) или доступа к файловой шаре;
· Нет препятствия для запуска утилит, используемых в целях анализа данных из RAM и HDD/SSD.

Но и в этом случае есть свои риски:
· Рабочая система может продолжать взаимодействовать с С2;
· Действия аналитика могут привести к потере данных при анализе.

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

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

Первая категория представляет собой инструменты по сбору артефактов. К ним относятся:
· AccessData FTK Imager (https://accessdata-ftk-imager.software.informer.com/download/)
· DumpIt (https://www.toolwar.com/2014/01/dumpit-memory-dump-tools.html)
· CyLR (https://github.com/orlikoski/CyLR)
DD – имеется в большинстве Linux – дистрибутивов
Теперь рассмотрим каждую из упомянутых утилит более подробно. Первая в списке — FTK Imager, которая используется для сбора, как отдельных артефактов, так и для создания дампов оперативной памяти и жестких дисков при Live-анализе. Работающая на базе ОС Windows, она обладает удобным графическим интерфейсом.
Рис.1 Интерфейс FTK Imager
Утилита dumpIt — это простой в использовании инструмент для создания образа оперативной памяти. Она сохраняет содержимое ОЗУ в формате «.raw», представляющем собой «сырые» данные, расположенные от начала до конца адресного пространства памяти. Пример работы этой утилиты показан на рисунке:
CyLR (Live Response Collection) - утилита, предназначенная для автоматизированного сбора артефактов с хостов.

Основные особенности:
● Быстрый сбор;
● Сбор ключевых артефактов по умолчанию;
● Возможность указать пользовательские артефакты для сбора;
● Использование шаблонов регулярных выражений для указания пользовательских артефактов;
● Данные можно собирать в ZIP-архив, что позволяет пользователю сжимать файл, устанавливать пароль для архива и имя файла;
● Отсутствие возможности запуска команд, для сбора артефактов;
● Возможность отправки артефактов на SFTP-сервер;
● CyLR использует .NET Core и работает в Windows, Linux и MacOS.

Эффективным инструментом сбора артефактов с большого числа узлов является утилита DD, особенно когда создание полноценного образа диска затруднено из-за его большого объема или использования RAID-массива. DD предназначена для побитового копирования как отдельных файлов, так и блочных устройств. Оригинальная версия DD обычно работает медленно, в то время как ее модификация, ddrescue, осуществляет побитовое копирование быстрее и отображает статус выполнения.

Следующая категория инструментов, необходимых для расследования инцидентов, связанных с атаками программ-вымогателей, — это утилиты для исследования и анализа собранных материалов.

В первую очередь рассмотрим инструменты, предназначенные для работы с дампами жестких дисков. Здесь нам поможет FTK Imager, позволяющий загружать образ диска и извлекать из него необходимые артефакты. Другим активно используемым инструментом является Autopsy (https://www.autopsy.com/download/), работающий под управлением Windows и Linux, имеющий удобный графический интерфейс и богатый функционал.
Рис.2 Autopsy
Помимо вышеупомянутых утилит, при работе с дампами HDD/SSD-носителей можно использовать штатный функционал ОС Linux для монтирования образа. В этом случае применяется утилита mount. Однако при таком подходе существует ряд особенностей. Для монтирования RAW-образа необходимо знать, какие разделы присутствуют в созданном образе. Для этого можно воспользоваться утилитами file или fdisk.

Пример использования утилиты fdisk на тестовом образе harddrive.img: file harddrive.img

Далее ищем по ключевому слову startsector наше смещение.
Рис.3 Пример вывода команды file
fdisk -l harddrive.img

Смещение будет в столбце begin (начало).
Рис.4 Пример вывода команды fdisk
На основании данных, полученных из вывода утилит, установлено, что размер сектора составляет 512 байт, а начало раздела приходится на сектор 2048. Следовательно, смещение вычисляется как 2048 * 512 = 1048576 байт. Теперь, когда мы определили смещение раздела относительно начала образа, можно перейти ко второму этапу – монтированию. Для этого ознакомимся с синтаксисом команды mount:
mount -o <параметры>,offset=<смещение до начала раздела в байтах> <имя файла образа> <точка монтирования>

В конечном итоге наша команда может выглядеть так:
mount -o ro,loop,offset=1048576 disk.img /mnt/temp/
где параметры:
-o- список параметров, разделенных запятыми
ro - read only (монтирование в режиме только для чтения)
loop - для выделения неиспользуемого петлевого устройства
offset - отступ до необходимого раздела

После монтирования переходим в /mnt/temp и производим сбор интересующих нас артефактов.
Следующая категория — это инструменты, применяемые для анализа полученных артефактов. Подробно останавливаться на них мы не будем, так как описание процесса их использования будет представлено в следующей части. Итак, вот сам список:
  1. Volatility (https://github.com/volatilityfoundation/volatility). Отличный инструмент для работы с дампом Оперативной памяти.
  2. ZimmermanTools (https://github.com/EricZimmerman/Get-ZimmermanTools?ysclid=m7lp72cyar873755017). Не заменимый набор инструментов для анализа артефактов ОС Windows.
  3. WinPrefetchView (https://www.nirsoft.net/utils/win_prefetch_view.html). Полезный и удобный инструмент для анализа Prefetch файлов.
  4. NTFS Log Tracker (https://sites.google.com/site/forensicnote/ntfs-log-tracker) удобный инструмент для анализа артефактов файловой системы NTFS.
Мы намеренно не затрагивали тему анализа образцов вредоносного программного обеспечения (ВПО), полученных в ходе расследования инцидентов, поскольку это достаточно обширный вопрос, требующий отдельного рассмотрения. Возможно, эта тема будет раскрыта в следующих публикациях.

В завершение первой статьи цикла, посвященного расследованию атак, связанных с программами-вымогателями, считаем необходимым упомянуть о создании лаборатории для исследования собранных материалов. Для этих целей рекомендуется использовать виртуальные машины на базе операционных систем Windows и Linux, так как некоторые инструменты оптимально работают под Windows, а другие – под Linux.
Исследование провел
  • Сергей Шамаев
    Руководитель отдела мониторинга и оперативного реагирования компании "АйТи Новация"
Вам понравилась статья?