Horizon Alert
Summary of the vulnerability and why it matters
A security issue has been identified in Kyverno, a tool for managing Kubernetes policies. This vulnerability could allow users with administrative access within a specific namespace to create resources outside of their authorized scope, potentially impacting cluster-wide resources. The primary concern is to determine if our environment uses this technology and is exposed.
- Unauthorized users may create unintended cluster resources.
- It could allow namespace admins to bypass intended controls.
- Confirm relevance and potential exposure within our environment.
Attack Path
How an attacker could exploit the issue
An attacker with administrative access within a specific Kubernetes namespace can escalate their privileges. This is achieved by creating a policy with "generate rules" that target resources in other namespaces or cluster-wide. The vulnerability lies in the admission control's failure to properly check the user's permissions, instead verifying the controller's. This allows the controller to create or duplicate resources across the entire cluster, bypassing intended access restrictions.
- Requires namespace admin privileges.
- Triggers via namespaced policy with generate rules.
- Grants broad cluster-wide resource creation.
Live Threat
Current exploitation, exposure, and threat context
This vulnerability could allow a namespace administrator to create or modify resources in other namespaces or at the cluster level, bypassing intended access restrictions when Kyverno's generate-rule admission checks are configured to permit it.
- Cluster resources and namespaces.
- Namespace admin creates a policy.
- Unauthorized resource creation.
Operational Fix
Recommended remediation, mitigation, and detection steps
Namespace administrators are the primary actors responsible for addressing this privilege escalation vulnerability within Kyverno. The initial step involves identifying all instances of Kyverno, determining their reachability and criticality, and then confirming the accountable owner for remediation. Planning the fix should be based on the assessed risk.
- Identify Kyverno deployments and owners.
- Verify affected namespaces and policies.
- Plan remediation based on risk assessment.