
POC-эксплойты для CVE-2026-32604 и CVE-2026-32613, которые позволяют выполнить RCE после аутентификации и кражу учётных данных в Spinnaker
Демонстрации proof-of-concept для CVE-2026-32604 и CVE-2026-32613 — двух уязвимостей критической степени опасности (10.0) в Spinnaker, которые позволяют выполнять код и похищать производственные облачные учетные данные.
Конечная точка получения артефактов Clouddriver передает предоставленное пользователем имя ветки без санитизации в команду sh -c при использовании HTTP-аутентификации git. Любой аутентифицированный пользователь может внедрить shell-команды через PUT /artifacts/fetch, добившись произвольного выполнения кода на хосте Clouddriver — сервисе, который хранит все учетные данные облачных провайдеров. Для этого не требуются особые роли или разрешения, достаточно быть аутентифицированным пользователем.
Echo вычисляет объявления ожидаемых артефактов с помощью Spring Expression Language (SpEL) с неограниченным StandardEvaluationContext при срабатывании триггера конвейера. Злоумышленник с правом записи в любое приложение может сохранить конвейер, содержащий вредоносное SpEL-выражение, а затем запустить webhook-триггер, чтобы получить произвольное выполнение кода на сервисе Echo. Все остальные точки вычисления SpEL в Spinnaker используют защищенный контекст; это единственная, которая не использует.
setup/ — Автоматическая настройка окружения. Клонирует дерево исходников Spinnaker, собирает все сервисы из исходников и поднимает полностью сконфигурированный кластер (Gate, Orca, Clouddriver, Front50, Fiat, Echo) с вспомогательной инфраструктурой (Redis, MySQL, Elasticsearch, Minio, OpenLDAP). Включает начальные данные с тестовыми приложениями, пользователями и конвейерами.
pocs/ — Эксплойт-скрипты. Каждый POC подключается к Gate, настраивает атаку и открывает пользователю интерактивный reverse shell в контейнере целевого сервиса.
clouddriver_rce_via_git_clone.py — Инъекция shell-команд через Git cloneecho_rce_via_spel.py — SpEL RCE через expectedArtifactsПредварительные требования: Docker, Git, Python 3.10+ и uv.
cd setup
./setup.sh
Первый запуск клонирует исходники Spinnaker и собирает все сервисы (~20–30 минут в зависимости от машины). Последующие запуски используют кэшированную сборку и запускаются за несколько минут.
По завершении настройки выводятся полные сведения об окружении (URL-адреса сервисов, учетные данные и примеры команд POC). Следуйте этим инструкциям для запуска POC.
Для удаления окружения:
cd setup
./teardown.sh