КИБЕРБЕЗОПАСНОСТЬ

Иранские хакеры прячут RAT в тестовых заданиях для разработчиков

Две новые кроссплатформенные RAT NodeRabbit и PollCat маскировались под тестовые задания для разработчиков и атаковали Linux, macOS и Windows.

✍️ Редакция iTech News | 02.09.2026 | ⏱ 5 мин | Источник: The Hacker News
👁

Иранская группа Nimbus Manticore развернула новую схему заражения: тестовые задания с RAT для разработчиков, которые запускаются на Windows, Linux и macOS. В кейсе, который описывает The Hacker News, атакующие не ломают периметр в лоб, а аккуратно заходят через рекрутинг и привычный для инженера ритуал: архив, дедлайн, локальный запуск проекта и обещание «всего три часа на проверку навыков». Для русскоязычной IT-аудитории это неприятный, но полезный сигнал: теперь риск сидит не только в npm и письмах «от службы безопасности», но и в seemingly нормальном процессе найма.

По данным The Hacker News, российская «Лаборатория Касперского» связала Nimbus Manticore с двумя ранее неописанными семействами вредоносов: NodeRabbit и PollCat. Оба инструмента кроссплатформенные, оба написаны на JavaScript или Node.js, а доставляются через троянизированные архивы с кодовыми заданиями. Первую известную находку NodeRabbit исследователи зафиксировали в Афганистане, позже похожие образцы нашли еще на двух машинах в Египте и Эфиопии. Сам по себе географический разброс важен: группа явно выходит за пределы узкой Windows-специализации и одновременно расширяет охват по платформам и по потенциальным жертвам.

Сценарий атаки выглядит почти буднично. Инженеру пишут в LinkedIn или на другой площадке для поиска работы, представляясь специалистом по найму из крупной технологической компании, и предлагают выполнить техническое задание. В одном из эпизодов жертве прислали архив Front-Technical-Challenge.zip с AWS, внутри лежал проект Taskflow и инструкция «найти и исправить все баги во фронтенде» за три часа, не используя AI-инструменты. Отдельно подчеркивалось, что файл server.js менять не нужно, потому что он якобы «без ошибок». Именно там и был спрятан вредоносный код. Первая строка подтягивала троянизированный пакет colorized_terminal версии 2.1.0, заранее вложенный в node_modules, а не опубликованный в npm. После импорта пакет тихо запускал имплант из скрытого пути в фоне.

NodeRabbit после запуска связывался с тремя управляющими адресами на Azure и работал через отдельные API-эндпоинты для регистрации хоста, получения команд и отправки результатов. Набор возможностей у него вполне взрослый: сбор данных о системе, список процессов, выполнение shell-команд, обход каталогов, чтение файлов по частям, запись данных по смещению, удаление файлов и директорий, создание папок, инвентаризация сетевых адаптеров, IP, MAC-адресов и DNS-настроек, а также изменение интервала beacon-запросов. Отдельно исследователи выделяют функцию, которая пишет Node.js-скрипт во временный файл, исполняет его и затем удаляет. Иными словами, это уже не одноразовая закладка ради кражи резюме, а нормальный удаленный доступ с маскировкой следов.

У NodeRabbit нашли еще две версии. Вторая использовала другой троянизированный пакет, pretty-log версии 2.1.0, умела частично работать через корпоративный прокси и завершалась, если обнаруживала среду анализа. Третья тоже запускалась через pretty-log, но обращалась к другому набору эндпоинтов и была заметно функциональнее. В ней появились 12 дополнительных команд, включая обход дисков Windows и WSL-монтов, запуск и остановку процессов, замену активного C2-сервера, извлечение адресов из Outlook OST/PST, попытку установить поддельное расширение VS Code под названием GitHub Copilot Helper, поиск Git-репозиториев в типичных рабочих директориях и внедрение загрузчика в Git hooks для закрепления. По механике закрепления это особенно неприятная история: вредонос уже не просто живет в системе, а пытается встроиться в инструменты, которыми разработчик пользуется каждый день.

Сохранение присутствия зависит от платформы. На Windows используются ключи Run в реестре, на Linux — запись в cron, на macOS — launch agent. Для маскировки первые варианты притворялись обновлением Microsoft Edge или помощником Intel Driver & Support Assistant. Третья версия пошла еще дальше и учитывала Windows Subsystem for Linux: создавала ежедневную задачу на 10:00, которая запускала Visual Basic Script через wscript.exe и wsl.exe. Это важная деталь для всех, кто держит гибридную dev-среду на рабочем ноутбуке. Еще вчера WSL казался просто удобным способом не поднимать отдельную Linux-машину, а сегодня это уже дополнительная поверхность закрепления для атакующего.

Второе семейство, PollCat, распространялось через другой архив с оценочным заданием для разработчиков: RankChallenge-react-6uJSX3-main.zip. Здесь атакующие добавили еще один крючок: жертве предлагали пройти «сессию» длиной в час, нажать Continue, ввести шестизначный OTP-код, который менялся каждые 30 секунд, и успеть закончить упражнение в жесткий срок. Такой тайминг работает не хуже банального «срочно откройте вложение»: инженер спешит, меньше смотрит по сторонам и быстрее запускает код локально. При этом PollCat жил своей жизнью независимо от того, прошла ли OTP-проверка успешно. Неудачная валидация просто закрывала доступ к видимой части задания, успешная — выдавала JWT и запускала еще один экземпляр вредоноса.

Есть и любопытная деталь, которая хорошо показывает текущий ландшафт атак. По наблюдению исследователей, в проекте PollCat несколько раз всплывает CTF-терминология, хотя само задание не является security-CTF: корневой пакет называется ctf-server, сервер пишет CTF server running, а в клиенте используются ключи вида ctf-*. Инструкции при этом не до конца совпадают с тем, что реально лежит в архиве. Kaspersky допускает, что основу проекта могли сгенерировать с помощью AI-ассистента для программирования, а затем уже встроить вредоносные компоненты. Это не доказанный факт про конкретный пайплайн злоумышленников, но гипотеза выглядит правдоподобно: шаблонные dev-проекты теперь можно собирать быстро, дешево и достаточно убедительно, чтобы они проходили первичный скепсис у занятых кандидатов.

Для бизнеса и команд разработки вывод тут очень приземленный. Процедура найма больше не выглядит нейтральной зоной с точки зрения ИБ. Если компания разрешает кандидатам выполнять задания на основной рабочей машине, использует общие ноутбуки для техинтервью, не изолирует тестовые среды и не обучает рекрутеров базовой проверке происхождения архивов, она сама оставляет злоумышленнику удобную дверь. Для разработчиков правило тоже простое: любое внешнее задание, которое требует локально поднять стек, подтянуть зависимости и особенно «ничего не трогать в server.js», нужно считать недоверенной нагрузкой. В 2026 году фраза «это просто тестовое» звучит уже примерно так же успокаивающе, как когда-то «это просто PDF».

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

Поделиться: Telegram X LinkedIn