Читлист по анализу вредоносных документов

Читлист по анализу вредоносных документов

WHacker

Привет, мир! В этой небольшой шпаргалке хочу описать способ ручной проверки документов на наличие вредоносов. Чаще всего оружием тёмной стороны становятся документы MS Office ( doc, rtf, xls, ppt, pptx, etc. ) и PDF

Общий подход к анализу документов

  1. Проверить документ на опасные теги и скрипты
  2. Найти встроенный код, такой как shellcode, VBA-макрос, Javascript, Powershell и другие
  3. Извлечь подозрительный код или объект из файла
  4. Если возможно, деобфуцировать извлечённый код (хотя с очень большой долей вероятности обфуцированный код является вредоностым)

Инструменты для анализа MS Office файлов

oletools - многофункциональный набор инструментов на Python для анализа Microsoft OLE2 файлов, таких как документы Microsoft Office (MS Word, Excel, Powerpoint, etc.)

Установка на Linux:

sudo -H pip install -U oletools


Установка на Windows:

pip install -U oletools


инструменты в пакете:

У oletools есть свой довольно неплохой читлист, так что разобраться не составит труда.

pcodedmp - дизассемблер Пи-кода (по сути шелл кода) из документов. Для запуска требуется oletools.


Инструменты для анализа PDF файлов

PDF Stream Dumper - утилита с графическим интерфейсом под Windows для анализа PDF.

pdf-parser - позволяет извлекать отдельные элементы PDF-файла, такие как заголовки, ссылки и прочее.

pdfid - перечисляет все объекты PDF-файла.

peepdf - довольно мощный инструмент для анализа. Включает в себя поиск shellcode, Javascript и много чего ещё. Включён по умолчанию в Kali Linux.

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


На что стоит обратить внимание при анализе PDF

В первую очередь на названия объектов, присутствующих в PDF:

  • /OpenAction и /AA могут автоматически выполнять скрипты
  • /JavaScript и /JS соответственно запускают js
  • /GoTo изменяет видимую страницу файла, может автоматически открывать перебрасывать на другие PDF файлы
  • /Launch запускает программу или открывает документ
  • /SubmitForm и /GoToR может отправлять данные по URL
  • /RichMedia может использоваться для встраивания flash
  • /ObjStm может скрывать объекты

В вредоносных PDF редко можно встретить чистый необфуцированный код. Самый простые виды обфускации - HEX-кодирование, такое как /J#61vaScript вместо /Javascript и перенос строк:

/Ja\[/SIZE][/SIZE][/SIZE][/SIZE]
[SIZE=6][SIZE=4][SIZE=6][SIZE=4] vascr\
 ipt



Тестируем

Под микроскопом у меня документ с сюрпризом в виде CVE-2017-11882

Проверим на VBA скрипты:

olevba exploit.doc


Нам сразу выкидавыет тонны строк VBA скрипта, а в конце ещё и показывают, что он делает. 

Следующим подопытным выступает PDF файл.

Используем pdfid для просмотра всех объектов в файле 

Как видим, здесь есть /ObjStm объкты. Что бы убедиться, что они не делают ничего вредоносного, извлечём их из файла и рассмотрим отдельно с помощью утилиты pdf-parser. 

В моём случае нет ничего страшного.

Надеюсь, этот читлист поможет вам, удачи! Источник