Блог

Атаки TeamPCP — это предупреждение: ваш конвейер CI/CD стал новой линией фронта

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

Злоумышленники уже давно поняли, что это предположение неверно, и с тех пор активно этим пользуются. Самый быстрый способ массового распространения вредоносного ПО — это не прямая атака на ваши производственные системы, а захват конвейеров, которые изначально создают и поставляют ваше программное обеспечение. TeamPCP просто продемонстрировала это всем остальным.

Вот что произошло: злоумышленники использовали украденные учетные данные для публикации вредоносных версий Trivy, широко используемого сканера уязвимостей, и его GitHub Actions. Спустя несколько дней отдельная атака поразила LiteLLM, распространив через PyPI вредоносные модули, похищающие учетные данные, среди миллионов разработчиков. Затем — Telnyx, пакет Python, скачиваемый примерно 790 000 раз в месяц. 

«Самый быстрый способ массового распространения вредоносного ПО — это не прямая атака на ваши производственные системы, а захват конвейеров, которые собирают и поставляют ваше программное обеспечение...»

Это не просто серия несвязанных инцидентов, а целая стратегия. И она будет работать до тех пор, пока мы не перестанем относиться к системам CI/CD так, будто они чем-то отличаются от производственных систем.

Система работает так, как и задумано, и в этом заключается проблема

Конвейеры CI/CD — это наиболее критически важная среда в большинстве организаций, а также наименее безопасная. Они имеют доступ к учетным данным облачных сервисов, ключам подписи и системам развертывания. Они регулярно выполняют сторонний код практически без проверки. Такое сочетание — настоящий подарок для злоумышленников. 

В прошлом году злоумышленники взломали tj-actions/changed-files и раскрыли секретные данные более чем 23 000 репозиториев, перенаправив теги версий на вредоносный коммит. Совсем недавно автономный ИИ-бот под названием Hackerbot-Claw продемонстрировал, насколько легко можно воспользоваться этими рабочими процессами. 

Атаки TeamPCP не отличаются особой изощренностью. Просто планка не так высока. 

Проблема не в том, что команды разработчиков делают что-то не так. Проблема в том, что настройки по умолчанию в инструментах CI/CD небезопасны. Доверие подразумевается, средства контроля слабы, а радиус поражения огромен. Один скомпрометированный релиз может за считанные часы распространиться по тысячам организаций. Мы сами спроектировали систему так, чтобы она работала именно так.

Мы уже знаем, как это исправить

Исправления не сложны и не являются чем-то новым. У нас есть шаблоны и инструменты. Проблема в том, что мы не применяем их последовательно.

Избавьтесь от статических учетных данных, включая долгосрочные токены, PAT и статические ключи API. Считайте, что их украдут, потому что так и будет. Перейдите на краткосрочную федеративную идентификацию с OIDC. Учетные данные должны быть кратковременными и иметь строго ограниченную область действия.

Закрепите все, а затем проверьте то, что вы закрепили. Закрепление на хеше коммита недостаточно, если это действие подтягивает другие компоненты по изменяемому тегу. Ваша безопасность зависит от самой слабой ссылки в цепочке.

Обеспечьте соблюдение основных правил в ваших репозиториях. Защита веток, проверка PR, отсутствие обхода прав администратора, MFA во всей организации, подписанные коммиты. Ни один из этих советов не является новым. Gitsign упрощает процесс подписания по сравнению с PGP, даже если GitHub по-прежнему не делает его таким простым, как должно быть.

«Привязка к хешу коммита недостаточна… Ваша безопасность зависит от самого слабого звена в цепочке».

Относитесь к системам CI/CD как к производственным системам, потому что они таковыми и являются.

То, что мы наблюдаем сейчас, — это ранние фазы чего-то, что будет усугубляться. Каждый успешный взлом приводит к утечке новых учетных данных. Эти учетные данные используются для взлома других систем. Радиус воздействия растет. Именно так масштабируются атаки на цепочку поставок.

Именно так их и можно остановить, если мы готовы применять к нашим конвейерам ту же строгость, которую мы уже применяем везде.

Подписывайтесь на наш канал в Телеграм

Подписаться
CI/CD