🇰🇷 한글 설명
kubewarden-controller의 AdmissionPolicy와 AdmissionPolicyGroup이 민감한 namespaced 리소스(PolicyReport 등)의 검증 규칙 검사 부족으로 인해, 공격자가 규정 위반 내역을 숨길 수 있는 정책을 생성할 수 있습니다. 1.21.0 버전부터 이를 방지하기 위해 검증 규칙이 강화되었습니다.
💡 쉬운 설명
Kubernetes 보안 정책 도구에서 공격자가 규칙을 이용해 컴플라이언스 위반 기록을 숨길 수 있습니다. 이를 막기 위해 민감한 리소스에 대한 정책 적용을 제한하는 업데이트가 필요합니다.
🇺🇸 원문 (English)
kubewarden-controller is a Kubernetes controller that allows you to dynamically register Kubewarden admission policies. By design, AdmissionPolicy and AdmissionPolicyGroup can evaluate only namespaced resources. The resources to be evaluated are determined by the rules provided by the user when defining the policy. There might be Kubernetes namespaced resources that should not be validated by AdmissionPolicy and by the AdmissionPolicyGroup policies because of their sensitive nature. For example, PolicyReport are namespaced resources that contain the list of non compliant objects found inside of a namespace. An attacker can use either an AdmissionPolicy or an AdmissionPolicyGroup to prevent the creation and update of PolicyReport objects to hide non-compliant resources. Moreover, the same attacker might use a mutating AdmissionPolicy to alter the contents of the PolicyReport created inside of the namespace. Starting from the 1.21.0 release, the validation rules applied to AdmissionPolicy and AdmissionPolicyGroup have been tightened to prevent them from validating sensitive types of namespaced resources.
📍 영향받는 시스템
kubewarden-controller 1.21.0 미만 버전
⚔️ 공격 벡터
악의적인 AdmissionPolicy 또는 AdmissionPolicyGroup을 생성하여 PolicyReport 객체의 생성/수정 차단 또는 변조
🛡️ 대응 방법
kubewarden-controller를 1.21.0 이상으로 업그레이드
🔧 검증 코드
배포된 이미지의 버전이 v1.21.0 이상인지 확인하고, 1.21.0 미만이면 업그레이드 필요
kubectl get deployment -n kubewarden kubewarden-controller -o jsonpath='{.spec.template.spec.containers[0].image}' | grep -oE 'v[0-9]+\.[0-9]+\.[0-9]+'