Группа киберразведки Positive Technologies зафиксировала новую фишинговую кампанию хакерской группировки NetMedved, нацеленную на российские организации. Как и в описанных нами ранее атаках, операторы используют деловую тематику, документы-приманки и легитимный инструмент удаленного администрирования NetSupport Manager, развернутый в системе жертвы.

В предыдущих кампаниях NetMedved уже применялись архивы с документами-приманками, вредоносные LNK-файлы, PowerShell-загрузчики, сценарии с использованием finger, а также HTA-варианты с декодированием приманки и NetSupportRAT из тела файла. В новой кампании операторы сохранили основную модель атаки, но расширили набор начальных стадий и инфраструктурных приемов.

В рамках исследования были выявлены два основных направления развития кампании:

  • LNK-файлы запускают PowerShell-цепочку через сервис-redirector, получают AES-зашифрованный PowerShell-stage и разворачивают NetSupport Client из ZIP-архива;

  • ZIP/JScript-вариант, в котором полезная нагрузка встроена непосредственно в .js-файл и декодируется локально через Windows Script Host.

LNK- и PowerShell-сценарий

Цепочка атаки с использованием LNK-файла выглядит следующим образом:

Схема заражения через ZIP-архив с LNK-файлом
Схема заражения через ZIP-архив с LNK-файлом
Содержимое архива
Содержимое архива

В исследованных образцах LNK-файлы маскируются под заявки на закупку от имени российских компаний. Названия документов и файлов выдержаны в деловом стиле и рассчитаны на сотрудников, работающих с закупками, договорами и документооборотом. Для LNK-вариантов был зафиксирован следующий паттерн имен файлов: «Заявка на закупку от компании [REDACTED] на июнь 2026г.lnk».

Пример вредоносного LNK-файла
Пример вредоносного LNK-файла

Исследованные LNK содержат Base64-команду, закодированную в UTF-16LE. После декодирования она принимает следующий вид:

Пример декодированной PowerShell-команды
Пример декодированной PowerShell-команды

PowerShell в данной цепочке выполняет роль загрузчика: он обращается к удаленному ресурсу, получает следующий этап полезной нагрузки и запускает его в памяти.

Для затруднения обнаружения в образцах используется несколько типовых видов обфускации:

  • Командлет Invoke-Expression, отвечающий за выполнение полученного кода, не указывается напрямую, а разрешается динамически через Get-Command с wildcard-маской – шаблоном поиска с подстановочными символами, где означает любую последовательность символов. Например, конструкция (gcm vo*p*s*n) позволяет найти Invoke-Expression без его явного указания в коде.

  • Для получения следующего этапа полезной нагрузки используется COM-объект MSXML2.ServerXMLHTTP, а не более типичные для PowerShell механизмы вроде Invoke-WebRequest, DownloadString или Net.WebClient. За счет этого в коде отсутствуют распространенные сигнатурные строки, часто используемые при статическом анализе вредоносных PowerShell-скриптов. Однако такой прием не позволяет полностью скрыть активность загрузчика. Полезная нагрузка по-прежнему может детектироваться по созданию COM-объекта MSXML2.ServerXMLHTTP, вызовам методов .open() и .send(), обращению к свойству .responseText, а также по последующему исполнению полученного ответа как кода.

В текущей кампании домен crop[.]sh не является основным сервером полезной нагрузки, а используется как промежуточный redirector-слой между первичным LNK и инфраструктурой доставки.

 Цепочка перенаправлений crop[.]sh → sunlightfriends[.]tech
Цепочка перенаправлений crop[.]sh → sunlightfriends[.]tech

При запуске LNK-файла инициируется обращение к sunlightfriends.tech, сервер возвращает PowerShell-код, содержащий крупный Base64-blob. Этот blob представляет собой AES-зашифрованный PowerShell-код следующего этапа. Ключ и вектор инициализации – служебное значение, необходимое для корректной расшифровки AES-данных вместе с ключом, – также встроены в тело скрипта в Base64-форме.

Рисунок 6.  Второй этап цепочки – Powershell-код, выполняемый в памяти
Рисунок 6.  Второй этап цепочки – Powershell-код, выполняемый в памяти

Далее скрипт расшифровывает встроенный blob алгоритмом AES-128-CBC, преобразует полученный результат в PowerShell-код и выполняет его в памяти через обфусцированный вызов Invoke-Expression.

После расшифровки полезная нагрузка выполняет роль загрузчика: через redirect-домен обращается к sunlightfriends.tech, скачивает ZIP-архив, сохраняет его во временную директорию и распаковывает содержимое в %LOCALAPPDATA%\. Из распакованного архива запускается NetSupportRAT.

Для закрепления в системе создаетcя запись автозапуска в ветке HKCU\Software\Microsoft\Windows\CurrentVersion\Run, указывающая на извлеченный NetSupportRAT. В результате полезная нагрузка будет автоматически запускаться при последующих входах пользователя в систему.

Внутри ZIP находится client32.ini – конфигурационный файл NetSupport Client. В нем заданы параметры скрытного запуска, ограничения пользовательского интерфейса и gateway-серверы.

Параметр

Значение

Silent=1

тихий режим работы клиента

SysTray=0

отсутствие значка в системном трее

DisableDisconnect=1

запрет отключения пользователем

DisableChat=1

отключение встроенного чата

DisableMessage=1

отключение сообщений NetSupport

DisableRequestHelp=1

отключение запроса помощи

ValidAddresses.TCP=*

разрешение подключений с любых адресов

CMPI=60

интервал опроса gateway 60 секунд

GatewayAddress=imhfamily.com:1414

основной NetSupport gateway

SecondaryGateway=akiliridge.com:1414

резервный NetSupport gateway

Цепочка атаки с использованием ZIP-архива и Jscript-дроппера

В ходе дальнейшего исследования был выявлен еще один вариант доставки NetSupportRAT, отличающийся от LNK-цепочки с PowerShell. В этом случае операторы распространяли ZIP-архив, содержащий вредоносный JScript-файл, замаскированный под закупочный документ. Тематика социальной инженерии при этом осталась прежней, а цепочка атаки выглядит следующим образом:

 Схема заражения через ZIP-архив с JScript-файлом
Схема заражения через ZIP-архив с JScript-файлом
Содержимое архива через ZIP-архив с JS-файлом
Содержимое архива через ZIP-архив с JS-файлом

Скрипт представляет собой JScript-дроппер, использующий COM-объекты Windows для декодирования встроенных данных, записи файлов на диск, запуска документа-приманки и закрепления в системе.

 Фрагмент кода JS‑дроппера
Фрагмент кода JS‑дроппера

Для декодирования встроенных данных используется механизм bin.base64 через XML DOM. Такой подход позволяет хранить внутри JScript-кода как документ-приманку, так и компоненты NetSupport Client в виде закодированных blob-данных. В наблюдаемом варианте основная полезная нагрузка извлекается из тела самого скрипта, без необходимости обращения к внешней инфраструктуре.

После запуска JScript создает и открывает PDF-файл NOTICE-793-0001.pdf, параллельно разворачивая NetSupport RAT.

Рисунок 10. Документ-приманка
Рисунок 10. Документ-приманка

В отличие от LNK-варианта, где документ-приманка входит в состав ZIP-архива, в JScript-варианте PDF хранится в закодированном виде непосредственно внутри скрипта.

В одном из LNK-образцов также наблюдалась дополнительная тактика: PowerShell-стейджер автоматически открывал ссылку на Яндекс Диск, где был размещен PDF-файл. Использование легитимного облачного сервиса для размещения приманки снижает подозрительность сетевого обращения и затрудняет блокировку по доменному признаку.

Размещение документа-приманки на легитимном облачном хранилище
Размещение документа-приманки на легитимном облачном хранилище

В отличие от LNK-варианта, в цепочке с использованием JS-файла зафиксировано два механизма закрепления:

  • Скрытая задача планировщика Windows. Задача создается через COM-интерфейс Schedule.Service. В параметрах задачи зафиксированы следующие значения:

Hidden=TrueAction=%LOCALAPPDATA%\Stereo\audio.exe

  • Ключ автозапуска текущего пользователя. В реестре создается значение Stereo, указывающее на основной исполняемый файл NetSupport Client:

HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\Run\Stereo = C:\Users\admin\AppData\Local\Stereo\audio.exe

Сочетание двух механизмов закрепления повышает устойчивость установки: если один из них будет удален в ходе стандартной очистки автозапуска, второй может продолжить обеспечивать запуск NetSupport Client после перезагрузки или повторного входа пользователя в систему.

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

  1. Цепочка распространения. Доставка осуществлялась аналогичным образом: ZIP-архив содержал JScript-файл, который при запуске через wscript.exe извлекал полезную нагрузку из собственного тела и разворачивал ее на устройстве жертвы без обращения к внешней инфраструктуре.

  2. Документы-приманки. Архивы 2024 года содержали документы, имитирующие коммерческие запросы цены и предложения от российских юридических лиц, файлы именовались по шаблону «[Тип запроса] от [полное наименование] на [месяц год]. [НомерЗаявки].js».

    К 2026 году название упростилось до «Заявка на закупку от компании ООО [НАЗВАНИЕ] на [месяц год]», однако целевая аудитория – сотрудники снабжения и закупок – осталась неизменной.

  3. Конечная полезная нагрузка. Целевым инструментом в обоих случаях выступает NetSupportRAT, развертываемый в пользовательском каталоге со скрытой конфигурацией client32.ini.

Таким образом, JScript-вариант доставки применялся группировкой как минимум с 2024 года.

Заключение

Новая активность NetMedved показывает, что операторы продолжают развивать способы доставки вредоносного ПО, сохраняя при этом основную полезную нагрузку в виде NetSupport Manager, используемого как RAT. Несмотря на полную смену инфраструктуры, кампания сохраняет устойчивые признаки: тот же инструмент (сборка NetSupportRAT 2017 года), неизменный шаблон именования приманок, парная схема gateway в конфигурации client32.ini и совпадающее значение SecurityKey2 в обоих вариантах доставки.

В новой кампании заметны следующие изменения:

  • Собственный redirect-сервис. Группировка использует контролируемый домен crop[.]sh в качестве промежуточного redirector-слоя. Это позволяет менять конечную инфраструктуру доставки без модификации первичного LNK-файла: то есть уже разосланные вредоносные файлы продолжают работать после ротации серверов.

  • Многоуровневое AES-шифрование с помощью полезной нагрузки. Сервер доставки возвращает PowerShell-код с AES-128-CBC зашифрованным blob внутри.

  • ZIP/JScript-вариант. Новый вектор не обращается к внешней инфраструктуре: все компоненты зашиты в тело скрипта. Это делает JS-вариант невидимым для сетевой детекции при первичном заражении и снижает зависимость от доступности серверов в момент выполнения.

  • Инфраструктурная кластеризация. Все домены C2 зарегистрированы в один день – 27.04.2026. Это на месяц раньше начала кампании (конец мая – начало июня), но такая подготовка инфраструктуры обычная практика. Домены imhfamily[.]com и stillpaving[.]com принадлежат одному ASN (58329), домены sunlightfriends[.]tech и fleepsterones[.]fun разрешаются в один IP-адрес (144.172.116.63). Такая кластеризация позволяет атрибутировать новые домены по инфраструктурным пересечениям даже при отсутствии совпадений по коду.

MITRE ATT&CK

ID

Название

Тактика

Описание

T1566.001

Phishing: Spearphishing Attachment

Initial Access

NetMedved рассылали ZIP-архивы с LNK- и JS-вложениями, замаскированными под деловые запросы от российских компаний.

T1204.002

User Execution: Malicious File

Execution

NetMedved ожидают что жертва самостоятельно запустит вредоносный LNK- или JS-файл.

T1059.001

PowerShell

Execution

NetMedved скрытно запускали PowerShell с параметром -EncodedCommand из LNK-файла.

T1059.007

JavaScript/JScript

Execution

NetMedved исполняли .js-файл через wscript.exe (JScript-вариант).

T1219

Remote Access Software

Command and Control

NetMedved использовали NetSupportRAT для получения полного удаленного доступа к зараженной системе.

T1027

Obfuscated Files or Information

Defense Evasion

NetMedved применяли обфускацию: Base64 в LNK-файле, Base64-blob с AES-CBC в Stage 2 и полезной нагрузкой в теле JS-файла.

T1140

Deobfuscate/Decode Files

Defense Evasion

NetMedved реализовали декодирование Base64 и AES-CBC-расшифровку в Stage 2, а также обработку bin.Base64 в JScript-варианте.

T1036

Masquerading

Defense Evasion

NetMedved маскировали вредоносные компоненты под легитимные объекты: LNK-файл использовал иконку Notepad, каталоги назывались DisplayMenu и Stereo, а бинарные файлы — displayport.exe и audio.exe.

T1105

Ingress Tool Transfer

Command and Control

NetMedved загружали ZIP с NetSupportRAT через crop[.]sh → sunlightfriends[.]tech (LNK-вариант).

T1102

Web Service

Command and Control

NetMedved использовали crop[.]sh как redirector, а Яндекс.Диск — для хостинга файлов-приманок.

T1547.001

Registry Run Keys

Persistence

NetMedved создавали ключи реестра HKCU\Run\DisplayMenu и HKCU\Run\Stereo для автозапуска RAT.

T1053.005

Scheduled Task

Persistence

NetMedved создавали крытую задачу планировщика Windows (Hidden=True) JScript-вариант.

T1497.003

Time Based Evasion

Defense Evasion

NetMedved использовали WScript.Sleep (60000), задержка на 60 секунд в JScript-варианте.

T1012

Query Registry

Discovery

NetMedved обращались к реестру при инициализации компонентов NetSupportRAT.

T1082

System Information Discovery

Discovery

NetMedved собирали сведения о системе жертвы.

T1047

WMI

Execution

NetMedved получали имя пользователя через WMI в JScript-варианте цепочки.

T1071.001

Application Layer Protocol: Web

Command and Control

NetMedved использовали HTTP/HTTPS для обмена командами с C2-инфраструктурой NetSupportRAT.

T1571

Non-Standard Port

Command and Control

NetMedved использовали порты C2 NetSupportRAT: 1414/TCP в LNK-варианте и 1411/TCP в JScript-варианте.

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

Сетевые индикаторы

Домен

IP

ASN

Дата регистрации

Описание

crop[.]sh

104.21.60.89

172.67.195.1

13335 

21.10.2025

redirect-домен

sunlightfriends[.]tech

144.172.116.63

14956

25.05.2026

сервер доставки

fleepsterones[.]fun

144.172.116.63

14956

27.04.2026

сервер доставки

imhfamily[.]com

185.158.249.83

58329 

27.04.2026

C2 NetSupportRAT

akiliridge[.]com

-

-

27.04.2026

C2 NetSupportRAT

stillpaving[.]com

79.132.128.202

58329 

27.04.2026

C2 NetSupportRAT

glowstickspro[.]com

-

-

27.04.2026

C2 NetSupportRAT

Файловые индикаторы

Название файла

MD5

SHA1

SHA256

ZIP-архивы

56cc6b8260c676dca2ee4e4ef4785373

c8d51044d37f247937616adb489836c62b25b599

38d96dd1c26a7a98c8b55c925863d0f5c8c099a73192c65e3a1e47ea636d3d29

da95797a9bcfe8ee9500077636f0835a

2e7b753186817a85961cdefb47bdf5436515b694

0c2947904711ef63ac3cc24ba2e7a059e318dc219d14eeaebb6b46fd277f7f3d

0db3fabb4049a896b831e41a364d6def

78bd86da8f36d3c9d3cdf249de50abfdba9b6e1c

e345117ccd1adf3815a2e8877a1021ee8686bea0993eb59eca87660e4f9112fe

4c0564f1e34a6161313547c4caefce55

7f97e8aabe44f25d952603674651bbf5735ecd6b

312862333715ab97e568d581cfdd1f4a1b5036922021ff74f7b67a38ec0901b8

LNK-файлы

Заявка на закупку от компании ООО [REDACTED] на июнь 2026г.lnk

5c56fd9d306a62642cfe6c6b3989efdd

fbdb66de614bd41a1d68f3fa0abc85fb092b28bc

c5a1dee1ae7f0a04dfa91481d0c1d5ad5c887a77e657def8878af600a98fd8c6

Заявка на закупку от компании ООО [REDACTED] на июнь 2026г.lnk

174a44b2a1511e7ebf64525beffd0f9f

0c964a304edaa8d5d5c58486f4fea4bebe4de36b

20c8fd700796b80ea093e23ec812943adfc63c3b8653bb09b581fd7f4127c652

JS-файлы

Заявка на закупку от компании ООО [REDACTED]на май 2026г_105.js

8d7d45534bdfefedb6bd7c3214eb3c5b

ce69cdeac9c1ca625859134414323c93bef5c728

d1e4c6578b588e95d8ed03b46f2febc0ce2d5a8a8b612cafe640b6e23ba637d7

Заявка на закупку от компании ООО [REDACTED] на май 2026г_3.js

54ad73dda690f63470cff1c0c60195d4

c436bc363ccb5fb3b96950ae23c766c4aa468b0a

df1bb5c2aac6220ca59bed32b53e02836ff53b6d732bd4a91c5252d507748d03

PowerShell-файлы

portal

f49185941e3785c805664a4ce9871651

a1e9c5624536522c6c5bb1f359664eb5effdbdc6

fdcbef12799d7c49dcc15746cc87720c608e1e246eac08772cbb43c6f8ab54c8

file.ps1

b67aa8823328b895cd793c3c40a6c447

ca57e0dc19d0b516705f8bde6d02c17057f23dfa

bef3add1e3ba37827908e06c0e064613ce271b02d929a5d9a769c6a6700097c9

Docx-документы

Карточка_предприятия.docx

04a99c1cdcc0c9aa0c63c20d89f9b00f

bed70a8b4b8ee1a45f54d6b62efe387cd6812b54

4972b6583645d28600f076e73def05890b54a9d98c8b328d61f421c79a021db6

Реквизиты [REDACTED].doc

06e85fc3718ececcdd3766e7fee93a7f

c487904befab8721644a02d16da26aa7f79ba666

9988c051016bafe3dcbe0ee4bebba6fe229cf6e6b6022197b47bb9bfc8388e25

Денис Казаков

Специалист группы киберразведки TI-департамента экспертного центра безопасности, Positive Technologies