Argo CD, популярный инструмент для развертывания приложений в Kubernetes, содержит уязвимость в своем компоненте repo-server. Она позволяет неавторизованному злоумышленнику выполнять произвольный код, если он сможет получить доступ к внутреннему сетевому порту. Это угроза не только для данных, но и для целостности всей инфраструктуры.
Что произошло
Аналитики компании Synacktiv обнаружили уязвимость и сообщили о ней разработчикам Argo CD в январе 2025 года. Но спустя 18 месяцев проблема остается нерешенной, и Synacktiv решил обнародовать информацию, чтобы предупредить пользователей о рисках. Уязвимость затрагивает gRPC-сервис repo-server, который взаимодействует с Git-репозиториями и создает манифесты Kubernetes. Поскольку этот сервис не имеет аутентификации, любой, кто сможет подключиться к нему, может отправить специальный запрос и выполнить произвольные команды.Как работает атака
Злоумышленник может воспользоваться инструментом kustomize, который Argo CD использует для преобразования файлов репозитория в манифесты. Указав в запросе скрипт вместо команды helm, атака запускает произвольный код. Поскольку стандартные сетевые политики Kubernetes отключены по умолчанию, уязвимость может быть использована через одно скомпрометированное приложение в кластере. Это позволяет злоумышленнику получить доступ к конфиденциальным данным, таким как пароли, и изменять данные развертывания в кэше Redis Argo CD.Синтактив также сообщил, что уязвимость перепрыгает CVE-2024-31989, выявленный ранее, который уже позволял доступ к Redis без пароля. Такое повторное использование старых уязвимостей подчеркивает важность быстрого реагирования на новые угрозы и необходимости применять сетевую изоляцию.
Что делать пользователям
Существует несколько мер для защиты от этой уязвимости, пока не будет выпущен патч. Пользователям рекомендуется включить сетевые политики Kubernetes, чтобы только компоненты Argo CD имели доступ к портам repo-server и Redis. Для этого следует проверить активные сетевые политики с помощью команды kubectl get networkpolicy -A. Если такие политики отсутствуют, злоумышленники могут свободно подключаться к уязвимым компонентам.Взаимодействие с уязвимыми портами может обернуться серьезными последствиями. Компания Synacktiv создала инструмент argo-cdown, который автоматизирует атаку, но пока не публикует его, чтобы дать пользователям время для обеспечения безопасности своих сетей.