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

Как теснее упоминалось в прошлом блогпосте про 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.



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

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