Severity by source
AV:N/AC:L/PR:H/UI:N/S:C/C:L/I:L/A:L
Creating ClusterRoleBinding directly grants cluster-admin, yielding immediate C:H/I:H/A:H across the full cluster scope.
Primary rating from Vendor (GitHub_M).
CVSS VectorVendor: GitHub_M
Lifecycle Timeline
3DescriptionCVE.org
Capsule is a multi-tenancy and policy-based framework for Kubernetes. From 0.13.0 until 0.13.8, after the incomplete CVE-2026-22872 fix, TenantResource RawItems and Generators in internal/controllers/resources/collect.go, including handleRawItem and handleGeneratorItem, did not apply the ResourceReference.LoadResources and IsNamespacedGVK cluster-scoped resource rejection guard used by NamespacedItems, allowing a Tenant Owner to create cluster-scoped resources such as ClusterRole or ValidatingWebhookConfiguration through the cluster-admin controller client. This issue is fixed in version 0.13.8.
AnalysisAI
Privilege escalation in Capsule (Kubernetes multi-tenancy framework) versions 0.13.0-0.13.7 allows authenticated Tenant Owners to break out of tenant isolation and create cluster-scoped Kubernetes resources - including ClusterRole, ClusterRoleBinding, and ValidatingWebhookConfiguration - through the cluster-admin controller client. This is an incomplete fix of CVE-2026-22872: the TenantResource RawItems and Generators code paths (handleRawItem, handleGeneratorItem) were never updated to enforce the same cluster-scoped resource rejection guards applied to NamespacedItems. No public exploit or CISA KEV listing has been identified at time of analysis; vendor-released patch v0.13.8 is available.
Technical ContextAI
Capsule (CPE: cpe:2.3:a:projectcapsule:capsule:*:*:*:*:*:*:*:*) is a Kubernetes operator implementing multi-tenancy via Tenant custom resources, enforcing namespace isolation and policy boundaries. The root cause is CWE-269 (Improper Privilege Management): the resource collection logic in internal/controllers/resources/collect.go exposes two code paths - handleRawItem (for TenantResource RawItems) and handleGeneratorItem (for Generators) - that were not updated during the CVE-2026-22872 remediation effort. The guard functions ResourceReference.LoadResources and IsNamespacedGVK, which reject cluster-scoped resource kinds, were added only to the NamespacedItems path. As a result, the RawItems and Generators paths use the cluster-admin controller client without validating whether the target GroupVersionKind is cluster-scoped, allowing tenant-level manifests to instantiate objects such as ClusterRole, ClusterRoleBinding, and ValidatingWebhookConfiguration at cluster scope.
RemediationAI
Vendor-released patch: v0.13.8. Upgrade Capsule to v0.13.8 immediately; the Docker image ghcr.io/projectcapsule/capsule:0.13.8 and Helm chart for this version are available at https://github.com/projectcapsule/capsule/releases/tag/v0.13.8. If immediate upgrade is not possible, a targeted compensating control is to revoke TenantResource RBAC permissions from Tenant Owners - specifically the ability to create or update TenantResource objects - until patching is complete; this disables the vulnerable feature entirely but also removes legitimate TenantResource functionality. Alternatively, admission webhook policies (e.g., OPA/Gatekeeper or Kyverno) can be configured to reject TenantResource manifests containing RawItems or Generator blocks referencing cluster-scoped GVKs (ClusterRole, ValidatingWebhookConfiguration, etc.), acting as a defense-in-depth layer. Note that either workaround may break legitimate multi-tenancy workflows that rely on TenantResource for resource propagation.
More in Kubernetes
View allA critical vulnerability in Kubernetes ingress-nginx controller allows unauthenticated attackers with pod network access
Credential-harvesting malware compromised 84 versions of 42 TanStack npm packages on 2026-05-11 via chained GitHub Actio
Kubernetes ingress-nginx contains a configuration injection vulnerability via the mirror-target and mirror-host Ingress
A security issue was discovered in ingress-nginx https://github.com/kubernetes/ingress-nginx where the `auth-url` Ingres
A security issue was discovered in ingress-nginx https://github.com/kubernetes/ingress-nginx where the `auth-tls-match-c
Kubernetes API server in all versions allow an attacker who is able to create a ClusterIP service and set the spec.exter
A security issue was discovered in Kubernetes where a user that can create pods on Windows nodes may be able to escalate
Argo CD is a declarative, GitOps continuous delivery tool for Kubernetes. Rated critical severity (CVSS 9.9), this vulne
Unauthenticated remote attackers can trigger complete database overwrites, server-side file reads, and SSRF attacks agai
The Kubernetes integration in GitLab Enterprise Edition 11.x before 11.2.8, 11.3.x before 11.3.9, and 11.4.x before 11.4
Fluentd configuration injection in the kube-logging Logging operator before 6.6.0 allows a namespace-scoped user who can
Kyverno Kubernetes policy engine prior to 1.x has a privilege escalation vulnerability (CVSS 9.9) allowing policy bypass
Same weakness CWE-269 – Improper Privilege Management
View allSame technique Privilege Escalation
View allShare
External POC / Exploit Code
Leaving vuln.today
EUVD-2026-51296
GHSA-jr6p-8pjj-mfx6