Атака на TanStack (11 мая 2026 года)
11 мая 2026 года произошла масштабная атака на популярную библиотеку TanStack. За шесть минут злоумышленники опубликовали 84 вредоносные версии пакетов в пространстве @tanstack. Среди затронутых пакетов был @tanstack/react-router — он имеет более 12 млн загрузок в неделю.
Как это произошло:
- Злоумышленники использовали форк репозитория
TanStack/routerи отдельный коммит вне основной ветки. GitHub позволял обращаться к нему напрямую — это дало возможность добавить зависимость@tanstack/setupс prepare‑скриптом для запуска Bun и файлаtanstack_runner.js. - В скомпрометированные пакеты попал обфусцированный файл
router_init.js(около 2,3 МБ). При установке npm мог выполнить prepare‑скрипт Git‑зависимости — после этого вредоносная нагрузка запускалась на машине разработчика или CI‑раннере. - Атакующие получили временный npm‑токен через OIDC и опубликовали вредоносные версии, не крадя долгоживущих npm‑ключей.
Цели злоумышленников:
- Кража учётных данных и секретов из CI/CD‑сред, включая GitHub Actions.
- Самораспространение: червь активировался при установке поражённого пакета, искал токены к NPM, AWS, GCP, Azure, HashiCorp, Kubernetes и закрытые ключи SSH. Найденные данные отправлялись через децентрализованный P2P‑мессенджер getsession.org.
Реакция TanStack:
- Токены npm не были украдены.
- Рабочий процесс публикации npm не был скомпрометирован.
- Вредоносный код запустили в CI, после чего пакеты опубликовали в npm от имени проекта через доверенную OIDC‑связку.
Другие случаи компрометации цепочек поставок
1. Атака на Axios (март 2026 года)
Злоумышленники взломали npm‑аккаунт основного мейнтейнера проекта и выпустили две вредоносные версии пакета:
axios@1.14.1axios@0.30.4
В заражённые версии добавили зависимость plain-crypto-js@4.2.1. При установке запускался обфусцированный postinstall‑скрипт setup.js, который работал как дроппер и подбирал полезную нагрузку под ОС (Windows, macOS, Linux).
- Атрибуция: северокорейская группировка UNC1069.
2. Атака на DAEMON Tools (апрель–май 2026 года)
С 8 апреля 2026 года через официальный сайт DAEMON Tools распространялись троянизированные версии ПО с бэкдором. Заражённые версии (с 12.5.0.2421 по 12.5.0.2434) содержали вредоносный код в файлах:
DTHelper.exeDiscSoftBusServiceLite.exeDTShellHlp.exe
Механизм атаки:
- После установки заражённого ПО на машину проникал вредонос первого этапа — он собирал базовую информацию о системе.
- Данные отправлялись на сервер атакующих для профилирования жертв.
- В некоторых случаях разворачивался легковесный бэкдор, способный:
- выполнять команды;
- загружать дополнительные файлы;
- запускать код прямо в памяти.
- Предположительная атрибуция: злоумышленники, вероятно, говорят на китайском языке (атрибуция предварительная).
3. Атака на Trivy, Checkmarx и LiteLLM (март 2026 года)
Группировка TeamPCP провела серию атак:
- Trivy: скомпрометировали Docker‑образы сканера уязвимостей, внедрили стилер TeamPCP Cloud Stealer. Он собирал секреты из памяти CI‑раннеров: GitHub‑токены, SSH‑ключи, облачные учётные данные, npm‑токены.
- Checkmarx: внедрили вредоносный код в два GitHub Actions проекта (
ast-github-actionиkics-github-action), а также в расширенияast-resultsиcx-dev-assistна платформе Open VSX. - LiteLLM: опубликовали вредоносные версии библиотеки в PyPI (
1.82.7и1.82.8). Версия1.82.8распространяла малварь TeamPCP Cloud Stealer через .pth‑файл — код выполнялся при каждом запуске Python‑интерпретатора.
4. Атака на Mistral AI (май 2026 года)
TeamPCP пригрозили опубликовать исходный код французской ИИ‑компании Mistral AI, если не смогут продать украденные данные за $25 тыс.
Детали:
- Утечка произошла после того, как устройство разработчика пострадало от атаки на цепочку поставок TanStack.
- Злоумышленники на короткое время внедрили вредоносный код в некоторые SDK‑пакеты Mistral AI.
- По данным компании, пострадавшие данные не входили в основные репозитории кода. Ни размещённые сервисы, ни пользовательские данные, ни исследовательские среды не были скомпрометированы.
Общие тенденции и рекомендации
Атаки на цепочки поставок становятся всё более распространёнными и масштабными. Злоумышленники эксплуатируют доверие разработчиков к сторонним библиотекам и используют скомпрометированные учётные данные для дальнейшего распространения вредоносного ПО.
Рекомендации по защите:
- Проверяйте зависимости и их версии — используйте инструменты аудита (Snyk, Dependabot, OWASP Dependency-Check).
- Используйте краткосрочные учётные данные вместо долгоживущих токенов.
- Внедряйте OIDC и другие механизмы верификации происхождения пакетов.
- Регулярно ротируйте секреты — это снижает риск длительного доступа злоумышленников.
- Изолируйте среды выполнения — ограничьте права CI/CD и сборочных процессов.
- Фиксируйте версии зависимостей — используйте lock‑файлы (
package-lock.json,pip freeze,Gemfile.lock). - Обучайте команду — повышайте осведомлённость о рисках атак на цепочки поставок.
- Мониторите подозрительные действия — настраивайте алерты на неожиданные обновления зависимостей или изменения в CI/CD.