CVE-2025-30154
reviewdog action-setup GitHub Action
2025-03-24
reviewdog action-setup GitHub Action contains an embedded malicious code vulnerability that dumps exposed secrets to Github Actions Workflow Logs.
Технический анализ и план устранения
Суть уязвимости
Уязвимость CVE-2025-30154 в GitHub Action reviewdog/action-setup классифицируется как внедрение вредоносного кода (Supply Chain Attack). В определенные версии экшена был встроен скрипт, который сканирует переменные окружения процесса и принудительно выводит содержимое секретов (Secrets) GitHub Actions в логи выполнения Workflow.
Это позволяет злоумышленникам перехватывать API-ключи, токены доступа и другие конфиденциальные данные, которые передаются в контекст выполнения шага. Уязвимость представляет критическую угрозу, так как компрометация секретов может привести к несанкционированному доступу к инфраструктуре и репозиториям.
Как исправить
Основной метод исправления — обновление версии GitHub Action до безопасного релиза, в котором вредоносный код был удален.
- Найдите в вашем репозитории файлы конфигурации Workflow (обычно в
.github/workflows/*.yml). - Обновите версию
reviewdog/action-setupдоv1.1.0или выше.
Пример исправления в YAML-файле:
- name: Setup reviewdog
uses: reviewdog/action-setup@v1
with:
reviewdog_version: latest
- После обновления версии необходимо принудительно отозвать (Rotate) все секреты, которые могли быть скомпрометированы, так как они уже могли попасть в логи.
Временные меры
Если немедленное обновление невозможно, используйте следующие методы защиты:
- Фиксация экшена по SHA-хэшу коммита (рекомендуемая практика безопасности):
- name: Setup reviewdog
uses: reviewdog/action-setup@a0d64031fd5d5561927588ee2dce1f34bd6db7c9
- Ограничение прав токена
GITHUB_TOKENдо минимально необходимых (Read-only):
permissions:
contents: read
- Очистка логов предыдущих запусков Workflow, чтобы предотвратить извлечение секретов из истории:
gh run delete --all
- Использование OpenID Connect (OIDC) вместо долгоживущих секретов там, где это возможно, чтобы минимизировать ущерб от утечки.