Были обнаружены новые вредоносные пакеты NPM, устанавливающие троян удаленного доступа njRAT, позволяющий хакерам получить контроль над компьютером.
NPM - это менеджер пакетов JavaScript, который позволяет разработчикам и пользователям загружать пакеты и интегрировать их в свои проекты.
Поскольку NPM - это открытая экосистема, любой может загрузить новый пакет без проверки или сканирования на наличие вредоносных программ. Несмотря на то, что эта среда позволила создать репозиторий из 1 миллиона разнообразных пакетов, она также позволяет злоумышленникам легко загружать вредоносные пакеты.
Вредоносные NPM устанавливают njRAT
Сегодня компания Sonatype, занимающаяся безопасностью с открытым исходным кодом, обнаружила вредоносные пакеты NPM, маскирующиеся под легальный инструмент для создания баз данных из файлов JSON.Эти пакеты назывались jdb.js и db-json.js и были удалены NPM, но, как вы можете видеть на скриншоте ниже, они выглядят как безобидные пакеты, которые можно использовать для добавления новых функций в проект. .
Пакет JsonDB (db-json.js) на NPM
Как видно из файла package.json для пакета db-json.js, у него есть еще один пакет с именем jdb.js в качестве зависимости. Файл package.json заставляет NPM автоматически установить этот пакет также при установке пакета db-json.js.
Package.json для db-json
Этот пакет jdb.js включает в себя исполняемый файл module.js, package.json и patch.exe , как показано ниже. После установки NPM автоматически выполнит module.js, поскольку он настроен на автоматический запуск при установке.
содержимое пакета jdb
Этот сценарий JS, показанный ниже, сильно запутан, но запускает исполняемый файл patch.exe, который является вредоносной программой njRAT.
Обфусцированный файл JavaScript
После установки njRAT предоставляет злоумышленнику полный удаленный доступ к компьютеру жертвы, где он может выполнить следующие вредоносные действия:
- Измените реестр Windows
- Создавать и удалять файлы
- Загрузить файлы
- Выполнять команды
- Получите информацию о компьютере
- Возьмите под свой контроль компьютер
- Журнал нажатий клавиш
- Украсть пароли
- Убить процессы
- Делать скриншоты
декомпилированный исходный код njRAT
Каждый пакет загружался примерно по сотне раз каждый, но Ax Sharma из Sonatype сказал BleepingComputer, что, по их мнению, они поймали вредоносные NPM, прежде чем их можно было использовать в полной мере.
За последний год все чаще встречаются пакеты NPM, которые устанавливают вредоносное ПО или выполняют вредоносное поведение.
Недавно NPM удалил вредоносные пакеты под названием «fallguy» и «discord.dll», обнаружив, что они использовались для кражи токенов Discord и информации браузера из Google Chrome, Brave Browser, Opera и Yandex Browser.
Поскольку злонамеренные проекты NPM все чаще используют имена, аналогичные легитимным проектам, разработчики должны уделять пристальное внимание пакетам, которые они интегрируют в свои проекты.