🇰🇷 한글 설명
Argo CD의 특정 버전에서 Bitbucket Server로부터 전달되는 잘못된 형식의 페이로드를 처리할 때 API 서버가 충돌하는 취약점이 발견되었습니다. webhook.bitbucketserver.secret 설정이 없는 경우, 인증되지 않은 공격자가 악의적인 API 요청을 보내 서비스 거부(DoS) 상태를 유발할 수 있습니다.
💡 쉬운 설명
Argo CD라는 도구에 조작된 데이터를 보내면 프로그램이 갑자기 멈춰버리는 문제입니다. 이로 인해 정상적인 사용자들이 서비스를 이용하지 못하게 될 수 있습니다.
🇺🇸 원문 (English)
Argo CD is a declarative, GitOps continuous delivery tool for Kubernetes. Versions 1.2.0 through 1.8.7, 2.0.0-rc1 through 2.14.19, 3.0.0-rc1 through 3.2.0-rc1, 3.1.7 and 3.0.18 are vulnerable to malicious API requests which can crash the API server and cause denial of service to legitimate clients. Without a configured webhook.bitbucketserver.secret, Argo CD's /api/webhook endpoint crashes when receiving a malformed Bitbucket Server payload (non-array repository.links.clone field). A single unauthenticated request triggers CrashLoopBackOff, and targeting all replicas causes complete API outage. This issue is fixed in versions 2.14.20, 3.2.0-rc2, 3.1.8 and 3.0.19.
📍 영향받는 시스템
Argo CD 1.2.0~1.8.7, 2.0.0-rc1~2.14.19, 3.0.0-rc1~3.2.0-rc1, 3.1.7, 3.0.18
⚔️ 공격 벡터
인증되지 않은 상태에서 /api/webhook 엔드포인트로 조작된 Bitbucket Server 페이로드를 전송
🛡️ 대응 방법
Argo CD를 2.14.20, 3.2.0-rc2, 3.1.8 또는 3.0.19 이상의 버전으로 업데이트하거나 webhook.bitbucketserver.secret을 설정하십시오.
🔧 검증 코드
명령어 결과에 취약한 버전 범위가 출력되면 해당 버전이 설치되어 있는 상태입니다.
argocd version --client | grep -E 'v(1\[2-8]\.[0-7]\.[0-7]|2\.[0-14]\.[0-19]|3\.[0-2]\.[0-19])'