Серьёзная атака на экосистему npm: были скомпрометированы пакеты, суммарно имеющие более 2 миллиардов еженедельных загрузок. Все они принадлежат одному разработчику.
🧨 Затронутые версии пакетов:
backslash 0.2.1
chalk-template 1.1.1
supports-hyperlinks 4.1.1
has-ansi 6.0.1
simple-swizzle 0.2.3
color-string 2.1.1
error-ex 1.3.3
color-name 2.0.1
is-arrayish 0.3.3
slice-ansi 7.1.1
color-convert 3.1.1
wrap-ansi 9.0.1
ansi-regex 6.2.1
supports-color 10.2.1
strip-ansi 7.1.1
chalk 5.6.1
debug 4.4.2
ansi-styles 6.2.2
📌 Общий охват — более 2 миллиардов загрузок пакетов в неделю!
🧑💻 Как это произошло?
Компрометация началась с фишинговой атаки, в результате которой злоумышленники получили доступ к npm‑аккаунту разработчика.
Вредоносный код ориентирован на кражу криптовалют, а не на установку бэкдоров или шифровальщиков. Но все же рекомендуем временно воздержаться от использования любых приложений использующих Ethereum, Bitcoin, Solana, Tron, Litecoin до обновлений всех потенциально затронутых приложений.
🦠 Как работает вредонос (по шагам):
1. Инжекция в браузер
Вредонос внедряется в браузер, подменяя ключевые функции:
fetch, XMLHttpRequest, window.ethereum, Solana API и др.
2. Анализ трафика и кошельков
Отслеживает сетевые ответы и данные транзакций.
Распознаёт адреса в Ethereum, Bitcoin, Solana, Tron, Litecoin и др.
3. Подмена адресов назначения
Заменяет валидные адреса на адреса злоумышленника, используя схожие на вид "lookalike"-адреса.
4. Перехват перед подписанием транзакций
Меняет параметры транзакций (получатель, разрешения и т.д.), до того как они подписаны.
5. Остаётся невидимым
Избегает подозрительной активности в UI, если обнаружен криптокошелёк.
Постоянно работает в фоне, следя за реальными транзакциями.
🔍 Больше информации:
📖 aikido.dev/blog/npm-debug-and-chalk-packages-compromised