Расследование атак с использованием программ-вымогателей. Часть 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/)
· CyLR (https://github.com/orlikoski/CyLR)
· DD – имеется в большинстве Linux – дистрибутивов
Теперь более подробно познакомимся с каждой из названных утилит. Первая в списке это FTK Imager. Используется для сбора как отдельных артефактов так и для создании дампов оперативной памяти и жестких дисков при Live - анализе. Работает на базе ОС Windows. Имеет удобный графический интерфейс.
Утилита dumpIt является наиболее простым в использовании инструментом для снятия образа оперативной памяти. Данный инструмент сохраняет образ оперативной памяти в формате «.raw», то есть в формате “сырого” представления данных от начала адресного пространства оперативной памяти и до конца. Пример работы данного инструмента представлен на рисунке:
CyLR (Live Response Collection) - утилита, предназначенная для автоматизированного сбора артефактов с хостов.
Основные особенности:
● Быстрый сбор;
● Сбор ключевых артефактов по умолчанию;
● Возможность указать пользовательские артефакты для сбора;
● Использование шаблонов регулярных выражений для указания пользовательских артефактов;
● Данные можно собирать в ZIP-архив, что позволяет пользователю сжимать файл, устанавливать пароль для архива и имя файла;
● отсутствие возможности запуска команд, для сбора артефактов;
● Возможность отправки артефактов на SFTP-сервер;
● CyLR использует .NET Core и работает в Windows, Linux и MacOS.
Очень эффективный инструмент, когда необходимо собрать артефакты с большого количества узлов, а так же в том случае, когда из-за большого объема жесткого диска или в случае с использованием RAID-массива нет возможности создать полноценный образ.
Утилита DD предназначена для побитного копирования файлов и блочных файлов (блочных устройств). Оригинальная версия DD как правило работает медленно, в то время как ее модификация ddrescue осуществляет побитное копирование быстрее и при этом отображает статус-бар.
Следующая категория инструментов, которые нам понадобятся в рамках расследования инцидентов связанных с атаками с использованием программ-вымогателей – это утилиты, используемы для исследования и анализа собранных материалов.
Сначала мы обсудим те инструменты, которые используются для работы с дампами жестких дисков. Тут нам на помощь снова приходит FTK Imager. Утилита позволяет загружать образ диска и оттуда уже извлекать необходимые артефакты. Следующим инструментов, которым мы активно пользуемся является Autopsy (https://www.autopsy.com/download/). Работает под управлением как ОС Windows, так Linux. Имеет удобный графический интерфейс и богатый функционал.
Помимо вышеназванных утилит, при работе с дампами HDD\SSD – носителей можно использовать штатный функционал ОС Linux по монтированию образа. В этом случае используется утилита mount. Однако при использовании такого подхода есть ряд особенностей. Для монтирования RAW образа необходимо понимать какие разделы есть на снятом образе. Для этого можно воспользоваться утилитой file или fdisk.
Пример использования утилиты fdisk на тестовом образе harddrive.img:
file harddrive.img
Далее ищем по ключевому слову startsector наше смещение.
fdisk -l harddrive.img
Смещение будет в столбце begin (начало).
Из вывода утилит видно, что размер сектора составляет 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.