🔍 CVE-2025-59538

7.5
CVSS Score
HIGH
2025-10-01
2026-10-12 15:10
✅ 완료

🇰🇷 한글 설명

Argo CD의 특정 버전에서 Azure DevOps Push 이벤트의 JSON 배열인 resource.refUpdates가 비어 있을 경우, 인덱스 범위 초과로 인해 argocd-server 프로세스가 충돌하는 취약점이 발견되었습니다. 인증되지 않은 공격자가 단 한 번의 HTTP POST 요청만으로 전체 서버 프로세스를 중단시킬 수 있습니다.

💡 쉬운 설명

특정 조건에서 잘못된 데이터가 들어오면 서버가 갑자기 꺼져버리는 문제입니다. 해커가 가짜 신호를 보내면 서비스가 멈출 수 있어 주의가 필요합니다.

🇺🇸 원문 (English)

Argo CD is a declarative, GitOps continuous delivery tool for Kubernetes. For versions 2.9.0-rc1 through 2.14.19, 3.0.0-rc1 through 3.2.0-rc1, 3.1.6 and 3.0.17, when the webhook.azuredevops.username and webhook.azuredevops.password are not set in the default configuration, the /api/webhook endpoint crashes the entire argocd-server process when it receives an Azure DevOps Push event whose JSON array resource.refUpdates is empty. The slice index [0] is accessed without a length check, causing an index-out-of-range panic. A single unauthenticated HTTP POST is enough to kill the process. This issue is resolved in versions 2.14.20, 3.2.0-rc2, 3.1.8 and 3.0.19.

📍 영향받는 시스템

Argo CD 2.9.0-rc1 ~ 2.14.19, 3.0.0-rc1 ~ 3.2.0-rc1, 3.1.6, 3.0.17

⚔️ 공격 벡터

인증되지 않은 상태에서 resource.refUpdates가 비어 있는 Azure DevOps Push 이벤트를 /api/webhook 엔드포인트로 전송

🛡️ 대응 방법

Argo CD를 2.14.20, 3.2.0-rc2, 3.1.8 또는 3.0.19 이상의 보안 패치 버전으로 업데이트

🔧 검증 코드

명령어 실행 결과에 패치된 버전 번호가 포함되어 있으면 안전합니다.

Shell / Script
argocd version --client | grep -E '2.14.20|3.2.0-rc2|3.1.8|3.0.19'

📊 CVSS Vector String

CVSS Vector
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H

💻 영향받는 소프트웨어

Azure