
JetBrains подтвердила, что её сервис Cadence взломали через уязвимость TeamCity на сервере, который должны были пропатчить, но не пропатчили. Это хрестоматийное напоминание: ваш CI/CD-конвейер — это продакшн, а его секреты открывают доступ ко всему, что стоит ниже по потоку.
Уязвимость TeamCity, стоящая за взломом
По итогам собственного расследования JetBrains атакующие проэксплуатировали CVE-2026-63077 на непропатченном экземпляре TeamCity, который был помечен на обновление, но так его и не получил. Доступ дотянулся до бэкапа 2024 года, пользователей AWS IAM, файлов в S3 и, потенциально, исходного кода и учётных данных. Компания призвала клиентов ротировать токены и секреты.
Больнее всего здесь не сама уязвимость TeamCity, а то, что о необходимости патча знали, и всё равно её пропустили. Именно в разрыве между «мы про это знаем» и «мы это починили» и живёт большинство реальных взломов.
Почему CI/CD остаётся самой ценной недозащищённой целью
Сборочный сервер — не вспомогательный инструмент, а одна из самых мощных машин, что у вас есть. Чтобы делать свою работу, TeamCity держит все ключи от королевства в одном месте:
- облачные учётки: ключи и роли AWS IAM, дотягивающиеся до продакшна и хранилищ;
- исходный код: вашу интеллектуальную собственность и, что хуже, карту всех прочих слабостей;
- ключи подписи и деплой-токены: возможность выкатить код, которому доверяет всё ниже по потоку;
- доступ в прод: конвейеры, которые по замыслу пушат в живые системы.
Скомпрометируйте конвейер, и всё это достаётся разом: непропатченный CI-сервер — риск для цепочки поставок, а не просто ИТ-проблема. Крепкая безопасность TeamCity — не опциональное усиление, а защита машины, способной задеплоить куда угодно. Это территория внедрения DevSecOps и аудита исходного кода.
Наш взгляд
Безопасность CI/CD раз за разом проигрывает внутренний спор, потому что сборочная инфраструктура попадает в разрыв ответственности. Безопасники считают её «девелоперской», разработчики — «инфраструктурой», и все полагают, что патчит кто-то другой. А привилегий у неё больше, чем у большинства боевых серверов. Этот взлом — предсказуемый итог такого разрыва, и он типичен: известный CVE в TeamCity, сервер без обновления, атакующий, который просто вошёл в дверь.
Важен и хранившийся бэкап 2024 года. У старых артефактов и бэкапов есть своя тихая ответственность: в них полно учёток, которые были валидны тогда и часто валидны до сих пор. Ротация секретов — не разовая реакция на взлом, а дисциплина, ограничивающая, сколько стоит украденный бэкап. Проверить доступность и защищённость API конвейера помогает пентест API и микросервисов.
Что делать прямо сейчас
- Пропатчите TeamCity и все сборочные инструменты, и дайте CI-инфраструктуре тот же SLA на патчи, что и продакшну, потому что это и есть продакшн.
- Ротируйте каждый секрет, до которого дотягивается конвейер: токены, ключи подписи, облачные учётки. Считайте раскрытым всё, чего касался сборочный сервер.
- Жёстко урежьте IAM. У сборочной роли должно быть минимум необходимого, а не широкий постоянный доступ к проду и хранилищам.
- Проверьте, кто и что может дотянуться до сборочной системы; при утечке данных подключайте реагирование на инциденты: локализация, форензика и уведомления.
- Уберите или заприте старые бэкапы и артефакты со стухшими учётками.
Вывод
Атакующие перестали ломать крепость, когда можно скомпрометировать завод, который её строит. Атаки на цепочку поставок работают, потому что CI/CD концентрирует огромные привилегии в системах, которые никогда не укрепляли как те самые ключи от королевства. Относитесь к конвейеру как к продакшну, патчьте его как продакшн и тестируйте как продакшн, либо примите, что одно пропущенное обновление отдаёт всё, куда он умеет деплоить. Начать стоит с тестирования на проникновение.