Новости 38 пакетов выдавали себя за инструменты Apple и Google. Атака на разработчиков едва не закончилась масштабной компрометацией

NewsMaker

I'm just a script
Премиум
26,709
46
8 Ноя 2022
Ставка была сделана на доверие к привычным зависимостям и ошибку, которую легко не заметить.


5quhkya3v9dh66wt19aqipb0liereh3k.jpg

ИБ-специалисты раскрыли крупную вредоносную кампанию против разработчиков, в которой злоумышленник сделал ставку не на взлом готовых продуктов, а на слабые места сборочных процессов. Через публичный реестр NPM он пытался подсунуть вредоносные пакеты под видом внутренних инструментов крупных компаний, рассчитывая, что автоматические системы разработки сами загрузят подделку.

По данным Panther Threat Research, в период с 24 по 30 апреля 2026 года в NPM появились 38 вредоносных пакетов. Их связывают с индонезийским злоумышленником, использовавшим псевдоним «frank» и основной аккаунт frengki0707. Для публикации также применялись учётные записи raya4321, cketol и frengki4321.

Главной техникой стала Dependency Confusion (путаница зависимостей). Автор атаки подбирал имена с фрагментом «internal», чтобы пакеты выглядели как закрытые библиотеки Apple, Google, GCP, Alibaba и Aliyun. При ошибочной настройке CI/CD публичный пакет мог получить приоритет над настоящей внутренней зависимостью и выполниться во время обычной установки.

Самая крупная группа имитировала инструменты Apple, включая библиотеки App Store, утилиты PKI, CloudKit и инфраструктурные компоненты. В названиях встречались слова, указывающие на обход защит, скрытность и утечку данных. Отдельные версии вроде v3, v9 и v99 должны были придать пакетам вид обычных зависимостей в package.json.

Пакеты, нацеленные на Google и GCP, маскировались под утилиты сборки, логирования, монорепозиториев и аудита. Их задачей был сбор сервисных ключей GCP, OAuth-токенов и конфигураций Kubernetes. В кластере Alibaba злоумышленник имитировал внутренние компоненты Alibaba Cloud SDK и искал ключи Aliyun RAM. Серия frank-newton3 была ближе к универсальному инструментарию для поиска .env-файлов, переменных DB_, SSH-ключей и дампов MySQL или Postgres.

Вредоносный код запускался через postinstall -сценарии после стандартной команды npm install. Сначала пакеты собирали сведения о системе, включая имя пользователя, хост и данные ОС, затем искали секреты и передавали найденное на управляющую инфраструктуру. Особый интерес представляли NPM_TOKEN и NODE_AUTH_TOKEN, поскольку кража таких токенов могла позволить внедрить вредоносный код уже в легитимные пакеты.

Panther связывает кампанию с одним оператором по повторяющемуся псевдониму frank, сходным именам аккаунтов, индонезийским комментариям в коде и общим webhook-адресам в отдельных пакетах. Ротация учётных записей, по оценке компании, помогала сохранить часть инфраструктуры после удаления отдельных публикаций.

Командам разработки советуют проверять обращения к публичным NPM-пакетам с «internal» в названии, контролировать postinstall-сценарии в CI/CD и отслеживать доступ сборочных процессов к ~/.npmrc, ~/.aws/credentials и ~/.kube/config.
 
Источник новости
www.securitylab.ru

Похожие темы