Главная→Блог→Инциденты→31 май 2012→Flame: Bunny, Frog, Munch и BeetleJuice…
Как уже упоминалось в прошлом блогпосте про Flame, его объем кода и функциональность настолько обширны, что их полный анализ займёт несколько месяцев. Мы планируем по мере обнаружения публиковать наиболее важные и интересные подробности, связанные с его функционалом.
В данный момент мы получаем множество запросов о том, как проверить компьютеры на наличие заражения Flame. Естественно, самый простой ответ (для нас) — это посоветовать использовать Анитвирус Касперского или Kaspersky Internet Security. Наши продукты успешно детектируют и удаляют все возможные модификации главного модуля и дополнительных компонентов Flame.
Однако для тех, кто хочет сам провести тщательную проверку, в конце статьи мы даем необходимые рекомендации и советы.
Основной модуль Flame — это DLL-файл под названием mssecmgr.ocx. Мы обнаружили две модификации этого модуля. На большинстве заражённых машин содержалась «большАя» версия — 6 Мбайт, которая содержит в себе и развёртывает дополнительные модули. «Малая» версия весит всего 900 Кбайт и не содержит дополнительных модулей. После установки малый модуль соединяется к одному из C&C-серверов и пытается загрузить оттуда и установить оставшиеся компоненты.
Mssecmgr может по-разному называться на каждой конкретной заражённой машине в зависимости от метода заражения и текущего состояния зловреда (установка, распространение, обновление). Например, wavesup3.drv, ~zff042.ocx, msdclr64.ocx, etc.
Полный анализ модуля mssecmgr будет представлен в одном из последующих блогпостов.
Первичная активация файла запускается одним из способов извне: либо через инструменты WMI, с использованием MOF-файла, если задействован эксплойт к уязвимости MS10-061, либо с использованием BAT-файла:
s1 = new ActiveXObject("Wscript.Shell");
s1.Run("%SYSTEMROOT%\\system32\\rundll32.exe msdclr64.ocx,DDEnumCallback");
(исходный код MOF-файла — svchostevt.mof)
После активации mssecmgr регистрирует себя в реестре Windows:
HKLM_SYSTEM\CurrentControlSet\Control\Lsa
Authentication Packages = mssecmgr.ocx [добавляется к существующим записям]
При следующей загрузке системы модуль автоматически загружается операционной системой.
После обновления реестра Windows mssecmgr разархивирует все дополнительные модули, которые присутствуют в зашифрованном и сжатом ресурсном разделе (ресурс «146») и устанавливает их. Ресурс — это словарь, содержащий параметры конфигурации для mssecmgr и других модулей, сами модули (DLL-файлы) и параметры, которые нужно передать этим модулям, чтобы их корректно загрузить, например ключи расшифровки.
Мы анализируем дополнительные модули; в ближайших блогпостах мы опубликуем дополнительную информацию об их функционале.
После завершения установки mssecmgr загружает доступные модули и запускает несколько потоков выполнения, которые устанавливают канал связи с C&C-серверами и хостом Lua-интерпретатора, и выполняет другие функции в зависимости от конфигурации. Функционал модуля делится на разные «блоки», которые имеют разные пространства имен в конфигурационном ресурсе и разные имена в журнале событий, которые широко используются по всему коду.
Ниже приведено краткое описание доступных модулей. Их имена извлечены из бинарного файла и ресурса 146.
| Beetlejuice | Bluetooth: составляет список устройств, находящихся вблизи зараженной машины. Может выполнять функцию «радиомаяка» — включает возможность обнаружения компьютера в настройках Bluetooth и шифрует с помощью base64 статус вредоносной программы для его отображения в информации об устройстве. |
| Microbe | Записывает аудиосигнал с имеющихся аппаратных источников. Составляет перечень всех устройств мультимедиа, записывает полную информацию о конфигурации устройств, пытается выбрать подходящее устройство для записи звука. |
| Infectmedia | Выбирает один из методов заражения внешних устройств, т.е. USB-носителей. Доступные методы: Autorun_infector, Euphoria. |
| Autorun_infector | Создает файл autorun.inf, содержащий вредоносное ПО, и запускает его с помощью специально сформированной команды open. Этот же метод использовался Stuxnet, прежде чем был задействован LNK-эксплойт. |
| Euphoria | Создает директорию с файлами desktop.ini и target.lnk, взятыми из записей LINK1 и LINK2 ресурса146 (отсутствовали в ресурсном файле). Директория используется как ярлык для запуска Flame. |
| Limbo | Создает на других машинах в сетевом домене бэкдор-аккаунты с именем пользователя HelpAssistant, если имеются необходимые права. |
| Frog | Заражает другие компьютеры, используя предварительно созданные учетные записи пользователей. Единственная учетная запись, указанная в конфигурационном ресурсе, — HelpAssistant. Этот аккаунт создается атакой Limbo. |
| Munch | HTTP-сервер, отвечающий на запросы /view.php и /wpad.dat. |
| Snack | Прослушивает сетевые интерфейсы, получает пакеты NBNS и сохраняет их в лог-файле. Имеет опцию, при включении которой стартует только при старте блока Munch. Собранные данные затем используются для распространения вредоносной программы по сети. |
| Boot_dll_loader | Конфигурационный раздел, содержащий список всех дополнительных модулей, которые должны быть загружены и запущены. |
| Weasel | Создает список папок на зараженном компьютере. |
| Boost | Создает список «интересных» файлов по нескольким маскам имен файлов. |
| Telemetry | Функции ведения журнала. |
| Gator | При появлении доступа в интернет устанавливает соединение с командными серверами, загружает новые модули и выгружает на сервер собранные данные. |
| Security | Выявляет программы, которые могут помешать работе Flame, т.е. антивирусы и сетевые экраны. |
| Bunny Dbquery Driller Headache Gadget | Назначение этих модулей на данный момент неизвестно. |
Дополнительные модули устанавливаются в директорию %windir%\system32\:
mssecmgr.ocx advnetcfg.ocx msglu32.ocx nteps32.ocx soapr32.ocx ccalc32.sys boot32drv.sys
Дополнительные модули, загруженные с командных серверов, устанавливаются в ту же папку.
Модули Flame создают множество файлов данных, содержащих подробные журналы выполнения программы, а также собранную информацию: снимки экрана, списки процессов, списки аппаратных ресурсов и т.д.
Эти файлы сохраняются в директории %windir%\temp под следующими именами:
~DEB93D.tmp ~8C5FF6C.tmp ~DF05AC8.tmp ~DFD85D3.tmp ~DFL*.tmp ~dra*.tmp ~fghz.tmp ~HLV*.tmp ~KWI988.tmp ~KWI989.tmp ~rei524.tmp ~rei525.tmp ~rf288.tmp ~rft374.tmp ~TFL848.tmp ~TFL849.tmp ~mso2a0.tmp ~mso2a1.tmp ~mso2a2.tmp sstab*.dat
В директории %windir%\system32 могут также присутствовать следующие необязательные файлы:
Advpck.dat ntaps.dat Rpcnc.dat
Кроме того, в папке %windir%\ может присутствовать следующий файл:
Ef_trace.log
Flame хранит свои постоянные данные в файлах различных форматов. Все данные шифруются с применением нескольких алгоритмов и ключей. Некоторые файлы представляют собой базы данных, построенные с помощью встроенной библиотеки SQLite3. Эти базы содержат данные, полученные как в результате кражи, так и в результате распространения программы. Мы представим более подробную информацию об этих файлах в будущих публикациях.
Имена директории, используемые дополнительными компонентами Flame, могут слегка различаться в зависимости от типа установки и конфигурационных опций, содержащихся в ресурсе 146:
C:\Program Files\Common Files\Microsoft Shared\MSSecurityMgr C:\Program Files\Common Files\Microsoft Shared\MSAudio C:\Program Files\Common Files\Microsoft Shared\MSAuthCtrl C:\Program Files\Common Files\Microsoft Shared\MSAPackages C:\Program Files\Common Files\Microsoft Shared\MSSndMix
Эти директории могут содержать следующие файлы:
Flame может также создавать или загружать файлы со следующими именами:
svchost1ex.mof Svchostevt.mof frog.bat netcfgi.ocx authpack.ocx ~a29.tmp rdcvlt32.exe to961.tmp authcfg.dat Wpab32.bat ctrllist.dat winrt32.ocx winrt32.dll scsec32.exe grb9m2.bat winconf32.ocx watchxb.sys sdclt32.exe scaud32.exe pcldrvx.ocx mssvc32.ocx mssui.drv modevga.com indsvc32.ocx comspol32.ocx comspol32.dll browse32.ocx
В результате мы можем предложить метод быстрой «ручной» проверки вашей системы на наличие заражения Flame:
C:\Program Files\Common Files\Microsoft Shared\MSSecurityMgr C:\Program Files\Common Files\Microsoft Shared\MSAudio C:\Program Files\Common Files\Microsoft Shared\MSAuthCtrl C:\Program Files\Common Files\Microsoft Shared\MSAPackages C:\Program Files\Common Files\Microsoft Shared\MSSndMix
1 комментариев
|
31 май 2012, 23:21
hash MD5: bdc9e04388bda8527b398a8c34667e 18 |
Также в аналитике
В блоге