🇰🇷 한글 설명
Kyverno의 ConfigMap context loader가 configMap.namespace 필드를 검증하지 않아, 네임스페이스 관리자가 Kyverno의 권한있는 서비스 계정을 이용해 다른 네임스페이스의 ConfigMap을 읽을 수 있는 취약점입니다. 멀티테넌트 Kubernetes 클러스터에서 완전한 RBAC 우회를 초래합니다.
💡 쉬운 설명
Kubernetes의 정책 엔진인 Kyverno에서 다른 팀의 설정 파일을 무단으로 읽을 수 있는 보안 문제입니다. 한 팀의 관리자가 다른 팀의 ConfigMap 내용(API 키, 암호 등)을 볼 수 있게 됩니다.
🇺🇸 원문 (English)
Kyverno is a policy engine designed for cloud native platform engineering teams. The patch for CVE-2026-22039 fixed cross-namespace privilege escalation in Kyverno's `apiCall` context by validating the `URLPath` field. However, the ConfigMap context loader has the identical vulnerability — the `configMap.namespace` field accepts any namespace with zero validation, allowing a namespace admin to read ConfigMaps from any namespace using Kyverno's privileged service account. This is a complete RBAC bypass in multi-tenant Kubernetes clusters. An updated fix is available in version 1.17.2.
📍 영향받는 시스템
Kyverno < 1.17.2
⚔️ 공격 벡터
Namespace 관리자 권한으로 configMap 컨텍스트 로더의 namespace 필드를 임의로 설정하여 다른 namespace의 ConfigMap 접근
🛡️ 대응 방법
Kyverno를 1.17.2 이상으로 업그레이드
🔧 검증 코드
반환된 버전이 v1.17.2 이상이면 패치됨, 이하면 취약한 상태
kubectl get deployment kyverno -n kyverno -o jsonpath='{.spec.template.spec.containers[0].image}' | grep -oE 'v[0-9]+\.[0-9]+\.[0-9]+'