Исследователи в области кибербезопасности обнаружили четыре новые уязвимости в Chaos Mesh - популярной платформе для хаотического тестирования (chaos engineering) в среде Kubernetes. Проблемы, получившие идентификаторы CVE-2025-59358, CVE-2025-59359, CVE-2025-59360 и CVE-2025-59361, позволяют злоумышленникам получать полный контроль над кластерами без аутентификации.
Детали уязвимостей
Три из четырёх уязвимостей получили максимальную оценку критичности по шкале CVSS 3.1 - 9.8 баллов. Они затрагивают стандартную конфигурацию GraphQL-сервера в компоненте Chaos Controller Manager. Эксплуатация этих уязвимостей позволяет любому поду (pod) в кластере выполнять произвольные команды или внедрять сбои в другие поды без необходимости аутентификации. Даже непривилегированные рабочие нагрузки могут использовать эти проблемы для кражи токенов сервисных аккаунтов, повышения привилегий и полного захвата кластера.
Уязвимости, collectively названные Chaotic Deputy, затрагивают все версии Chaos Mesh ранее 2.7.3. CVE-2025-59358 позволяет получить неаутентифицированный доступ к GraphQL playground и endpoint запросов, что приводит к отказам в обслуживании (DoS) и несанкционированным внедрениям сбоев. Остальные три уязвимости связаны с небезопасным построением команд в трёх GraphQL-мутациях: cleanTcs, killProcesses и cleanIptables. Это позволяет осуществлять инъекции операционных команд в любой целевой под.
Пользователи управляемых сервисов, включая Azure Chaos Studio для AKS, также подвержены риску, если используют уязвимые версии Chaos Mesh. Для эксплуатации атакующим необходим доступ к внутрикластерной сети - сценарий, типичный для многопользовательских сред или скомпрометированных подов. Попав в сеть, злоумышленник может обращаться к незащищённому GraphQL endpoint на порту 10082, изучать доступные мутации внедрения сбоев и вызывать команды завершения работы или нарушения сети для нарушения обслуживания сервисов.
Одна GraphQL-мутация способна остановить под сервера API Kubernetes, вызвав кластерный отказ в обслуживании. Альтернативно, атакующие могут внедрять shell-команды для кражи секретов, включая токены сервисных аккаунтов с высокими привилегиями, что ведёт к полному захвату кластера.
Для обнаружения уязвимых развёртываний необходимо проверить используемые образы Chaos Mesh и порт менеджера контроллера. Если версия образа старше 2.7.3, а порт 10082 открыт, кластер уязвим. Рекомендуемое устранение - немедленное обновление до Chaos Mesh 2.7.3, где реализована строгая аутентификация и исправлены небезопасные конкатенации команд.
В средах, где немедленное обновление невозможно, следует переразвернуть Chaos Mesh с отключённым сервером управления, используя параметр enableCtrlServer=false. Это отключает GraphQL-сервер и блокирует внешние внедрения сбоев до применения официального патча. Дополнительно рекомендуется непрерывный мониторинг аномальных GraphQL-запросов и ограничение сетевого доступа к сервису контроллера.
Обнаруженные уязвимости подчёркивают врождённую опасность предоставления мощных интерфейсов внедрения сбоев без надлежащих защитных механизмов. Администраторам Kubernetes следует немедленно проверить свои среды на наличие уязвимых версий и принять корректирующие меры для предотвращения потенциального компрометирования критической инфраструктуры.
Ссылки
- https://www.cve.org/CVERecord?id=CVE-2025-59358
- https://www.cve.org/CVERecord?id=CVE-2025-59359
- https://www.cve.org/CVERecord?id=CVE-2025-59360
- https://www.cve.org/CVERecord?id=CVE-2025-59361
- https://jfrog.com/blog/chaotic-deputy-critical-vulnerabilities-in-chaos-mesh-lead-to-kubernetes-cluster-takeover/
- https://github.com/chaos-mesh/chaos-mesh/pull/4702