Анализ подозрительных PDF-документов

PDF

До­кумент PDF — это набор объ­ектов, который опи­сыва­ет спо­соб отоб­ражения стра­ниц внут­ри фай­ла. В сегодняшней статье я покажу, как проверить PDF на вирусы. Мы рассмотрим все шаги анализа подозрительных PDF-документов.

Еще по теме: Как проверить скаченный файл на вирусы онлайн

Что­бы побудить поль­зовате­ля ска­чать или открыть документ PDF, такой файл чаще все­го рас­сыла­ют в элек­трон­ных пись­мах. В момент откры­тия документ PDF обыч­но запус­кает JavaScript в фоновом режиме. Этот скрипт может вос­поль­зовать­ся уяз­вимостью в при­ложе­нии Adobe PDF Reader или незамет­но сох­ранить встро­енный исполня­емый файл.

Анализ вредоносных PDF-документов

Файл PDF сос­тоит из четырех ком­понен­тов. Это заголо­вок, основная часть (тело), ссыл­ки и трей­лер (кон­цевая мет­ка).

  1. За­голо­вок содер­жит информа­цию о вер­сии докумен­та и дру­гую слу­жеб­ную информа­цию.
  2. Те­ло PDF содер­жит раз­личные объ­екты (объ­екты сос­тоят из потоков, которые исполь­зуют­ся для хра­нения дан­ных).
  3. Таб­лица перек­рес­тных ссы­лок ука­зыва­ет на каж­дый объ­ект.
  4. Трей­лер ука­зыва­ет на таб­лицу перек­рес­тных ссы­лок.

Рас­смот­рим в качес­тве при­мера файл Report.pdf.

Инс­тру­мен­ты:

Сканирование документа PDF с помощью PDFiD

PDFiD — ком­понент прог­рам­мно­го пакета Didier Stevens Suite. Он ска­ниру­ет документ PDF, исполь­зуя спи­сок строк для обна­руже­ния эле­мен­тов JavaScript, встро­енных фай­лов, дей­ствий при откры­тии докумен­тов и под­сче­та чис­ла кон­крет­ных строк внут­ри PDF.

Сканирование документа PDF с помощью PDFiD

Как вид­но из резуль­татов ска­ниро­вания, PDFiD выявил в фай­ле Report.pdf нес­коль­ко объ­ектов, потоков, эле­мен­тов JS, JavaScript и OpenAction. Наличие таких эле­мен­тов озна­чает, что документ PDF содер­жит скрип­ты JavaScript или Flash.

Эле­мент /Embedded file ука­зыва­ет на при­сутс­твие внут­ри PDF фай­лов дру­гих фор­матов. Эле­мен­ты /OpenAction, AA, /Acroform под­ска­зыва­ют нам, что при откры­тии или прос­мотре докумен­та PDF выпол­няет­ся какое‑то авто­мати­чес­кое дей­ствие.

По­токи — это дан­ные внут­ри объ­екта.

Просмотр содержимого объектов PDF

Итак, мы выяс­нили, что внут­ри фай­ла PDF содер­жится JavaScript. Это будет отправ­ной точ­кой ана­лиза. Для поис­ка кос­венно­го объ­екта JavaScript запус­тим инс­тру­мент pdf-parser.py.

Просмотр содержимого объектов PDF

Сог­ласно резуль­тату ска­ниро­вания, JavaScript запус­кает файл virus при каж­дом откры­тии PDF, поэто­му наш сле­дующий шаг — извле­чение это­го фай­ла.

Извлечение встроенного файла с помощью peepdf

Peepdf — инс­тру­мент на язы­ке Python, содер­жит все необ­ходимые ком­понен­ты для проверки и ана­лиза PDF. Что­бы вос­поль­зовать­ся его воз­можнос­тями, введите коман­ду peepdf --i file_name.pdf. Ключ -i вклю­чает инте­рак­тивный режим работы скрип­та.

Извлечение встроенного файла с помощью peepdf

Что­бы узнать боль­ше, см. справ­ку (опция help).

 

 

Анализ PDF на вирусы

Анализ PDF файла

Ре­зуль­тат ана­лиза с помощью peepdf ука­зыва­ет на то, что в объ­екте 14 име­ется встро­енный файл. При более близ­ком рас­смот­рении это­го объ­екта мы уви­дим, что он ука­зыва­ет на объ­ект 15; в свою оче­редь, объ­ект 15 ука­зыва­ет на объ­ект 16. Наконец, мы обна­ружи­ваем приз­наки наличия фай­ла virus внут­ри объ­екта 17.

Судя по содер­жимому PDF, в нем есть толь­ко один поток, который так­же ука­зыва­ет на объ­ект 17. Таким обра­зом, объ­ект 17 пред­став­ляет собой поток со встро­енным фай­лом.

Определить вирус PDF

Внут­ри потока 17 содер­жится сиг­натура фай­ла, которая начина­ется с MZ, и шес­тнад­цатерич­ное (hex) зна­чение, начина­ющееся с 4d 5a. Это приз­наки, ука­зыва­ющие на исполня­емый файл PE.

Извлечение встроенного файла с помощью peepdf

Да­лее мы сох­раним поток как исполня­емый файл virus.exe.

Анализ поведения

Те­перь запус­тим этот файл в вир­туал­ке под Windows 7 32-bit.

Process Explorer отоб­ража­ет про­цес­сы, соз­данные фай­лом virus.exe
Process Explorer отоб­ража­ет про­цес­сы, соз­данные фай­лом virus.exe

Как вид­но в окне Process Explorer, virus.exe соз­дал два подоз­ритель­ных про­цес­са (zedeogm.exe, cmd.exe), которые были оста­нов­лены пос­ле запус­ка.

Ком­понент Process Monitor зарегис­три­ровал изме­нения в сис­теме, вне­сен­ные virus.exe

Сог­ласно дан­ным Process Monitor, в рам­ках запущен­ных про­цес­сов был сох­ранен файл zedeogm.exe. Затем он изме­нил пра­вило бран­дма­уэра Windows. На сле­дующем эта­пе был запущен файл WinMail.exe. Пос­ле это­го прог­рамма запус­тила cmd.exe для выпол­нения фай­ла tmpd849fc4d.bat и оста­нови­ла про­цесс.

Та­ким обра­зом, мы соб­рали дос­таточ­но доказа­тель­ств того, что этот файл PDF вре­донос­ный. Далее мож­но при­нять допол­нитель­ные про­филак­тичес­кие меры — нап­ример, выпол­нить дво­ичную отладку и иссле­дова­ние памяти извле­чен­ных IOC в целях поис­ка дру­гих угроз.

Заключение

В этой статье мы рас­смот­рели простые способы анализа подозрительных PDF-файлов. Вредоносные PDF-документы, как правило, распространяются с помощью фишинг-атак. Чтобы не стать жертвой фишинг-атаки следуйте следующим правилам:

  • Ни­ког­да не доверяйте отпра­вите­лю элек­трон­ного пись­ма. Всег­да про­веряйте основные иден­тифика­цион­ные дан­ные, преж­де чем отве­тить на пись­мо.
  • Не перехо­дите по ссыл­кам и не откры­вайте вло­жения, если отпра­витель пись­ма не тот, кем он пред­ста­вил­ся.
  • Хакеры час­то исполь­зуют про­изволь­ные име­на доменов. По этой при­чине тща­тель­но про­веряйте адрес сай­та на наличие «опе­чаток» — это может быть ресурс, зарегис­три­рован­ный спе­циаль­но, что­бы ввес­ти вас в заб­лужде­ние.

Пе­реп­роверяйте про­исхожде­ние сай­та, преж­де чем ввес­ти свои пер­сональ­ные дан­ные — имя, адрес, рек­визиты дос­тупа, финан­совые све­дения и про­чие.
Ес­ли вы поняли, что ввели рек­визиты дос­тупа на подоз­ритель­ном сай­те, немед­ленно сме­ните пароль.

Еще по теме: Как скрывают вирусы в документах Office

Дима (Kozhuh)

Эксперт в кибербезопасности. Работал в ведущих компаниях занимающихся аналитикой компьютерных угроз. Анонсы новых статей в Телеграме.

Добавить комментарий