CVE-2018-5002 — Анализ второй волны 0-day уязвимости в Flash в 2018 году

08 Июн. 2018 г.kate
Подробнее о 360 Total Security

История

1 июня 2018 года команда Advanced Threat Response от 360 Core Security обнаружила атаку с использованием новой уязвимости Flash 0-day в глобальном масштабе. Хакеры тщательно создали документ Office, который удаленно загрузил уязвимость Flash. Когда документ был открыт, весь код эксплойта и вредоносная нагрузка были переданы через удаленные серверы.Эта атака в основном направлена на Ближний Восток. Эта уязвимость в настоящее время влияет на версию Adobe Flash Player 29.0.0.171 и ниже. Это вторая волна Flash 0-day уязвимости, обнаруженная в 2018 году.

Анализ уязвимости

Этот образец имеет очень привлекательное имя файла: *** _ salary.xlsx (*** salary), содержание которого также соответствует названию. Файл находится на арабском языке и показывает зарплаты в течение различных периодов времени.
Содержание *** _ salary.xlsx (MD5: ****** 517277fb0dbb4bbf724245e663) завершено, но здесь мы только показали его часть:

Хакер внедряет удаленную ссылку на файл Flash через элемент управления ActiveX и данные. Связанный код эксплойта контролируется и передается удаленным сервером.


Процесс атаки

После запуска xlsx вредоносный файл SWF (Shock Wave File) (MD5: ****** 66491a5c5cd7423849f32b58f5) запускается с удаленного сервера C & C (C & C: people.doha ****. Com). SWF-файл снова запросит сервер для загрузки зашифрованных данных и ключей дешифрования. Расшифрованный SWF (md5: ****** e78116bebfa1780736d343c9eb) является операцией Flash 0day. После запуска уязвимости он запрашивает удаленный сервер для загрузки вредоносной оболочки и ее выполнения. Во время анализа в реальном времени мы обнаружили, что злоумышленник закрыл троянскую полезную нагрузку, которая, как ожидается, будет передана на заключительном этапе.


На следующем рисунке показаны различные этапы атаки:


Анализ уязвимости

Код уязвимости Flash очень запутан. После отладки и анализа мы обнаружили код 0-day уязвимости в атаке.


После восстановления основного кода происходит следующее:


Flash будет использовать интерпретатор для обработки Static-init methods. Интерпретатор неправильно обрабатывает исключение при обработке try catch, и это приведет к тому,что команда li8 (123456) захвачена блоком catch, когда она аномально запущена.

Поскольку Flash предполагает, что невозможно выполнить блок catch при обработке try catch, он не проверяет байт-код в блоке catch. Злоумышленник использует команду getlocal, setlocal в блоке catch для чтения и записи произвольных адресов в стеке.

В конце концов злоумышленник переключает уязвимость на проблему обфускации типа, обменивая два указателя на объект в стеке и завершает атаку.

Чтобы дополнительно отладить код атаки, мы видим, что localcount в используемом байтовом коде является 2, а в блоке catch getocal — setlocal обрабатывает данные в точках 448 и 498.


Давайте понаблюдаем данные стека,обработаны setlocal. Значение ecx является указателем объекта class5, а 068fc1a0 является указателем class7.


После обмена указателями на два объекта злоумышленник проверяет, успешно ли эксплуатируется, сравнивая значения элементов объекта.


Корреляция

C & C для атаки — people.doha ***. Com, а соответствующий IP-адрес — **. 145.128.57 (Нидерланды). Информация WHOIS от этого доменного имени показывает, что время регистрации домена составляет 2018-02-18, что указывает на то, что злоумышленник начал подготовку к атаке в феврале этого года.

При прямом доступе к people.doha ***. Com посещения будут перенаправлены на https: //people.***.com/sushasolomon/, домашнюю страницу для ознакомления с персоналом Qatar Airways.


Люди. ***. Com — сайт поиска работы на Ближнем Востоке. В C & C, используемом атакующими, только более есть один doha (Doha). Было очевидно, что существует намерение замаскировать доменное имя для фишинга. Поэтому мы смело подозревали, что целевой регион — Доха, Катар.

Вывод

Согласно анализу мы видим, что атака использовала 0-day уязвимость независимо от ее стоимости. Атакующий разработал сложные планы в облаке и провел как минимум три месяца на подготовку к атаке. Детальное содержимое фишинговой атаки также было адаптировано к цели атаки. Все подсказки показывают, что это типичная атака APT. Мы предлагаем всем соответствующим организациям и пользователям своевременно обновлять свои Flash до последних версий. Мы также настоятельно рекомендуем использовать 360 Total Security для защиты ваших устройств от возможных угроз.

Скачать 360 Total Security: https://www.360totalsecurity.com

Подробнее о 360 Total Security