Пакет “oscompatible” в npm оказался ловушкой: как он устанавливает скрытый троян на компьютерах с Windows и дает злоумышленникам удаленный доступ

Пакет “oscompatible” в npm оказался ловушкой: как он устанавливает скрытый троян на компьютерах с Windows и дает злоумышленникам удаленный доступ

Дерзкий подход к компрометации открыл хакерам доступ к цепочке поставок открытого ПО.

image

В реестре npm недавно был обнаружен вредоносный пакет, развёртывающий сложный троян удалённого доступа (RAT) на заражённых компьютерах Windows. Пакет под названием «oscompatible» был опубликован 9 января 2024 года и загружен 380 раз до момента его удаления.

Компания Phylum, специализирующаяся на безопасности цепочек поставок программного обеспечения, сообщила , что «oscompatible» содержал исполняемый файл, динамически подключаемую библиотеку (DLL) и зашифрованный DAT-файл, наряду с JavaScript-файлом.

В ходе атаки JavaScript-файл («index.js») запускает скрипт «autorun.bat», который сначала проверяет совместимость с фирменной операционной системой Microsoft и, в случае утвердительного результата, проверяет наличие прав администратора. Если их нет, для атаки используется законный компонент браузера Edge «cookie_exporter.exe», запускаемый через PowerShell.

Запуск исполняемого файла вызывает запрос контроля учётных записей пользователей (UAC), требующий административных учётных данных для выполнения.

Далее злоумышленник запускает вышеупомянутую DLL-библиотеку («msedge.dll»), используя технику DLL Search Order Hijacking, для выполнения следующего этапа атаки.

Троянизированная версия библиотеки предназначена для расшифровки DAT-файла («msedge.dat») и запуска уже другой библиотеки («msedgedat.dll»), которая устанавливает соединение с контролируемым хакерами доменом «kdark1[.]com» для получения ZIP-архива.

Этот архив содержит программное обеспечение для удалённого доступа AnyDesk и троян удалённого доступа, также упакованного в DLL-библиотеку («verify.dll»). Троян способен получать инструкции от сервера управления и контроля через WebSockets и собирать конфиденциальную информацию с хоста.

Phylum сообщает, что троян также устанавливает вредоносные расширения в файл Secure Preferences, в котором хранятся настройки браузера Chrome, налаживает связь с AnyDesk, запускает фейковую анимацию обновления Windows 10 и блокирует выключение Windows.

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

Хотя «oscompatible», по-видимому, является единственным npm-модулем, использованным в рамках этой кампании, выводы исследователей снова указывает на то, что злоумышленники всё чаще нацеливаются на экосистемы открытого программного обеспечения для проведения атак на цепочки поставок.

Phylum отмечает, что «процесс расшифровки данных, использование отозванного сертификата для подписи, загрузка дополнительных файлов из удалённых источников и попытка маскироваться под стандартный процесс обновления Windows являются относительно сложными по сравнению с тем, что обычно используется для атак на OpenSource-экосистемы».

Расследование Phylum было опубликовано на фоне отчёта компании Aqua Security, согласно которому около 21% из 50 000 самых загружаемых npm-пакетов — устарели и подвергают пользователей рискам безопасности. Сюда входят как архивированные и удалённые репозитории GitHub, связанные с пакетами, а также те пакеты, которые поддерживаются без видимого репозитория, истории коммитов и отслеживания проблем.

Если вам нравится играть в опасную игру, присоединитесь к нам - мы научим вас правилам!

Подписаться