Компания Socket, специализирующаяся на безопасности цепочек поставок, раскрыла детали масштабной атаки, в ходе которой было скомпрометировано более 40 пакетов в реестре npm. Целью злоумышленников являлась кража учетных данных разработчиков, таких как API-токены и ключи облачных сервисов, а также создание постоянных бэкдоров в их репозиториях.

Механизм атаки заключался во внедрении вредоносной функции
Основным инструментом атаки служил скрипт
Целями сканирования были токен
Все собранные данные отправлялись на конечную точку
Среди идентифицированных скомпрометированных пакетов значится
Параллельно с инцидентом в npm была зафиксирована фишинговая кампания, нацеленная на пользователей официального реестра пакетов Rust, . Атака проводилась с целью кражи их учетных данных GitHub через поддельную страницу входа.
Злоумышленники рассылали пользователям электронные письма с тайпсквоттингового домена
Встроенная ссылка вела на фишинговый сайт
Рабочая группа по реагированию на угрозы безопасности Rust (The Rust Security Response Working Group) официально заявила, что никаких доказательств компрометации инфраструктуры нет. Домен
На момент публикации отчета фишинговая страница была уже недоступна. Команда Rust продолжает мониторинг активности в и предпринимает шаги для блокировки вредоносного домена.

Изображение носит иллюстративный характер
Механизм атаки заключался во внедрении вредоносной функции
NpmModule.updatePackage
в легитимные npm-пакеты. Эта функция скачивала оригинальный архив пакета, модифицировала его файл package.json
и внедряла локальный скрипт bundle.js
. После этого измененный архив перепаковывался и публиковался обратно в реестр npm как обновленная версия. Такой подход обеспечивал автоматическую троянизацию всех зависимых пакетов, которые использовали скомпрометированную библиотеку. Основным инструментом атаки служил скрипт
bundle.js
. Он загружал и запускал легитимный инструмент с открытым исходным кодом TruffleHog, предназначенный для поиска секретов. Скрипт сканировал хост-машину разработчика, поддерживая операционные системы Windows и Linux, в поисках конкретных учетных данных. Целями сканирования были токен
GITHUB_TOKEN
, токен NPM_TOKEN
, а также ключи доступа AWS: AWS_ACCESS_KEY_ID
и AWS_SECRET_ACCESS_KEY
. Для проверки валидности найденных npm-токенов вредоносное ПО использовало конечную точку whoami
. При обнаружении токена GitHub скрипт взаимодействовал с GitHub API. Также он предпринимал попытки обнаружения временных учетных данных в облачных средах сборки. Все собранные данные отправлялись на конечную точку
webhook[.]site
, контролируемую злоумышленниками. Ключевой и наиболее опасной частью атаки является механизм сохранения присутствия. Используя украденные персональные токены доступа GitHub, скрипт создавал рабочий процесс GitHub Actions, который записывался в репозиторий жертвы в директорию .github/workflows
. Этот бэкдор оставался активным даже после устранения первоначального заражения, позволяя злоумышленникам повторно извлекать данные при каждом запуске CI/CD-пайплайна. Среди идентифицированных скомпрометированных пакетов значится
@nativescript-community/sentry
версии 4.6.43
. Также были зафиксированы зараженные пакеты с версиями 1.2
, 0.2.1
и 5.11.1
. Разработчикам настоятельно рекомендуется провести аудит своих рабочих сред и сменить все npm-токены и другие секреты, которые могли быть скомпрометированы. Параллельно с инцидентом в npm была зафиксирована фишинговая кампания, нацеленная на пользователей официального реестра пакетов Rust, . Атака проводилась с целью кражи их учетных данных GitHub через поддельную страницу входа.
Злоумышленники рассылали пользователям электронные письма с тайпсквоттингового домена
rustfoundation[.]dev
. В письме содержалось ложное утверждение о компрометации инфраструктуры . Получателю предлагалось перейти по встроенной ссылке для смены своей учетной информации. Встроенная ссылка вела на фишинговый сайт
github.rustfoundation[.]dev
, который имитировал страницу входа GitHub. Цель этой страницы заключалась исключительно в сборе вводимых пользователями логинов и паролей. Рабочая группа по реагированию на угрозы безопасности Rust (The Rust Security Response Working Group) официально заявила, что никаких доказательств компрометации инфраструктуры нет. Домен
rustfoundation[.]dev
не контролируется ни Rust Foundation, ни проектом Rust. На момент публикации отчета фишинговая страница была уже недоступна. Команда Rust продолжает мониторинг активности в и предпринимает шаги для блокировки вредоносного домена.