Атака GhostAction похищает 3325 секретов из проектов GitHub

2 сентября 2025 года пользователь GitHub, известный как Grommash9, закоммитил новый файл рабочего процесса в проект FastUUID. Файл, названный «Github Actions Security», выглядел как скрипты автоматизации рутинных задач, но позже был обнаружен вредоносный код, предназначенный для сбора секретных данных CI/CD и отправки их на внешний сервер.
FastUUID — это библиотека Python с открытым исходным кодом, используемая для эффективной генерации и работы с универсальными уникальными идентификаторами (UUID).
К 5 сентября специалисты по кибербезопасности из GitGuardian обнаружили необычную активность и подтвердили, что репозиторий FastUUID был скомпрометирован. Рабочий процесс включал команду, которая упаковывала секретные данные в HTTP-запрос POST и передавала их на сервер, расположенный по адресу 45.139.104.115
.
Токен PyPI проекта был среди украденных данных, но следователи не обнаружили никаких вредоносных пакетов в период взлома. PyPI отреагировал своевременно, заблокировав проект в режиме «только для чтения», чтобы предотвратить дальнейшее злоупотребление, пока сопровождающий удалял вредоносный коммит.
Последующий анализ GitGuardian показал, что сотни репозиториев были взломаны с использованием практически идентичных рабочих процессов. Компания назвала эту атаку «GhostAction» — атакой на цепочку поставок.
Согласно отчёту GitGuardian, предоставленному Hackraed.com, в общей сложности пострадали 327 разработчиков в 817 репозиториях, и злоумышленники похитили более 3325 секретных данных. Среди них были учётные данные DockerHub и токены GitHub для ключей публикации npm, которые могли быть использованы не по назначению или повлиять на цепочки поставок программного обеспечения.
В ходе атаки злоумышленники также анализировали легитимные файлы рабочих процессов, чтобы определить, какие секреты использовались, а затем жестко кодировали эти же имена секретов в своих вредоносных рабочих процессах.
Более того, каждый коммит был персонализирован, адаптируя атаку к каждому проекту. Сервер эксфильтрации оставался неизменным на протяжении всей кампании, всегда указывая на домен « plesk.page
», который перестал работать ближе к вечеру 5 сентября.
Команда GitGuardian напрямую сообщала о проблемах в сотнях скомпрометированных репозиториев, чтобы уведомить разработчиков. Им удалось уведомить ответственных за поддержку 573 проектов, в то время как другие либо отключили GitHub, либо полностью удалили репозиторий. Общение с пострадавшими разработчиками также подтвердило, что некоторые секретные данные активно использовались злоумышленниками, пытаясь получить доступ к средам и службам баз данных AWS .
Инцидент затронул проекты на нескольких языках программирования: вредоносные коммиты рабочих процессов были обнаружены в репозиториях Python, JavaScript, Rust и Go. Кроме того, несколько компаний обнаружили, что все их портфели SDK были взломаны. Поскольку злоумышленники скомпрометировали множество проектов, украденные токены npm и PyPI всё ещё могли быть использованы для публикации вредоносных релизов.
К вечеру 5 сентября GitGuardian уведомил GitHub, npm и PyPI о кампании. Отделы безопасности на этих платформах теперь отслеживают подозрительные публикации пакетов и связанную с ними активность. На данный момент по меньшей мере 9 проектов npm и 15 проектов PyPI остаются под угрозой из-за скомпрометированных токенов, хотя никаких подтвержденных вредоносных релизов пока не было.
GitGuardian опубликовал индикаторы компрометации, включая имя файла рабочего процесса, сообщение о фиксации и адрес вредоносного сервера, чтобы помочь командам определить, были ли затронуты их проекты.
Расследование кампании GhostAction все еще продолжается, но текущие результаты показывают, что это одна из крупнейших на сегодняшний день атак на рабочий процесс GitHub, затронувшая сотни проектов и раскрывшая тысячи секретов.
HackRead