- Імовірно, GitHub Action tj-actions/changed-files був скомпрометований у рамках атаки на ланцюг поставок, що потенційно призвело до витоку секретів із конвеєрів CI/CD.
- Дослідження вказують, що атака почалася приблизно 14 березня 2025 року, вплинувши на понад 23 000 репозиторіїв, із секретами, які відображалися у загальнодоступних журналах збірки.
- Докази схиляються до того, що шкідливий код вивантажував пам’ять CI-раннера, а секрети кодувалися у base64 двічі для публічної видимості.
Передумови
tj-actions/changed-files — це популярна дія GitHub, яка використовується для визначення змінених файлів у репозиторіях, допомагаючи в процесах CI/CD. Нещодавно вона стала центром інциденту безпеки, який може вплинути на багатьох користувачів, що покладаються на автоматизовані робочі процеси.
Деталі вразливості
Вразливість, відстежувана як CVE-2025-30066, була пов’язана з шкідливим оновленням дії, ймовірно через несанкціонований доступ до репозиторію. Це оновлення, здається, ввело код, який витягує та записує у журнали чутливі секрети робочого процесу, такі як ключі API та токени, із пам’яті CI-раннера. Для загальнодоступних репозиторіїв ці журнали є доступними, що створює значний ризик розкриття секретів, хоча дані зашифровані через подвійне кодування у base64.
Вплив і реакція
Інцидент, про який вперше повідомили 15 березня 2025 року, призвів до рекомендацій щодо негайних дій, включаючи перегляд робочих процесів із 14 по 15 березня 2025 року, декодування будь-якого несподіваного виведення, відкликання розкритих секретів і оновлення до безпечної альтернативи, такої як запропонована StepSecurity (Harden-Runner detection). Скомпрометований репозиторій було видалено, а пов’язані шкідливі скрипти усунуто.
Несподіваним аспектом є те, що атака також становила ризик для приватних репозиторіїв, де внутрішні переглядачі з доступом могли потенційно бачити витік секретів, а не лише публічні, що розширює масштаб впливу.