Выявлена компрометация обработчика changed-files в GitHub Actions, используемого в более 23 тыс. репозиториев
Исследователи по ИБ из StepSecurity обнаружили компрометацию в GitHub Actions проекта обработчика changed‑files. Это открытое решение, позволяющее автоматически запускать сценарии сборки и тестирования кодовых баз при срабатывании определённых событий, таких как поступление push‑запроса, создание релизов, открытие/закрытие issue и открытие/закрытие pull‑запросов. Обработчик changed‑files используется в более чем 23 тыс. репозиториев, применяющих GitHub Actions в инфраструктуре непрерывной интеграции, для отслеживания изменения файлов и каталогов.
По информации OpenNET, в репозиторий changed‑files было подставлено изменение 0e58ed8, добавляющее в файл index.js вредоносный код под предлогом переработки работы с файлами блокировок. При выполнении обработчика changed‑files вредоносная вставка собирала присутствующие в сборочном окружении ключи доступа и прочие конфиденциальные данные. В качестве канала для передачи информации за пределы сборочного окружения использовался вывод записей в сборочный лог, который не в приватных репозиториях доступен публично.
Всем разработчикам, пользовавшимся changed-files, требуется незамедлительно провести аудит своей инфраструктуры и проверить публичные логи систем интеграции на базе GitHub Actions на предмет утечки конфиденциальных данных. В случае использования скомпрометированной версии рекомендуется поменять ключи и провести анализ возможной компрометации своих систем. В настоящее время GitHub уже заблокировал репозиторий changed-files, но до этого около 14 часов вредоносные обновления были доступны для загрузки. Понять наличие вредоносного изменения можно по упоминанию bash в файле index.js.
Коммит был размещён от имени бота renovate, предназначенного для автоматизации операций
Читать на habr.com
