METABYTE
К списку статей

GitHub Actions случайно раскрывает GitHub_TOKEN в логах — проверьте свои пайплайны

Если вы когда-нибудь выводили переменные окружения в логах CI, это может быть тот самый «oh no» момент.

13 мая 20262 мин чтения
GitHub Actions случайно раскрывает GitHub_TOKEN в логах — проверьте свои пайплайны

GitHub Actions снова в центре внимания, и на этот раз не из-за очередной фичи, а из-за уязвимости, которая может заставить многих разработчиков нервно перепроверить свои логи. Оказывается, в некоторых случаях GitHub_TOKEN может быть случайно раскрыт в логах сборки. Как будто нам не хватало головной боли с секретами в коде.

Проблема связана с тем, что при использовании actions/github-script или прямого вызова API через GITHUB_TOKEN, токен может попасть в вывод, если не быть аккуратным с обработкой ошибок. Представьте: вы дебажите пайплайн в 2 часа ночи, добавляете echo ${{ secrets.GITHUB_TOKEN }} для проверки, и тут — бам! — токен светится в логах, доступных всем, у кого есть доступ к репозиторию. Это как оставить ключи от квартиры на видном месте в подъезде.

GitHub уже выпустил патч в версии actions/github-script 6.4.1, который маскирует токен в логах. Но если вы используете кастомные скрипты или старые версии действий, стоит немедленно проверить свои настройки. Разработчикам, которые когда-либо видели в логах строчку типа ***, но не уверены, что это было, — советуем обновить зависимости и пересмотреть вывод команд.

Мораль сей басни: CI/CD — это круто, но секреты должны быть секретами. Не повторяйте дома (и на работе) ошибку с выводом токенов в логи.

Комментарий студии METABYTE: Мы всегда говорим: автоматизация — это здорово, но только если она не светит ваши пароли налево и направо. Проверьте свои GitHub Actions, а то как бы не пришлось менять все токены после очередного деплоя.

СЛЕДУЮЩИЙ ШАГ

Понравилось как мыслим?

Применяем те же принципы в клиентских проектах: AI, автоматизации, продукты, которые не умирают после релиза.