Threat Response
Threat Response

Геоинформационные данные под угрозой. Как HeartlessSoul атакует авиационную промышленность

Введение

В апреле 2026 года мы выявили новые детали об активности хакерской группы HeartlessSoul: нам удалось обнаружить актуальные адреса C2-серверов для взаимодействия с основной вредоносной нагрузкой — RAT-троянцем на JavaScript, детально изучить его ранее не описанные функции, а также получить загружаемые им дополнительные модули. Мы непрерывно наблюдаем за деятельностью HeartlessSoul с февраля 2026 года. Это хакерская группировка, активная как минимум с сентября 2025 года. Среди ее целей — российские государственные структуры и коммерческие компании в сфере промышленности и авиационных систем, а также отдельные пользователи. Основным вектором заражения стали фишинговые письма, содержащие архивы с LNK-, XLL- или MSI-файлами. Кроме того, злоумышленники используют вредоносные рекламные кампании (malvertising), которые имитируют сайты, предлагающие программное обеспечение для авиационных систем, откуда жертвы скачивали зараженные установщики. Группа также распространяет вредоносный код при помощи легитимной платформы SourceForge.

Начальное заражение включает выполнение PowerShell‑команд или скриптов, задача которых — скачать с C2‑серверов загрузчик JavaScript. Он, в свою очередь, загружает и выполняет в памяти основной JS‑RAT и его модули, среди которых мы обнаружили инструменты для сбора и эксфильтрации данных, кейлоггеры, средства захвата экрана, обхода UAC и прочие полезные нагрузки.

В ходе анализа мы также выявили пересечения в инфраструктуре атакующих с APT-группой GOFFEE.

Технические детали

Первоначальный вектор заражения

Мы наблюдаем два основных способа заражения: фишинговые письма и вредоносные рекламные кампании.

Фишинг

Атакующие отправляют электронное письмо с вредоносным вложением (архив, содержащий XLL-, MSI- или LNK-файл). Пользователь открывает содержимое архива, в результате чего инициируется загрузка и выполнение JS-скрипта.

Цепочка первоначального заражения с фишинговым письмом

Цепочка первоначального заражения с фишинговым письмом

Некоторые из обнаруженных LNK-файлов эксплуатировали уязвимость ZDI-CAN-25373. Она позволяет скрыть вредоносные команды за легитимным путем ярлыка, если добавить после него пробелы или переносы строк. Проводник отображает только первую часть пути, поэтому пользователь не видит вредоносную команду полностью.

Хэш вредоносного LNK-файла в разделе Threat Lookup на Kaspersky TIP

Хэш вредоносного LNK-файла в разделе Threat Lookup на Kaspersky TIP

Все обнаруженные LNK-файлы содержали в себе обфусцированную PowerShell-команду:

Эта команда загружает с C2 и выполняет в памяти следующий PowerShell-код:

Этот скрипт устанавливает Node.js в скомпрометированную систему, а также скачивает с C2 JavaScript-загрузчик index.js и выполняет его.

Вредоносные рекламные кампании

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

Вредоносный установщик BattleFlight-Installer.exe (MD5: 92bec935129ba62cef868a684604e323) был размещен на поддельном ресурсе:

При запуске он создавал на диске два файла: helper.vbs и run-script.ps1, после чего выполнял первый. VBS-скрипт, в свою очередь, запускал PowerShell-скрипт, главная задача которого — загрузка файла index.js.

Цепочка первоначального заражения с поддельным установщиком BattleFlight-Installer.exe

Цепочка первоначального заражения с поддельным установщиком BattleFlight-Installer.exe

Также мы обнаружили поддельный установщик, размещенный злоумышленниками на популярной платформе SourceForge. Он мимикрировал под GearUP — сервис по улучшению соединения в онлайн-играх.

Вредоносный архив GearUP на SourceForge

Вредоносный архив GearUP на SourceForge

Желающие скачать GearUP пользователи находили поддельный проект на SourceForge и загружали вредоносный архив (MD5: b0a16ffa175f8273d71e2abd5d180593) со следующего адреса:

Внутри архива находится MSI-установщик GearUP-2.54.1-win.msi (MD5: 5573e0837078b432016637298d1ce926). Он выполняет скрипт install.ps1, содержащийся внутри пакета:

Содержимое install.ps1

Содержимое install.ps1

Как и в случае с фишинговыми письмами, этот скрипт устанавливал Node.js на устройство жертвы, а также загружал и запускал JS-загрузчик index.js (MD5: ba1fadbe3b8bc2868700980124e57e92).

Цепочка первоначального заражения с поддельным установщиком GearUP

Цепочка первоначального заражения с поддельным установщиком GearUP

JavaScript-загрузчик

Обфусцированный скрипт index.js, который устанавливается в системе жертвы в результате первоначального заражения, загружает и выполняет основную вредоносную нагрузку (RAT).

В index.js реализовано получение альтернативного адреса C2 с использованием Solana Name Service. Если в системе задана переменная среды SNS_DOMAIN, скрипт пытается получить адрес C2 из записей SNS. В случае неудачи скрипт использует заданный в коде домен C2.

Функция main() в деобфусцированном JS-загрузчике

Функция main() в деобфусцированном JS-загрузчике

Для закрепления в системе загрузчик добавляет себя в папку автозапуска. Для этого он создает новый файл index.vbs в текущей директории ($installPath). Этот файл нужен для запуска index.js, его содержимое представлено ниже:

Затем JS-загрузчик выполняет закодированную PowerShell-команду, которая создает ярлык %APPDATA%\Microsoft\Windows\Start Menu\Programs\Startup\CommonApp.lnk, предназначенный для запуска index.vbs.

Кроме того, загрузчик создает в планировщике запланированную задачу с именем ZeroDriveBackupTaskSystem141.1.7272.0, которая запускает index.vbs.

Декодированная PowerShell-команда для закрепления index.js в системе

Декодированная PowerShell-команда для закрепления index.js в системе

Чтобы получить основной вредоносный модуль — RAT, JS-загрузчик выполняет GET-запрос к С2-домену со следующими параметрами:

Значение параметра victim_huidMd5 представляет собой MD5-хэш, который вычисляется по следующему алгоритму:

  1. получение серийного номера диска C:\:
  2. получение имени пользователя: process.env.USERNAME
  3. получение имени хоста: os.hostname()
  4. объединение значений в одну строку [DiskHuid][username][hostname]
  5. вычисление MD5-хэша от полученной строки:

JavaScript RAT

Финальная вредоносная нагрузка также представляет собой обфусцированный скрипт JavaScript, который может загружать с С2-сервера дополнительные модули.

Большинство функций троянца реализованы с помощью PowerShell. Ниже перечислены функции зловреда, в том числе ранее не описанные:

  • screenshot — сделать скриншот. Реализуется с помощью выполнения закодированного PowerShell-кода
Реализация функции screenshot

Реализация функции screenshot

  • clip — получить текущий буфер обмена. Реализуется с помощью выполнения PowerShell-кода, загруженного с URL-адреса hxxps://theoryviraleliminate[.]com/s/c
Реализация функции clip

Реализация функции clip

  • keylogger — запустить кейлоггер. Реализуется с помощью выполнения PowerShell-кода, загруженного с URL-адреса hxxps://theoryviraleliminate[.]com/s/k
  • get-meta — собрать следующую информацию о жертве в формате JSON и отправить на прописанный в коде адрес С2:
    • имя пользователя и устройства,
    • версия и номер сборки ОС,
    • параметры процессора и памяти,
    • имя домена,
    • права и группы текущего пользователя, наличие прав администратора, настройки UAC
  • get-location — определить местоположение устройства. Реализуется с помощью выполнения закодированного PowerShell-кода
Реализация функции get-location

Реализация функции get-location

  • Powershell — выполнить указанную оператором PowerShell-команду
  • Powershell-preconfigured — выполнить указанную предустановленную команду:
Предустановленная команда Описание команды URL для загрузки PowerShell-кода
InitializationCommand Создает VBS-скрипты в директории $env:APPDATA\PixesSystems:

f.vbs для сбора данных при помощи команды FileUploadingCommand

b.vbs для сбора данных при помощи команды BrowserCommand

Создает запланированную задачу PixesSystemsUpdateTask14.1.7272.0 на запуск этих скриптов

hxxps://theoryviraleliminate[.]com/s/af4d98a99681
FileUploadingCommand Собирает данные с локального хоста hxxps://theoryviraleliminate[.]com/s/cf6180e3501d
TelegramCommand Собирает данные пользователя из мессенджера Telegram hxxps://theoryviraleliminate[.]com/s/r8q1mz4k7n2x
BrowserCommand Собирает данные из браузеров, включая cookie-файлы и мастер-ключ hxxps://theoryviraleliminate[.]com/s/b3e8c6w0p5d2
  • Run-ssh-module — получить SSH-модуль путем отправки следующего GET-запроса на С2-сервер и выполнить его:

  • Restart-with-uac-bypass — выполнить PowerShell-код, загруженный с URL-адреса hxxps://theoryviraleliminate[.]com/s/u, и перезапустить основной модуль (RAT). Реализуется через вызов ошибки (exit code 66)
  • Restart — перезапустить основной модуль (RAT)
  • Force-delete — удалить все вредоносные компоненты и запланированные задачи. Реализуется с помощью выполнения PowerShell-кода, загруженного с URL-адреса hxxps://theoryviraleliminate[.]com/s/d
Реализация функции force-delete

Реализация функции force-delete

  • Shutdown — остановить работу троянца
  • Run-binary — загрузить с указанного оператором URL-адреса файл и запустить его заданным способом в зависимости от типа
  • List-files — перечислить файлы в указанной директории (по умолчанию, C:\)
  • Download-file — загрузить файл по указанному пути на С2 атакующих в формате base64
  • List-drives — получить информацию о дисках в системе:
  • Write-file — загрузить в систему файл с указанного оператором URL-адреса
  • dump-outlook — выполнить дамп данных пользователя из Outlook. Реализуется с помощью выполнения PowerShell-кода, загруженного с URL-адреса hxxps://theoryviraleliminate[.]com/scripts/outlook-com-dumper

Сбор данных

Одна из главных возможностей троянца — сбор и эксфильтрация файлов с системы жертвы. Часть этого процесса реализована в команде FileUploadingCommand, которая загружает с С2 PowerShell-код для сбора файлов.

Скрипт нацелен на файлы со следующими расширениями:

Помимо традиционных форматов файлов (документы, архивы, изображения) атакующие также выкачивают геоинформационные форматы. Такие GIS‑файлы (географические информационные системы) позволяют получить сведения об инфраструктуре — дорогах, инженерных сетях, рельефе местности, а также о стратегических объектах, и представляют конфиденциальные данные в инженерных, государственных и промышленных организациях.

  • .kml, .kmz, .gpx — данные GPS и карт
  • .shp, .dbf — шейп-файлы ГИС (используются в картографических системах)
  • .geojson — географические данные в формате JSON
  • .mxd — документы карт ArcGIS
  • .qgs, .qgz — файлы проектов QGIS
  • .dem — цифровые модели рельефа
  • .tif, .tiff, .img — часто используются для геопространственных растровых изображений

Кроме этого, троянец имеет возможность собирать данные из браузеров (BrowserCommand). Он собирает файлы из следующих директорий в браузерах Google Chrome, Microsoft Edge, Яндекс Браузер и Opera:

  • *\Network\cookies
  • *\Local State
  • *\Local Storage\leveldb

Также зловред использует инструмент ArtifactsCollector.exe для получения мастер-ключа браузера, который сохраняется в файле master_key.txt. Этот инструмент загружается в систему жертвы с C2-адреса hxxps://theoryviraleliminate[.]com/s/4df7e80dfc69. Нам не удалось получить ArtifactsCollector.exe, однако известно, что инструмент написан на .NET и имеет встроенное имя GetCookiesKey.exe.

В дополнение к этому RAT способен собирать учетные данные из мессенджера Telegram (TelegramCommand). Троянец копирует содержимое $env:APPDATA\Telegram Desktop\tdata во временную директорию и архивирует перед эксфильтрацией.

Все собранные файлы отправляются с помощью POST-запроса на hxxps://theoryviraleliminate[.]com/files/ с указанием в заголовке идентификатора жертвы (victim_huidmd5).

Инфраструктура атакующих

Домены, использованные в качестве С2, были в основном зарегистрированы Tucows Domains Inc. Злоумышленники использовали виртуальные частные серверы хостинг-провайдеров различных стран.

Для распространения вредоносных установщиков атакующие регистрировали поддельные домены, мимикрирующие под легитимные веб-ресурсы, например:

Интересно, что домен battleflight[.]pro разрешается в IP-адрес, на котором также были расположены поддельные домены, связанные с APT-группой GOFFEE. Кроме того, эта группа распространяла импланты под аналогичными приманками в виде авиационного ПО.

Инфраструктура HeartlessSoul:

IP-адреса, используемые атакующими, в разделе Threat Lookup на Kaspersky TIP

IP-адреса, используемые атакующими, в разделе Threat Lookup на Kaspersky TIP

Заключение

Анализ активности группировки HeartlessSoul показывает целенаправленный интерес злоумышленников к предприятиям российской промышленности с целью получения конфиденциальных данных, в частности геоинформационных. Группа использует традиционные методы проникновения: фишинг, вредоносную рекламу и распространение с помощью популярных легитимных платформ.

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

Группа HeartlessSoul активна с сентября 2025 года и на момент написания статьи продолжает вредоносные кампании, поэтому крайне важно обеспечить надежную защиту своей корпоративной инфраструктуры.

Детектирование решениями «Лаборатории Касперского»

Защитные решения «Лаборатории Касперского», такие как Kaspersky Endpoint Detection and Response Expert, успешно обнаруживают вредоносную активность в рамках описанных атак.

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

В первую очередь стоит обращать внимание на следующие признаки:

  • нетипичные пути к исполняемым объектам (например, запуск из временных директорий или пользовательских папок),
  • наличие скрытых или обфусцированных аргументов командной строки (особенно с использованием PowerShell, cmd или mshta),
  • несоответствие между иконкой или именем ярлыка и его фактическим действием,
  • цепочки процессов, где LNK-файл инициирует запуск скриптовых интерпретаторов или загрузчиков.

Решение KEDR Expert детектирует эту активность с помощью правил interpreter_started_by_lnk_from_arch_windows и start_interpretator_from_lnk.

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

Решение KEDR Expert детектирует эту активность с помощью правила noninteractive_and_hidden_parameters_in_powershell_commandline.

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

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

Решение KEDR Expert детектирует эту активность с помощью правила file_creating_with_suspicious_extension_in_startup_folder.

Другим способом выявления вредоносной активности является мониторинг сетевого трафика. Решение Kaspersky Anti Targeted Attack (KATA) с модулем NDR обнаруживает сетевое взаимодействие вредоносных образцов, используемых в рамках описанной кампании. Например, коммуникация рассмотренного JS-загрузчика с C2-сервером детектируется правилом Backdoor.Agent.HTTP.C&C в момент попытки получения RAT-модуля.

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

Дополнительная информация об этой угрозе, включая аналитические данные об индикаторах компрометации, доступна подписчикам сервиса Kaspersky Threat Intelligence Portal.

Хэши файлов

Архив
19b8d33c3648aad7249dba293b1f87b2

XLL
6b24b3f911ac6aff02c30b09abb24cff

LNK
1fb932fa6e6c0828b6cdd361e8619e39
9d96f06c427bd06f2819b1906069c6e8
63b6eea158d56e6a0dca9bcd07a9d5ec
72c1989164ec709e2ee12b7bf0d100fc
696eaf7e4f527f03d65c0f691552e6e8
1b792c81329dbb0fc9e41aa1ba8071bb
69df8d733ee88aa1ef717127e157de51
ec7f27a07104cca1e4a921a0aec784e9
32a2c2480f1c31294a4137f8497ef153
c1104fb0dccde95145983ae349eacaf9
bbf7181d17801d050bb518914029c025
46838f95aa3365e7edb08dc4a8513014
46cf73d47c6ad417ee37dc98838dfc58
4e94855c77aa278d7ed461f54e20e60c
6e23b8e40f893d3a62feb3cbd6a8e9e1
df1f0d7e437d2f8864275b490356d836
a15e1190b7df42a1996f1c9bca8134e7

MSI
6c051791a1eaf7d6580b5c51d745878f
ac7b70ac9efe6cb31220b549f46bf529
9b456e0fb8f8d570753b241baa3826cf
9f44e6d7055451a049529da88a46e343
bbfe06d6406eec314eaac4c7b9869097
81239c7fad689607817506b079b54d6a
5573e0837078b432016637298d1ce926
2f328833865b7c97b0a1188bf1a26792
3a0bbf1ea830d9017646c968e9361c59
92bec935129ba62cef868a684604e323
5c693069c52a2b970df5944387d68fae
f771bacddb1ea53e4e04f73cdb5f799e
7d8818c730ccce0321973f700d767724
242c7e139cebc7e787d8a1524ebc8d26
57b4eeac620401a8405f01697035d43c
5d50bd2b7f3a9feb5438e3d7f0755413
96190499dad000f19aefea19cb88e203
0fe7d08ed8d33492a2ac722b73626a0a
c202769dd3b654cbb8d628bc95c920b5
58276c2ea8aa23735fc20f6497e750b8

Скрипты PowerShell
7ffeb5f730b3c1aef115fa93164d05c7
7b53f6caa9c9249967768bd3d3d6c397
ba415ea182f929ea972315d5ff0dcc89
ba1a3ddf8b68af435f978c708063330c
a13a0359547be6591cd687095c948dfa
d958f1342ec730e73e369a440078bbac
71ac6becbf456211080cd9681ee6841d
d99090c0d681b73fbf471be67967ae17
814b9902bb84df9f60fa1523bfa74894
1acde22e21776bf4469dcc29e0b064d7
b25df20803fcbb82544b7c845e39c6e4
83e6895d43b79db7e34a68fcf69e34e7
2f7cf44886865e9fbd404e17300aa396
8d1825a335efe1b7616d6fbc7e0f8fae
779d8a855bd1fac8c120316e88f891f1

Скрипты VBS
7b4e881f2e8d5af259c3b50350d7378a
21394bac43e00af4a791728674652a9b
f5ac6fff7fce52f23b81f3abd96a6006
016e7b7217c9c42f413cbcd46f874d63
954be7332fbac5c583265a147c935401
3117d0ebc4cad72d72059f10a4003b33
62d1b27b6d18a588506187853a060992
cca82030f346f37b477b9293bc27b2f3
f1b0a7de41a15ed94c88d945831ed046
b6f4900da57dd280a321cfc4f2dd575b

Скрипты JavaScript
216b9951a483a33f66f5d012064f7162
7190852f6f6d3cc82d5e81065c55973d
26261c9a1c315c8e37a486b4ee1eb1b6
d2052109c392ad5de230b85c74b242ca
512437c210c9eb65baf6af44344c63cf
e5596caf30d375b9fc81b936cdf6499d
ba1fadbe3b8bc2868700980124e57e92
3691b28aac98109101a1c588ff700ae5

Пути к файлам

c:\Users\[username]\AppData\Roaming\pixessystems\
c:\Users\[username]\AppData\Local\nodejs\
c:\Users\[username]\AppData\Local\alphaflyv3\
c:\Users\[username]\AppData\Local\star\
c:\Users\[username]\AppData\Local\GearUP-2.54.1-win\

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

Поддельные веб-сайты
battleflight[.]pro
alphafly-drones[.]com/downloads/alphaflyinstallv1-2.msi
stardebug[.]app/static/files/StarDebug_1.0.1.msi

C2
newfolder[.]click
playerdragonbike[.]com
185.208.158[.]188
theoryviraleliminate[.]com
landownerdozenguard[.]com
monkey.kyun[.]li
93.113.25[.]102
66.78.40[.]47
codeinecrazy[.]xyz
cherrymixtureinstrument[.]com

Геоинформационные данные под угрозой. Как HeartlessSoul атакует авиационную промышленность

Ваш e-mail не будет опубликован. Обязательные поля помечены *

 

Отчеты

Продолжение операции «Форумный тролль»: российских политологов атакуют при помощи отчетов о плагиате

Эксперты GReAT «Лаборатории Касперского» обнаружили новую волну кибератак APT-группы «Форумный тролль», нацеленную на российских ученых-политологов, доставляющую на устройства фреймворк Tuoni.