Неудивительно, что спам-кампании являются основным средством распространения вредоносного ПО. Ранее мы писали о подобных кампаниях, использующих вредоносное ПО MS Office, например, вредоносные макросы. CVE-2017-0199, CVE-2017-8759 и DDEВ последнее время мы начали наблюдать различные спам-кампании, использующие последнюю уязвимость MS Office. CVE-2017-11882.
Давайте рассмотрим подробный анализ одной такой спам-кампании, использующей уязвимостьCVE-2017-11882«в дикой природе».
Цепь атаки

Анализ уязвимости (CVE-2017-11882)
Уязвимость удаленного выполнения кода (CVE-2017-11882) срабатывает в Редактор формул Microsoft Office Компонент (EQNEDT32.EXE). Злоумышленник может успешно эксплуатировать уязвимость переполнения буфера стека в компоненте редактора формул MS Office и выполнить произвольный код. Основная причина этой уязвимости — копирование неограниченной строки имени шрифта, определённого в структуре записи шрифта объекта Equation EditorOLE.
Для эксплуатации уязвимости злоумышленники используют специально созданные RTF-файлы с расширением doc. Этот RTF-файл содержит встроенный класс объекта уравнения, как показано на рис. 2.

Файл OLE, встроенный в созданный RTF, имеет имя потока «Equation Native» со следующим заголовком:
| Размер | Описание |
| СЛОВО | Размер заголовка (EQNOLEFILEHDR) == 28 (0x1C) |
| DWORD | Версия |
| СЛОВО | Формат буфера обмена |
| DWORD | Размер (заголовок MTEF + данные MTEF) |
| DWORD | Зарезервировано1 |
| DWORD | Зарезервировано2 |
| DWORD | Зарезервировано3 |
| DWORD | Зарезервировано4 |
MTEF — это формат уравнений математического типа, используемый редактором уравнений.
Заголовок MTEF имеет следующую структуру.
| Размер | Описание |
| BYTE | версия MTEF |
| BYTE | Генерирующая платформа |
| BYTE | Генерация продукта |
| СЛОВО | Версия продукта и подверсия |
Данные MTEF состоят из заголовка MTEF, за которым следует несколько записей. Эти записи могут быть разных типов и размеров.
Запись FONT, определенная в объекте данных MTEF, получает созданное имя FONT и запускает уязвимость.
Ниже приведена структура данных MTEF (запись FONT).
| Размер | Описание |
| BYTE | Тег FONT |
| BYTE | Номер шрифта |
| BYTE | Стиль шрифта |
| STRING | Название шрифта |
| BYTE | Нулевой терминатор |
Если FONT NAME больше 32 байт, это указывает на попытки эксплойта.
Анализ эксплойтов
В этой кампании первоначальный вектор атаки использует спам-письма со специально созданными вложениями в формате RTF с расширением .doc.
На рис. 3 показано спам-письмо, использованное в этой кампании.

MS Word запускает вредоносное вложение и пытается эксплуатировать уязвимость. После успешной эксплуатации Microsoft Equation Editor запускает mshta процесса.

Давайте углубимся в процесс сборки и узнаем, как он работает.
На рисунке ниже представлен снимок, демонстрирующий сценарий переполнения буфера стека, когда 48 байт данных копируются в локальный буфер, что приводит к переполнению буфера, перезаписывает базовый указатель и возвращает адрес.

На рис. 6 показан адрес (0x00430C12), который перезаписывается в обратный адрес.

Переписанный адрес взят из EQUATION32.EXE, и эта инструкция указывает на «WinExec” API, как указано на рис. 7.

После успешной эксплуатации, mshta процесс выполняется WinExec который загружает и запускает вредоносный HTA Файл HTA также служит загрузчиком для вредоносное ПО.
В Quick Heal Security Labs мы наблюдали различные варианты этой уязвимости, использующие mshta.exe, cmd.exe и powershell.exe, запускаемые WinExec для выполнения дальнейших действий.
Атаки без файлов
Ниже представлен сценарий, в котором эксплойт содержит код, непосредственно запускающий вредоносное ПО, размещённое на публичном сервере WebDAV. Полезная нагрузка представляет собой типичный сетевой UNC-путь.
На рис. 8 показаны различные вредоносные программы, размещенные на общедоступном сервере WebDAV. 185.45.195.7.


Техника запутывания
Чтобы обойти обнаружение на основе сигнатур, злоумышленники в этой кампании использовали различные методы обфускации.
Один из использованных методов запутывания показан ниже (рис. 10).

Управляющее слово «\mmath» (математическая зона) в формате RTF используется для обфускации в RTF-файле, встроенном в OLE. Из-за использования управляющего слова «\mmath» строка cmd.exe разделяется на «c» и «md.exe», что может легко обойти обнаружение на основе сигнатуры, где шаблон сигнатуры — cmd.exe.
Заключение
Для защиты от подобных эксплойтов Microsoft уже внедрила в свой арсенал такие функции, как DEP и ASLR, но злоумышленник выбрал в качестве цели файл eqnedt32.exe, в котором обе эти функции были отключены. Поэтому проведение подобных атак с использованием доступных POC-эксплойтов становится для злоумышленников удобным. Начиная с Microsoft Office 2007 с пакетом обновления 3 (SPXNUMX), все версии подвержены этой уязвимости. Microsoft выпустила исправление для этой уязвимости, поэтому мы рекомендуем нашим пользователям установить последние пакеты обновлений Microsoft и регулярно обновлять антивирус.
Меры предосторожности
- Чтобы избежать подобных атак, мы рекомендуем отключать Equation Editor 3.0, если он не используется. Для этого перейдите по ссылке ниже:
https://support.microsoft.com/en-in/help/4055535/how-to-disable-equation-editor-3-0 - В предыдущей записи нашего блога мы также упомянули некоторые фишинговые приемы для выявления фишинговых писем.
https://blogs.quickheal.com/quick-heal-thwarts-attempts-java-jrat-phishing-campaign-targeting-international-embassy-india/
Индикаторы компрометации:
1A74FD8314F303E96018002A9F73F1F1
F603D25DDF21A8B9C2FAE7C9DC118BE2
E64C7C14B4632E995C7922A81ABA5E15
hxxp://112.213.118[.]108:11882/
hxxp://104.254.99[.]77/x.txt
176.107.178.12
185.175.208.10
Эксперты по предмету
Анируддха Долас, Прашант Кадам | Лаборатории быстрого восстановления безопасности



