Злоумышленники приспособили среду выполнения Bun для скрытного распространения похитителя данных NWHStealer

Stealer

Авторы вредоносного ПО не перестают экспериментировать с новыми инструментами разработки, чтобы обойти защиту. Очередной пример - использование среды выполнения JavaScript под названием Bun. Этот относительно свежий инструмент, позиционируемый как более быстрая альтернатива Node.js, оказался удобной платформой для доставки программы-похитителя данных NWHStealer. Кампания нацелена на пользователей, которые скачивают пиратские игры, читы и нелицензионное программное обеспечение с файлообменников и репозиториев.

Описание

Bun представляет собой универсальный набор инструментов для работы с JavaScript и TypeScript. Он включает собственную среду выполнения, менеджер пакетов, сборщик кода и средства запуска тестов. Разработчики ценят его за быстроту и низкое потребление памяти. Однако эти же качества привлекли внимание и авторов вредоносных программ. Низкая распространённость Bun в легитимных проектах позволяет злоумышленникам встраивать вредоносный код в исполняемые файлы, которые реже проверяются антивирусами.

Сама программа NWHStealer написана на языке Rust и предназначена для кражи данных. Она умеет собирать системную информацию, похищать пароли, куки и данные криптовалютных кошельков из браузеров, а также вытаскивать учётные данные из FTP-клиентов (FileZilla, CoreFTP) и мессенджеров (Steam, Discord). Кроме того, вредонос может внедрять код в процессы браузера, запускать дополнительную полезную нагрузку (например, майнер XMRig) и пытаться отключить контроль учётных записей Windows (UAC). Для закрепления в системе он использует запланированные задачи. Управление заражёнными машинами осуществляется через сервер C2 (сервер управления), адрес которого вредонос получает через Telegram.

В ходе последних кампаний специалисты обнаружили новую схему распространения NWHStealer. Злоумышленники распространяют ZIP-архивы с приманками: названия файлов имитируют программы для игр (например, "VampireCrawlers_Trainer"), читы для FiveM, активаторы TradingView, автотюны для музыки и другие популярные утилиты. Внутри каждого архива находятся два загрузчика: основной - Installer.exe, в который встроена среда выполнения Bun с зашифрованным JavaScript-кодом, и резервный - dw.exe, который запускается по инструкции из файла Readme.txt.

Загрузчик на Bun выполняет многоступенчатую проверку системы. Сначала скрипт sysreq.js с помощью команд PowerShell проверяет, не работает ли компьютер в виртуальной среде или песочнице. Он анализирует модель процессора, объём диска, разрешение экрана, наличие USB-устройств, производителя BIOS, количество процессов и имя пользователя. Каждый показатель получает баллы, и при превышении порога загрузчик останавливается. Если среда признаётся реальной, запускается второй скрипт memload.js. Он связывается с сервером C2 по адресу https://silent-harvester.cc и передаёт зашифрованные данные о системе: публичный IP-адрес, скриншот экрана, результаты проверки на виртуализацию. Затем через два GET-запроса к конечным точкам /api/status и /api/update загрузчик получает ключи AES и зашифрованную полезную нагрузку.

Расшифрованная нагрузка представляет собой самовнедряющийся код, использующий Win32 API через модуль Bun bun:ffi. Таким образом вредонос получает возможность вызвать VirtualAlloc, LoadLibraryA и CreateThread прямо из JavaScript. В итоге в память загружается NWHStealer, который начинает сбор данных.

Использование Bun усложняет анализ вредоносного кода классическими средствами, так как основная логика скрыта в зашифрованном разделе исполняемого файла. Кроме того, злоумышленники применяют резервный загрузчик dw.exe, который действует независимо и может заразить систему даже при недоступности C2.

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

Обезопасить себя можно, соблюдая базовые правила. Скачивать программы стоит только с официальных сайтов разработчиков. Если приходится использовать файлообменники, следует проверять профиль издателя: давно ли он создан, есть ли отзывы, какова репутация. Перед запуском любого исполняемого файла нужно смотреть его цифровую подпись и издателя. Сам архив стоит изучить: содержимое должно соответствовать описанию, а названия файлов - не содержать странных символов. Дополнительную защиту обеспечивает антивирус с поведенческим анализом, который может заметить подозрительные вызовы API из JavaScript-среды.

Атаки с использованием Bun пока редки, но они показывают тенденцию: злоумышленники берут на вооружение новейшие инструменты, чтобы оставаться незамеченными. За специалистами по безопасности остаётся следить за такими прецедентами и адаптировать методы обнаружения. Для обычного пользователя главный совет остаётся прежним: не доверять сомнительным источникам и не запускать непроверенные файлы.

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

Domains

  • cosmic-nebula.cc
  • silent-harvester.cc
  • support-onion.club
  • whale-ether.pro

SHA256

  • 0020999b2e3e4d1b2cfb69e4df9440d3ce05d508573889fdc12b724ce75a0cd8
  • 021838f30a43026084978bce187c165c6b640d8d474ec009d48078d21ec62025
  • 0614c4cc6375ab6bdcdd2dfa913a67d32c3e8be9b95a4a2aa09bb131b98191c8
  • 0fa42df08cc467ec52b2d388b5575114a8ec067d13f6b1a653ec33fe879f88ca
  • 15f79980650393d182f81cd6e389210568aa1f5f875e515efe6cb9485d64b7fb
  • 20454ba58d509300fd694ae6159db4efa1b7ff965f98c29e7d087e20f96578c1
  • 308da9f49ffa1d1744e428b567792ab22712159974e9da8d8e0414ecd81de93e
  • 33d07aa24b217f27df6a483295c817da198e12511a6989bcc6b917feaf8e491d
  • 3710fb27d2032ef1eb1252ebf5c4dd516d2b2c0a83fb82c664c89e504b990fa9
  • 5427b4cefb329ed0e9585b3ce58a2788baf87e3b0c7221373f9bbd5f32c85b62
  • 96fe4ddfe256dc9d2c6faea7c18e2583cd9d9c0099a4ad2cf082f569ee8379f4
  • c8e96b55f13435c4b43b7209d2403f1a0e0f9deb05edc50e0f777430be693b07
  • d3a896f450561b2546b418b469a8e10949c7320212eb1c72b48e2b1e37c34ba5

Комментарии: 0