apiVersion: kyverno.io/v1 kind: ClusterPolicy metadata: name: disallow-privileged-containers annotations: policies.kyverno.io/title: "Запрет привилегированных контейнеров" policies.kyverno.io/category: Pod Security Standards (Baseline) policies.kyverno.io/severity: critical policies.kyverno.io/subject: Pod policies.kyverno.io/description: >- Привилегированный контейнер имеет полный доступ к хост-системе — эквивалент root на самой ноде. Компрометация такого контейнера означает компрометацию всей ноды. Проверяются: containers, initContainers, ephemeralContainers. spec: validationFailureAction: Enforce background: true rules: - name: privileged-containers match: resources: kinds: - Pod exclude: resources: namespaces: - kube-system validate: message: >- Контейнер '{{ element.name }}' имеет securityContext.privileged: true. Привилегированные контейнеры запрещены — они получают полный доступ к хосту. Удалите поле securityContext.privileged или установите значение false. foreach: - list: >- request.object.spec.containers[] | merge(request.object.spec.initContainers[] || `[]`, @) | merge(request.object.spec.ephemeralContainers[] || `[]`, @) deny: conditions: any: - key: "{{ element.securityContext.privileged }}" operator: Equals value: true