x

SECURITY CAPSULE SIEM

Познакомьтесь с нашим решением по мониторингу событий
и выявлению инцидентов информационной безопасности

SC SIEM выигрывает там, где важна скорость, минимальные ресурсы и возможность быстро создать правила корреляции

ВЫПОЛНЯЙТЕ ТРЕБОВАНИЯ ГОСУДАРСТВА БЕЗ ЛИШНИХ РИСКОВ –

Интеграция с НКЦКИ под ключ — быстро и прозрачно

Во исполнение Федерального закона № 187-ФЗ «О безопасности критической информационной инфраструктуры Российской Федерации» — гарантия соответствия и управляемости процессов

ИНФОРМАЦИОННАЯ БЕЗОПАСНОСТЬ

УПРАВЛЯЙТЕ РИСКАМИ — НЕ ЖДИТЕ АТАК

Пентест для устойчивости и соответствия требованиям

Реалистичная проверка внешнего периметра: выявляем уязвимости до злоумышленников и подтверждаем готовность вашего бизнеса к киберугрозам.

Протестировать
17.03.2025 180 5 мин.

Атака на цепочку поставок через GitHub Action | Блог Касперского

Атаки на open source чаще всего сводятся к публикации новых вредоносных пакетов в репозиториях. Атака, произошедшая 14 марта, из другой лиги — злоумышленники скомпрометировали популярный процесс (GitHub Action) tj-actions/changed-files, который применяется более чем в 23000 репозиториев.  Инцидент получил номер CVE-2025-30066, этой уязвимости подвержены все репозитории, в которых использовался заражённый процесс changed-files. Хотя администрация заблокировала changed-files, а затем откатила его к безопасной версии, все, кто пользовался им должны провести реагирование на инцидент, а сообщество разработчиков — извлечь из него более общие уроки.

Что такое GitHub Actions

Рабочие процессы (GitHub Actions) упрощают разработку ПО при помощи автоматизации типовых задач DevOps. Они могут стартовать при наступлении каких-то событий в GitHub, например коммитов. У GitHub есть условный «магазин приложений», в котором можно взять готовый процесс и применить его в своём репозитории, например популярны процессы для автоматической инсталляции вспомогательных инструментов. Чтобы интегрировать в свой сборочный конвейер CI/CD такой готовый процесс GitHub, достаточно всего одной строчки кода.

Инцидент с компрометацией changed-files

14 марта популярный процесс tj-actions/changed-files, используемый чтобы получить любые измененные файлы в проекте, был заражён вредоносным кодом. Злоумышленники модифицировали код процесса и обновили ярлыки версий, чтобы включить вредоносный коммит во все версии GitHub Action. Это было сделано от имени бота Renovate, но по текущим данным бот не скомпрометирован, это была лишь маскировка анонимного коммита.

Вредоносный код в changed-files маскируется под функцию updateFeatures, которая на самом деле запускает вредоносный скрипт на Python и делает дамп памяти процесса Runner Worker, а затем ищет в нём данные, похожие на секреты (ключи AWS, Azure, GCP, токены GitHub PAT и NPM, учетные записи БД, закрытые ключи RSA). Если что-то похожее найдено, оно записывается в журнал процесса сборки. Как вредоносный код, так и украденные секреты записываются с простой обфускацией, двойным кодированием base64. Если журналы доступны публично, злоумышленники (причем не только авторы атаки, но и любые другие!) могут свободно скачать и расшифровать эти данные.

15 марта, спустя сутки после обнаружения инцидента, GitHub удалил процесс changed-files, в это время процессы CI/CD на его основе могли не функционировать. Спустя еще 8 часов репозиторий процесса восстановили в «чистой версии» и теперь changed-files снова работает без сюрпризов.

Меры по реагированию на инцидент

Поскольку журналы сборки в публичных репозиториях доступны посторонним, то они наиболее вероятно пострадали от утечки. Но в корпоративной среде целиком полагаться на предположение «у нас все репозитории приватные» тоже не стоит. В компаниях часто бывают как публичные, так и приватные репозитории, и если в их конвейерах CI/CD используются частично пересекающиеся секреты, то злоумышленники все еще могут использовать эти данные для компрометации реестров контейнеров или других ресурсов. По этому же сценарию возможна компрометация контейнеров или пакетов, создаваемых в рамках популярных open source проектов.

Авторы злополучного changed-files рекомендуют проанализировать журналы GitHub за 14 и 15 марта. Если в подразделе changed-files обнаружены необычные данные, их можно декодировать, чтобы понять, какая именно информация могла стать предметом утечки. Дополнительно стоит изучить журналы GitHub за этот период в поисках подозрительных IP-адресов.

Всем пользователям changed-files рекомендовано провести замену секретов, которые могли использоваться в сборке и утечь в этот период времени. В первую очередь надо обратить внимание на репозитории, в которых журналы CI публичны, во вторую — на приватные репозитории.

Кроме замены потенциально скомпрометированных секретов, рекомендуется скачать журналы для последующего анализа, а затем очистить их публичные версии.

Уроки инцидента

Сложность и разнообразие атак на цепочку поставок в разработке ПО растут: мы уже привыкли к атакам в виде вредоносных репозиториев, заражённых пакетов и образов контейнеров, встречали вредоносный код в тест-кейсах, а теперь и в процессах CI/CD. Требования строгой ИБ-гигиены должны распространяться на весь жизненный цикл ИТ-проекта.

Помимо требования строго отбирать исходную кодовую базу своего проекта (пакеты open source, образы контейнеров, инструменты автоматизации), необходимы комплексная система контейнерной безопасности и система управления секретами. Важно, что требования по особому обращению с секретами распространяются не только на исходный код проекта, но и на процессы сборки. У GitHub есть подробное руководство по безопасному конфигурированию GitHub Actions, самый большой раздел которого посвящен именно обращению с секретами.

Новость дополняется...
Источник: https://www.kaspersky.ru/blog/malicious-github-action-changed-files/39239/

Следите за киберугрозами вместе с экспертами CRATU!
Следите за киберугрозами вместе с экспертами CRATU!
Анализ реальных атак, техники APT-групп, новые уязвимости, практические рекомендации по детекту и доля иронии — всё, как вы любите.

CRATU — ваш инсайдерский источник по кибербезопасности. Подписывайтесь на наш Telegram-канал

Возврат к списку

НКЦКИ (ГосСОПКА):

Соблюдайте требования государства — защищайте бизнес

Подключение к НКЦКИ — это гарантия соответствия 187-ФЗ.

Подключиться

ПОСЛЕДНИЕ НОВОСТИ