Атака была начата через GitHub Action "tj-actions/changed-files", используемую в публичном CI/CD-процессе open-source проекта agentkit от Coinbase. Целью атаки, по всей видимости, было получение доступа к конфиденциальным данным для последующих атак.

Исследователи из Palo Alto Networks Unit 42 (Омер Гил, Авиаd Hahami, Аси Гринхолтс и Ярон Авиталь) зафиксировали, что несмотря на попытки эксплуатации секретов Coinbase, злоумышленнику не удалось их использовать или опубликовать какие-либо пакеты.
Компрометация Action "tj-actions/changed-files" была обнаружена 14 марта 2025 года, получила идентификатор CVE-2025-30066 и оценку CVSS 8.6.
Инцидент привёл к утечке секретов в 218 репозиториях, где были скомпрометированы несколько десятков учетных данных для DockerHub, npm, Amazon Web Services, а также GitHub install access tokens и кратковременные GITHUB_TOKEN, действующие только во время выполнения workflow.
Атака распространилась посредством компрометации тега v1 "reviewdog/action-setup" — зависимости для tj-actions/changed-files через tj-actions/eslint-changed-files, получив идентификатор CVE-2025-30154 с оценкой CVSS 8.6. Эксплуатация уязвимости позволила злоумышленнику получить Personal Access Token (PAT) для внесения изменений и внедрения вредоносного кода во всех зависимых репозиториях.
Технические детали указывают, что выполнение tj-actions/eslint-changed-files привело к утечке секретов CI runner, в том числе PAT для учетной записи tj-bot-actions. Атакующий использовал метод fork'ов, вносил изменения в форки с последующим созданием pull request, содержащих «подвешенные коммиты», что сопровождалось созданием множества временных аккаунтов и сокрытием информации в логах.
Подозрения вызывает неидентифицированный доступ к токену с правами записи в организации reviewdog. Учетная запись "iLrmKCu86tjwp8", инициировавшая fork pull request, могла использовать временный или анонимный email, что нарушает политику GitHub; компания активно изучает этот вопрос.
Представитель GitHub заявил, что данные инциденты не свидетельствуют о компрометации их систем, поскольку затронуты были проекты с открытым исходным кодом, поддерживаемые пользователями, и рекомендовал тщательно проверять сторонние GitHub Actions и пакеты согласно Acceptable Use Policies.
Дополнительное расследование выявило подозрительные аккаунты "2ft2dKo28UazTZ" и "mmvojwip", которые создавали форки репозиториев, связанных с Coinbase (onchainkit, agentkit, x402), и модифицировали changelog.yml в агентkit через fork pull requests, направляя на вредоносную версию tj-actions/changed-files с использованием скомпрометированного PAT.
Кампания включала применение различных полезных нагрузок: одна из них выполняла дамп памяти runner'а и выводила секреты, сохранённые в переменных среды, а другая целенаправленно извлекала GITHUB_TOKEN для репозиториев Coinbase. Омер Гил отметил, что выбор разных payload демонстрирует продуманную тактику, а смена стратегии атаки всего через 20 минут после устранения уязвимости в agentkit указывает на возможную цель финансовой выгоды и похищения криптовалюты; инцидент был устранён 19 марта 2025 года.

Изображение носит иллюстративный характер
Исследователи из Palo Alto Networks Unit 42 (Омер Гил, Авиаd Hahami, Аси Гринхолтс и Ярон Авиталь) зафиксировали, что несмотря на попытки эксплуатации секретов Coinbase, злоумышленнику не удалось их использовать или опубликовать какие-либо пакеты.
Компрометация Action "tj-actions/changed-files" была обнаружена 14 марта 2025 года, получила идентификатор CVE-2025-30066 и оценку CVSS 8.6.
Инцидент привёл к утечке секретов в 218 репозиториях, где были скомпрометированы несколько десятков учетных данных для DockerHub, npm, Amazon Web Services, а также GitHub install access tokens и кратковременные GITHUB_TOKEN, действующие только во время выполнения workflow.
Атака распространилась посредством компрометации тега v1 "reviewdog/action-setup" — зависимости для tj-actions/changed-files через tj-actions/eslint-changed-files, получив идентификатор CVE-2025-30154 с оценкой CVSS 8.6. Эксплуатация уязвимости позволила злоумышленнику получить Personal Access Token (PAT) для внесения изменений и внедрения вредоносного кода во всех зависимых репозиториях.
Технические детали указывают, что выполнение tj-actions/eslint-changed-files привело к утечке секретов CI runner, в том числе PAT для учетной записи tj-bot-actions. Атакующий использовал метод fork'ов, вносил изменения в форки с последующим созданием pull request, содержащих «подвешенные коммиты», что сопровождалось созданием множества временных аккаунтов и сокрытием информации в логах.
Подозрения вызывает неидентифицированный доступ к токену с правами записи в организации reviewdog. Учетная запись "iLrmKCu86tjwp8", инициировавшая fork pull request, могла использовать временный или анонимный email, что нарушает политику GitHub; компания активно изучает этот вопрос.
Представитель GitHub заявил, что данные инциденты не свидетельствуют о компрометации их систем, поскольку затронуты были проекты с открытым исходным кодом, поддерживаемые пользователями, и рекомендовал тщательно проверять сторонние GitHub Actions и пакеты согласно Acceptable Use Policies.
Дополнительное расследование выявило подозрительные аккаунты "2ft2dKo28UazTZ" и "mmvojwip", которые создавали форки репозиториев, связанных с Coinbase (onchainkit, agentkit, x402), и модифицировали changelog.yml в агентkit через fork pull requests, направляя на вредоносную версию tj-actions/changed-files с использованием скомпрометированного PAT.
Кампания включала применение различных полезных нагрузок: одна из них выполняла дамп памяти runner'а и выводила секреты, сохранённые в переменных среды, а другая целенаправленно извлекала GITHUB_TOKEN для репозиториев Coinbase. Омер Гил отметил, что выбор разных payload демонстрирует продуманную тактику, а смена стратегии атаки всего через 20 минут после устранения уязвимости в agentkit указывает на возможную цель финансовой выгоды и похищения криптовалюты; инцидент был устранён 19 марта 2025 года.