Категория > Новости > Уроки форензики. Исследуем вредоносные документы Microsoft Office - «Новости»
Уроки форензики. Исследуем вредоносные документы Microsoft Office - «Новости»21-12-2021, 00:01. Автор: Игорь |
матрице MITRE ATT&CK, атака, в которой злоумышленники используют документы Microsoft Office, называется Spearphising Attachment. Чтобы рассказать о методах анализа применяемых в таких атаках файлов, я воспользуюсь двумя заданиями с ресурса CyberDefenders. Первое из них — Obfuscated — позволит нам исследовать вредоносный документ в формате DOC. С помощью второго, под названием Emprisa Maldoc, мы разберем, как злоумышленники используют документ RTF для выполнения шелл‑кода. Существуют следующие методы выполнения вредоносного кода в документах Microsoft Office.
Для нашей работы мы будем использовать следующий набор утилит:
infoИсследование мы будем проводить в лаборатории для анализа вредоносов, подробно описанной в статье «Код под надзором. Создаем виртуальную лабораторию для анализа малвари». Все необходимые для анализа вредоносных документов утилиты находятся в каталоге Итак, приступим к изучению файлов с сайта CyberDefenders. Я не буду приводить ответы на вопросы из заданий — повторив все описанные ниже эксперименты, ты сможешь найти их сам. ObfuscatedЗагрузим с сайта архив с заданием. Первым делом посчитаем хеш MD5 содержащегося в архиве файла (в результате получится значение Теперь получим информацию о структуре вредоносного документа. Для этого воспользуемся утилитой oleid.
oleid 49b367ac261a722a7c2bbbc328c32545
Информация об объекте исследованияТулза определила, что это документ Microsoft Office Word и в нем есть VBA-макрос. Его нам предстоит вытащить наружу. Для начала воспользуемся утилитой oledump и посмотрим, в каком потоке OLE содержится VBA-макрос.
oledump 49b367ac261a722a7c2bbbc328c32545
Потоки исследуемого документаМакрос спрятался в восьмом потоке данных. Выгрузим его при помощи инструмента olevba с ключом
olevba -a49b367ac261a722a7c2bbbc328c32545
Результат работы утилиты olevbaВ потоке
olevba -c49b367ac261a722a7c2bbbc328c32545
Участок обфусцированного кода вредоносного VBA-макросаФункция infoДля деобфускации VBA-макроса можно воспользоваться утилитой ViperMonkey, которая эмулирует выполнение сценария, но сегодня проведем ручной анализ. Начнем с функции Участок кода функции AutoOpen На картинке ты видишь выделенный фрагмент кода, содержащий несколько очень интересных функций. Функция Во втором выделенном блоке с использованием объекта
MxOH8pcrlepD3SRfF5ffVTy86Xe41L2qLnqTd5d5R7Iq87mWGES55fswgG84hIRdX74dlb1SiFOkR1Hh
В переменной Продолжение участка кода функции AutoOpen Обфусцированный вредоносный код расположен после обнаруженной нами строки, его размер составляет 16 827 байт. Начало полезной нагрузки Из файла считывается информация начиная с байта Давай разберем алгоритм декодирования и напишем небольшую программу на Python для получения исходного JS-скрипта. Функция декодирования полезной нагрузки Для удобства чтения кода я переименовал переменные. Алгоритм декодирования очень прост. С каждым байтом выполняется операция Перейти обратно к новости |