Пакет imgdecode из кампании MALFEX содержит загрузчик для Windows
Кампания MALFEX нацелена на разработчиков Windows. В неё входит npm-пакет imgdecode: версии 1.0.0–1.0.3, опубликованные пользователем malfexteste8, содержат вредоносный нативный модуль. Системы, на которых загрузили этот пакет или связанные с ним пакеты MALFEX, следует считать потенциально скомпрометированными.
Загрузка и выполнение вредоносного кода
В пакет включено предварительно скомпилированное 64-битное нативное дополнение Node.js по пути prebuilds/win32-x64/imgdecode.node. При импорте пакета загружается DLL, причём для этого не нужны установочный скрипт или этап сборки. Начиная с версии 1.0.1 вредоносный код выполняется при инициализации модуля N-API.
Загрузчик запускается только тогда, когда стандартный вывод подключён к интерактивной консоли Windows. В средах CI, песочницах и контекстах с перенаправленным выводом вероятность его активации ниже. DLL использует строки, зашифрованные с помощью XOR, и динамически разрешает вызовы Windows API, связанные с сетевыми операциями и внедрением кода в процессы.
Модуль загружает зашифрованные данные с raw.githubusercontent.com/cavecrew/proj/main/banner.jpg и расшифровывает ответ с помощью AES-256-CBC. Ключ получают из строки nif-runtime-2027. Затем шеллкод внедряется в приостановленный процесс dllhost.exe. Ожидается, что полезная нагрузка начинается с исполняемого шеллкода, а не с обычного заголовка PE.
Если удалённое внедрение не удаётся, загрузчик пытается выполнить код внутри процесса Node.js с помощью функций VirtualAlloc, RtlMoveMemory, VirtualProtect и CreateThread. Перед созданием удалённого потока загрузчик не проверяет возвращаемое значение функции VirtualProtectEx.
Данные banner.jpg восстановить не удалось, поэтому точный следующий этап остаётся неподтверждённым. При этом связанная инфраструктура MALFEX использует то же место промежуточного хранения на GitHub и ту же схему шифрования. В ней также применяется загрузчик на языке Go, SHA-256-хеш которого связан с кампанией. Загрузчик извлекает setup.exe с 104.234.65[.]75:700. Это приложение Node.js размером 71,5 МБ, которое идентифицировано как стиллер и инструмент удалённого доступа.
Возможности и признаки заражения
Предполагаемые возможности приложения включают кражу учётных данных и файлов cookie из браузеров, сбор токенов Discord, кражу данных о криптовалюте и игровых данных, а также поиск файлов с конфиденциальной информацией. Кроме того, ему приписывают функции удалённого доступа (RAT) через WebSockets, закрепление с помощью ключей Run и запланированных задач, а также модификацию или удаление данных истории событий Windows и PowerShell.
К соответствующим индикаторам относятся:
- запуск процесса
dllhost.exeизnode.exeбез аргумента/Processid; - соединения с
raw.githubusercontent.com, за которыми следует подозрительная активностьdllhost.exe; - нативные модули, импортирующие сетевые и криптографические API при отсутствии легитимной функциональности обработки изображений.
Авторы отчёта рекомендуют специалистам по реагированию на инциденты изолировать затронутые хосты, собрать образы оперативной памяти, проверить механизмы закрепления и журналы событий. Также рекомендуется обновить учётные данные, токены, ключи и секреты кошельков, использовавшиеся на этих системах.
Отчет получен из сервиса CTT Report Hub. Права на отчет принадлежат его владельцу.
Ознакомиться подробнее с отчетом можно по ссылке.



