По данным исследователей, злоумышленники, связанные с группой TeamPCP, внедрили вредоносные версии десятков пакетов в пространстве имён @tanstack. Это стало возможным после захвата CI/CD‑процесса проекта и публикации заражённых версий пакетов.
В пакеты был встроен вредоносный модуль Mini Shai‑Hulud — инструмент для кражи учётных данных. Он анализировал среду разработки и извлекал чувствительные токены из различных инструментов, включая системы CI и GitHub Actions.
Позже аналитики выяснили, что кампания быстро распространилась по экосистеме open‑source: более 160 пакетов npm и PyPI оказались затронуты, включая широко используемые инструменты разработки.
В ходе внутреннего расследования Grafana выяснила, что один из заражённых пакетов TanStack был выполнен внутри её среды разработки.
Вредоносный компонент, встроенный в пакет, похитил GitHub workflow‑токен, который использовался в CI/CD‑процессах компании.
После того как информация об атаке на TanStack стала публичной, Grafana начала процедуру массовой ротации учётных данных. Однако один токен случайно не был отозван — и оставался действительным.
Именно этот токен позволил злоумышленникам получить несанкционированный доступ к среде GitHub и репозиториям компании.
Согласно заявлениям Grafana и внешним отчётам, атакующие смогли:
По данным некоторых отчётов, среди скачанных данных могли быть:
При этом компания заявила, что данные клиентов или персональная информация пользователей не были затронуты.
После скачивания репозиториев злоумышленники направили Grafana требование выкупа, угрожая опубликовать украденные данные.
Хронология событий выглядит примерно так:
Компания подтвердила получение требования, но отказалась платить. Одновременно были немедленно аннулированы скомпрометированные учётные данные и начато судебно‑техническое расследование.
Grafana подчёркивает, что инцидент был ограничен только средой GitHub и не затронул производственную инфраструктуру.
По результатам расследования компании:
Фактически атака касалась репозиториев и внутренней документации, а не рабочих сервисов компании.
Зафиксированная активность сводилась к несанкционированному доступу и эксфильтрации данных. Попыток вмешательства в релизы программного обеспечения или инфраструктуру производства обнаружено не было.
При этом внешние наблюдатели отмечают, что детальные результаты судебной экспертизы не публиковались полностью, поэтому вывод о неизменности кодовой базы основан на выводах внутреннего расследования компании.
Случай с Grafana — типичный пример того, как работают современные атаки на цепочку поставок программного обеспечения.
Кампания Mini Shai‑Hulud распространялась через заражённые пакеты в популярных репозиториях разработчиков, нацеливаясь на CI/CD‑системы и среды разработки.
Типичная цепочка атаки выглядела так:
Grafana стала одним из наиболее заметных пострадавших downstream‑проектов: украденный CI‑токен и одна пропущенная ротация учётных данных дали злоумышленникам прямой доступ к её GitHub‑репозиториям.
Инцидент показывает растущую тенденцию: всё чаще атакующие нацеливаются не на производственные серверы, а на саму цепочку разработки, где автоматизация и токены CI могут открыть путь к исходному коду и внутренним системам компаний.
Comments
0 comments