Шифровка для должников

Как уже упоминалось в прошлом блогпосте про Flame, его объем кода и функциональность настолько обширны, что их полный анализ займёт несколько месяцев. Мы планируем по мере обнаружения публиковать наиболее важные и интересные подробности, связанные с его функционалом.

В данный момент мы получаем множество запросов о том, как проверить компьютеры на наличие заражения Flame. Естественно, самый простой ответ (для нас) — это посоветовать использовать Анитвирус Касперского или Kaspersky Internet Security. Наши продукты успешно детектируют и удаляют все возможные модификации главного модуля и дополнительных компонентов Flame.

Однако для тех, кто желает сам провести тщательную проверку, в конце статьи мы даем необходимые рекомендации и советы.

MSSECMGR.OCX

Основной модуль 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

Эти директории могут содержать следующие файлы:

dstrlog.dat lmcache.dat mscrypt.dat (or wpgfilter.dat) ntcache.dat rccache.dat (or audfilter.dat) ssitable (or audache) secindex.dat wavesup3.drv
(a copy of the main module, mssecmgr.ocx, in the MSAudio directory)

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:

Выполните поиск файла ~DEB93D.tmp. Его присутствие в системе означает, что компьютер заражен или был заражен Flame.

Проверьте ключ реестра HKLM_SYSTEM\CurrentControlSet\Control\Lsa\ Authentication Packages. Если вы найдете в нем mssecmgr.ocx или authpack.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

Запустите поиск по остальным именам файлов, данным выше. Они все уникальны, и их наличие будет означать весьма высокую вероятность зараженности вашего компьютера Flame.



Пинг не поддерживается.

Оставить комментарий