Introduction
We are tracking CVE-2026-10059, a Critical severity vulnerability (CVSS 9.1) impacting the Multicluster Engine for Kubernetes. This vulnerability represents a significant failure in namespace isolation boundaries, allowing a tenant administrator with limited, namespace-scoped privileges to completely compromise the cluster's control plane.
The flaw resides in the ClusterCurator controller. By exploiting a logic error in how the controller processes namespaced resources, a tenant can effectively mint a token for a ServiceAccount with cluster-wide administrative authority. In multi-tenant environments or organizations utilizing delegated administration, this flaw effectively renders your Role-Based Access Control (RBAC) model obsolete. Defenders need to act immediately to identify usage of the ClusterCurator and apply vendor patches.
Technical Analysis
Affected Component
The vulnerability specifically targets the Multicluster Engine for Kubernetes, specifically the ClusterCurator controller. This component is often used in Red Hat OpenShift and other managed Kubernetes platforms to manage the lifecycle of clusters.
Vulnerability Mechanics
The attack chain requires two key elements: a tenant user with namespace-admin privileges and the existence (or ability to create) of the ClusterCurator Custom Resource (CR).
- Initial Access: The attacker has legitimate access as a
namespace-admin(or similar tenant-level role) within a specific namespace. - Trigger: The tenant creates a
ClusterCuratorobject within their scoped namespace. - Privilege Escalation: Due to the flaw (CVE-2026-10059), the ClusterCurator controller inadvertently grants the tenant the ability to request a token for a highly privileged ServiceAccount (often with
cluster-adminrights) outside their namespace scope. - Impact: The tenant mints this token and gains full control over the entire Kubernetes cluster, bypassing all namespace isolation mechanisms.
Exploitation Status
While this CVE has just been published by NVD, the mechanics involve standard Kubernetes API interactions. We expect proof-of-concept (PoC) exploits to appear rapidly in the threat intel community. Given the high value of Kubernetes clusters, automated scanning for this specific misconfiguration/flaw is imminent.
Detection & Response
Detecting this vulnerability requires monitoring the Kubernetes Audit Logs for the creation of ClusterCurator objects and the anomalous creation of cluster-wide bindings by tenant users.
SIGMA Rules
---
title: Potential Kubernetes ClusterCurator Privilege Escalation
id: a1b2c3d4-5678-90ab-cdef-1234567890ab
status: experimental
description: Detects the creation of a ClusterCurator object by a tenant user, which could indicate an attempt to exploit CVE-2026-10059 to gain cluster-admin privileges.
references:
- https://nvd.nist.gov/vuln/detail/CVE-2026-10059
author: Security Arsenal
date: 2026/05/20
tags:
- attack.privilege_escalation
- attack.t1068
logsource:
product: kubernetes
service: audit
detection:
selection:
verb: 'create'
objectRef:
resource: 'clustercurators'
stage: 'ResponseComplete'
condition: selection
falsepositives:
- Legitimate cluster administrators creating ClusterCurators for valid multi-cluster management.
level: high
---
title: Kubernetes ClusterRoleBinding Creation by Tenant User
id: b2c3d4e5-6789-01ab-cdef-2345678901bc
status: experimental
description: Detects the creation of a ClusterRoleBinding, specifically if associated with ClusterCurator activities or high-privilege assignment by non-system users.
references:
- https://nvd.nist.gov/vuln/detail/CVE-2026-10059
author: Security Arsenal
date: 2026/05/20
tags:
- attack.privilege_escalation
- attack.t1068
logsource:
product: kubernetes
service: audit
detection:
selection:
verb: 'create'
objectRef:
resource: 'clusterrolebindings'
filter_system:
user.username:
- 'system:*'
- 'kubernetes-admin'
condition: selection and not filter_system
falsepositives:
- Valid infrastructure as code (IaC) deployments by cluster admins.
level: medium
KQL (Microsoft Sentinel / Defender)
// Hunt for creation of ClusterCurator objects indicative of CVE-2026-10059 exploitation
KubeAuditLogs
| where OperationName =~ "create"
| where ObjectRefResource =~ "clustercurators"
| project TimeGenerated, SourceIP, User, UserGroups, ObjectRefNamespace, ObjectRefName, RequestURI
| extend AlertContext = pack("Operation", "ClusterCurator Creation", "Risk", "Privilege Escalation Potential")
Velociraptor VQL
-- Hunt for local kubectl execution commands attempting to create ClusterCurator resources
-- This identifies the attacker's endpoint tool usage
SELECT Pid, Name, CommandLine, Exe, Username, CreateTime
FROM pslist()
WHERE CommandLine =~ 'kubectl'
AND CommandLine =~ 'apply|create'
AND CommandLine =~ 'ClusterCurator'
Remediation Script (Bash)
#!/bin/bash
# Remediation script for CVE-2026-10059
# Checks for existence of ClusterCurator resources and advises on patching
echo "[*] Scanning for ClusterCurator objects in all namespaces..."
# Check if kubectl is available
if ! command -v kubectl &> /dev/null; then
echo "[!] kubectl could not be found. Please run this on a node with kubeconfig access."
exit 1
fi
# Find all ClusterCurators
CURATORS=$(kubectl get clustercurators.multicluster.openshift.io --all-namespaces -o 2>/dev/null)
if [ $? -eq 0 ]; then
COUNT=$(echo "$CURATORS" | jq '.items | length')
if [ "$COUNT" -gt 0 ]; then
echo "[!] Found $COUNT ClusterCurator object(s). Reviewing..."
echo "$CURATORS" | jq -r '.items[] | "Namespace: \(.metadata.namespace) | Name: \(.metadata.name) | Created: \(.metadata.creationTimestamp)"'
echo "[WARNING] Vulnerable ClusterCurator objects detected. These should be reviewed for legitimacy."
else
echo "[+] No ClusterCurator objects found."
fi
else
echo "[i] ClusterCurator CRD may not be installed or API version differs."
fi
echo "[*] Checking Multicluster Engine/ClusterCurator controller version..."
# Generic check - replace with specific deployment name based on vendor documentation
kubectl get deployment -n multicluster-engine clustercurator-controller -o path='{.spec.template.spec.containers[0].image}' 2>/dev/null || echo "[i] Could not determine controller version. Please check vendor advisory."
echo "[*] ACTION REQUIRED: Update Multicluster Engine to the latest patched version per vendor advisory to mitigate CVE-2026-10059."
echo "[*] If immediate patching is impossible, restrict access to the ClusterCurator CRD to cluster-admins only."
Remediation
- Patch Immediately: Apply the latest security patches provided by the vendor of your Kubernetes distribution (e.g., Red Hat OpenShift, SUSE, or other Multicluster Engine providers). This is the only permanent fix for CVE-2026-10059.
- Restrict CRD Access: As an immediate interim measure, modify the ClusterRole/Role associated with the
ClusterCuratorCustom Resource Definition (CRD). Ensure that only dedicated cluster administrators havecreatepermissions on theclustercurators.multicluster.openshift.ioresource. Remove this privilege from all tenant administrators. - Audit Tenant Permissions: Conduct a review of all namespace-admin and tenant roles to ensure no other overly permissive access to cluster-scoped custom resources exists.
- Delete Rogue Resources: If you identify
ClusterCuratorobjects created by tenant users that are not part of a valid operational workflow, delete them immediately.
Related Resources
Security Arsenal Penetration Testing Services AlertMonitor Platform Book a SOC Assessment vulnerability-management Intel Hub
Is your security operations ready?
Get a free SOC assessment or see how AlertMonitor cuts through alert noise with automated triage.