Тринадцать npm-пакетов, 48 секунд, один поддельный SDK кошелька

Скоординированная атака на реестр npm привела к загрузке 13 поддельных пакетов SDK кошельков в стиле Coinbase всего за 48 секунд, демонстрируя, как быстро вредоносный код может маскироваться под доверенные инструменты. Разработчики, устанавливающие пакет только на основании знакомого названия, могут непреднамеренно внедрить поддельный SDK в свои приложения.

Пакеты появились между 04:54:59 и 04:55:48 UTC 7 сентября 2026 года. Такие названия, как cb-wallet-http и scw-core, перекликаются с официальным пространством имен @coinbase/wallet-sdk. Вместо тайпосквоттинга злоумышленники использовали знакомые строки в качестве префиксов, надеясь, что рекомендация коллеги или пост на форуме убедят пользователей в их легитимности.

Все 13 релизов имели одинаковую базовую конфигурацию: версию 0.0.1-security, пустой список мейнтейнеров и стандартные метаданные npm, отображаемые сразу после публикации. Идентичная настройка указывает на использование одного скрипта, который массово генерировал пакеты, что является признаком автоматизации, а не ручного труда.

Открытая модель публикации npm позволяет любому пользователю загружать пакеты без предварительной проверки, что делает возможными подобные атаки. Прошлые инциденты в цепочке поставок (supply-chain) показали, что как только вредоносный код попадает в дерево зависимостей, он запускается на каждой машине, где устанавливается этот пакет.

NPM еще не установил виновных и не объяснил, как код распространился за пределы первоначальных загрузок. Также неясно, были ли нацелены злоумышленники именно на пользователей Coinbase или они просто наводнили реестр правдоподобно выглядящими названиями в надежде, что некоторые из них будут приняты на вооружение.

Что разработчики могут сделать сейчас

  • Проверяйте издателя пакета перед его добавлением; официальные SDK размещаются в верифицированных пространствах имен (scopes) организаций.
  • Используйте инструменты для сканирования зависимостей на наличие известных вредоносных сигнатур.
  • Фиксируйте точные версии в lock-файлах и избегайте установки недавно опубликованных пакетов без проверки.
  • Отдавайте предпочтение реестрам, требующим двухфакторную аутентификацию для мейнтейнеров.

За чем стоит следить

  • Ужесточит ли npm проверку пакетов, имитирующих известные бренды.
  • Появление общественных черных списков, помечающих имена-самозванцы.
  • Обновления от исследователей безопасности относительно любой активной эксплуатации этих 13 поддельных SDK.

Этот эпизод доказывает, что знакомое название не является гарантией безопасности. Бдительность и проверка остаются самыми эффективными методами защиты от атак на цепочку поставок в open-source экосистеме.