🇰🇷 한글 설명
Argo Workflows의 특정 버전에서 WorkflowSpec.ArtifactGC 필드에 대한 검증이 불완전하여 발생하는 취약점입니다. 공격자가 artifact-GC 포드에 임의의 strategic merge patch를 주입하여 호스트 경로 마운트나 권한 상승을 수행할 수 있습니다. 이는 Strict 또는 Secure 참조 모드의 보안 목적을 무력화합니다.
💡 쉬운 설명
워크플로우 관리 도구의 보안 검사 구멍을 이용해 공격자가 시스템 권한을 탈취할 수 있는 위험한 결함입니다. 공격자가 허용되지 않은 설정을 몰래 끼워 넣어 관리자 권한을 얻거나 서버를 장악할 수 있습니다.
🇺🇸 원문 (English)
Argo Workflows is an open source container-native workflow engine for orchestrating parallel jobs on Kubernetes. Prior to 3.7.15 and 4.0.6, the allow-list fix for CVE-2026-31892 is incomplete because workflow/util/merge.go ValidateUserOverrides and SanitizeUserWorkflowSpec walk only the top-level fields of WorkflowSpec via reflection, and WorkflowSpec.ArtifactGC is allow-listed wholesale; the struct behind that field, WorkflowLevelArtifactGC, has a PodSpecPatch sub-field whose contents flow unmodified into util.ApplyPodSpecPatch on the artifact-GC pod, the same sink the original fix closed for WorkflowSpec.PodSpecPatch, so a user submitting a Workflow under templateReferencing: Strict or Secure (against a referenced WorkflowTemplate that declares an output artifact and setting spec.artifactGC.strategy: OnWorkflowCompletion) can still inject an arbitrary strategic merge patch into the artifact-GC pod, including hostPath volumes, privileged: true, arbitrary image and command, and hostNetwork: true, defeating the stated purpose of Strict/Secure reference mode. This issue is fixed in versions 3.7.15 and 4.0.6.
📍 영향받는 시스템
Argo Workflows 3.7.15 및 4.0.6 미만 버전
⚔️ 공격 벡터
WorkflowSpec.ArtifactGC.PodSpecPatch 필드를 통해 임의의 PodSpec 패치를 주입하는 방식
🛡️ 대응 방법
Argo Workflows를 3.7.15 또는 4.0.6 이상의 최신 버전으로 업데이트하십시오.
🔧 검증 코드
출력된 버전이 3.7.15 미만이거나 4.0.6 미만인 경우 취약한 상태입니다.
argo version | grep -E 'Argo Workflows (3\.[0-9]+\.[0-9]+|4\.[0-9]+\.[0-9]+)'