Злоумышленникам удалось получить контроль над NPM-пакетом coa и выпустить обновления 2.0.3, 2.0.4, 2.1.1, 2.1.3 и 3.1.3, включающие вредоносные изменения. Пакет coa, предоставляющий функции для разбора аргументов командной строки, насчитывает около 9 млн загрузок в неделю и используется в качестве зависимости у 159 других NPM-пакетов, включая react-scripts и vue/cli-service. Администрация NPM уже удалила выпуск с вредоносными изменениями и заблокировала публикацию новых версий до возвращения доступа к репозиторию основного разработчика.
Атака была совершена через взлом учётной записи разработчика проекта. Добавленные вредоносные изменения аналогичны тем, что использовались в совершённой две недели назад атаке на пользователей NPM-пакета UAParser.js, но ограничились атакой только на платформу Windоws (в блоках загрузки для Linux и macOS оставлены пустые заглушки). На систему пользователя с внешнего хоста загружался и запускался исполняемый файл для выполнения майнинга криптовалюты Monero (использовался майнер XMRig) и устанавливалась библиотека для перехвата паролей.
При формировании пакета с вредоносным кодом была допущена ошибка, которая вызывала сбой при установке пакета на некоторых системах, поэтому проблема была оперативно замечена и распространение вредоносного обновления блокировано на ранней стадии. Пользователем следует убедиться, что у них установлена версия coa 2.0.2 и желательно добавить в package.json своих проектов привязку (coa@2.0.2) к рабочей версии на случай повторной компрометации.
Дополнение: Следом зафиксирован аналогичный захват пакета rc, предназначенного для загрузки и разбора файлов конфигурации. Пакет насчитывает 14 млн загрузок в неделю и 1323 зависимости. Злоумышленники выпустили обновления 1.2.9, 1.3.9 и 2.3.9 с тем же вредоносным кодом, а администрация NPM его заблокировала. Нескомпрометированной является версия rc 1.2.8.
Атака была совершена через взлом учётной записи разработчика проекта. Добавленные вредоносные изменения аналогичны тем, что использовались в совершённой две недели назад атаке на пользователей NPM-пакета UAParser.js, но ограничились атакой только на платформу Windоws (в блоках загрузки для Linux и macOS оставлены пустые заглушки). На систему пользователя с внешнего хоста загружался и запускался исполняемый файл для выполнения майнинга криптовалюты Monero (использовался майнер XMRig) и устанавливалась библиотека для перехвата паролей.
При формировании пакета с вредоносным кодом была допущена ошибка, которая вызывала сбой при установке пакета на некоторых системах, поэтому проблема была оперативно замечена и распространение вредоносного обновления блокировано на ранней стадии. Пользователем следует убедиться, что у них установлена версия coa 2.0.2 и желательно добавить в package.json своих проектов привязку (coa@2.0.2) к рабочей версии на случай повторной компрометации.
Дополнение: Следом зафиксирован аналогичный захват пакета rc, предназначенного для загрузки и разбора файлов конфигурации. Пакет насчитывает 14 млн загрузок в неделю и 1323 зависимости. Злоумышленники выпустили обновления 1.2.9, 1.3.9 и 2.3.9 с тем же вредоносным кодом, а администрация NPM его заблокировала. Нескомпрометированной является версия rc 1.2.8.