Description
Capsule is a multi-tenancy and policy-based framework for Kubernetes. The Capsule Controller runs with cluster-admin privileges. Although the TenantResource RawItems processing logic forcibly sets the namespace, this is ineffective for cluster-scoped resources. Prior to version 0.13.0, tenant administrators can leverage the Controller's elevated privileges to create cluster-scoped resources (such as ClusterRole and ValidatingWebhookConfiguration) that they cannot create directly, achieving cross-tenant privilege escalation and cluster-level attacks. The attack vector has a few limiting factors. This attack requires Tenant Owner privileges and requires Capsule Controller running with cluster-admin privileges (default configuration). Additionally, some clusters may have additional admission controllers blocking malicious resources. Version 0.13.0 patches this issue.
Problem types
CWE-20: Improper Input Validation
CWE-863: Incorrect Authorization
Product status
References
github.com/...apsule/security/advisories/GHSA-qjjm-7j9w-pw72
github.com/...apsule/security/advisories/GHSA-qjjm-7j9w-pw72
github.com/projectcapsule/capsule/releases/tag/v0.13.0