Хакеры модифицировали tj-actions/changed-files, чтобы копировать учетные данные из памяти серверов.
Программное обеспечение с открытым исходным кодом, используемое более чем 23 000 организациями, было скомпрометировано вредоносным кодом, похищающим учетные данные. Хакеры получили несанкционированный доступ к учетной записи одного из сопровождающих проекта, что привело к серьезной атаке на цепочку поставок.
Целью атаки стал tj-actions/changed-files — популярный инструмент в GitHub Actions , который помогает автоматизировать процессы в разработке. Злоумышленники внесли изменения в код, из-за чего он начал копировать содержимое памяти серверов, извлекать учетные данные и записывать их в лог-файлы. В результате тысячи репозиториев, доверявших этому инструменту, раскрыли свои секретные ключи и пароли в открытом доступе.
Эксперты в области безопасности отмечают, что уязвимость GitHub Actions заключается в возможности изменять код и получать доступ к секретным переменным без строгой проверки. Многие пользователи не закрепляют зафиксированные версии кода, а используют общие теги, что позволяет хакерам подменять файлы без обнаружения.
Подозрительная активность была впервые замечена специалистами StepSecurity, которые зафиксировали неожиданное сетевое подключение. Вскоре исследователи из Wiz подтвердили , что атака привела к утечке данных, включая ключи доступа AWS, GitHub Personal Access Tokens, токены npm и закрытые RSA-ключи. По их данным, затронуты десятки репозиториев, в том числе корпоративных.
Сопровождающий проекта tj-actions подтвердил , что злоумышленники получили доступ к учетным данным бота @tj-actions-bot, однако способ компрометации неизвестен. Пароль был изменен, а для дополнительной защиты аккаунт теперь использует passkey — механизм двухфакторной аутентификации по стандарту FIDO.
GitHub заявил, что его инфраструктура не была взломана. В рамках предосторожности компания временно приостановила работу учетных записей, связанных с атакой, и удалила вредоносные изменения. После устранения угрозы доступ был восстановлен.
Инцидент подчеркивает опасность атак на цепочку поставок в экосистеме с открытым исходным кодом. В прошлом году аналогичная атака произошла с xz Utils — утилитой сжатия данных, где злоумышленники заложили бэкдор, позволявший получать привилегированный доступ к серверам.
Администраторам рекомендуется немедленно проверить свои системы на предмет компрометации и пересмотреть политику безопасности, используя только зафиксированные версии кода, а не общие теги. Подробные инструкции по защите опубликованы экспертами из StepSecurity, Wiz и Semgrep .
Ранее сообщалось о другой атаке, нацеленной на разработчиков GitHub. Злоумышленники использовали фишинговую кампанию, рассылали поддельные предупреждения безопасности, сообщая о «необычной попытке входа» с IP-адреса в Исландии. Эти письма предлагали срочно обновить пароль и включить двухфакторную аутентификацию, но ссылки вели на вредоносное OAuth-приложение «gitsecurityapp».
Вредоносное приложение запрашивало полномочия, позволяющие полностью контролировать репозитории жертвы, управлять пользователем, изменять обсуждения, работать с организациями, а также удалять репозитории. После ввода данных приложение генерировало OAuth-токен и отправляло его на удалённый сервер, предоставляя хакерам полный контроль над скомпрометированной учётной записью. Атака затронула около 12 000 репозиториев.