A flaw was found in the OpenShift Pipelines operator. The tekton-scheduler-rolebinding ClusterRoleBinding grants the system:authenticated group write access to Kueue and cert-manager custom resources via the tekton-scheduler-role ClusterRole. When Kueue or cert-manager CRDs are present on the cluster, any authenticated user can disrupt workload scheduling, tamper with scheduling priorities, delete other tenants' Workload objects, or induce cert-manager to overwrite TLS Secrets including the default ingress controller certificate.
CVE-2026-10840 is a privilege escalation vulnerability in OpenShift Pipelines operator affecting RBAC configurations. Any authenticated user can gain unauthorized write access to Kueue and cert-manager resources, enabling workload disruption, scheduling tampering, and TLS certificate manipulation. With CVSS 7.1 and no patch currently available, this poses significant risk to containerized infrastructure in Saudi organizations running OpenShift.
IMMEDIATE ACTIONS:
1. Audit all OpenShift clusters for presence of Kueue and cert-manager CRDs using: kubectl get crd | grep -E 'kueue|cert-manager'
2. Review tekton-scheduler-rolebinding permissions: kubectl get clusterrolebinding tekton-scheduler-rolebinding -o yaml
3. Restrict system:authenticated group access by removing overly permissive bindings
4. Implement network policies to limit inter-pod communication
COMPENSATING CONTROLS (until patch available):
5. Create custom RBAC policies limiting write access to Kueue/cert-manager resources to service accounts only
6. Implement Pod Security Standards (PSS) to restrict container capabilities
7. Enable audit logging for all ClusterRoleBinding modifications
8. Use admission controllers (OPA/Gatekeeper) to prevent unauthorized resource modifications
9. Segregate Kueue and cert-manager namespaces with NetworkPolicies
10. Monitor for suspicious cert-manager Secret modifications using: kubectl logs -n cert-manager deployment/cert-manager
DETECTION RULES:
- Alert on any write operations to kueue.x-k8s.io/* resources by non-service accounts
- Monitor cert-manager Secret modifications in default and ingress-related namespaces
- Track ClusterRoleBinding changes affecting system:authenticated group
- Flag Workload object deletions across namespaces
الإجراءات الفورية:
1. تدقيق جميع مجموعات OpenShift للتحقق من وجود Kueue و cert-manager CRDs باستخدام: kubectl get crd | grep -E 'kueue|cert-manager'
2. مراجعة أذونات tekton-scheduler-rolebinding: kubectl get clusterrolebinding tekton-scheduler-rolebinding -o yaml
3. تقييد وصول مجموعة system:authenticated بإزالة الربطات المفرطة في الأذونات
4. تنفيذ سياسات الشبكة لتحديد اتصالات البودات
الضوابط البديلة (حتى توفر التصحيح):
5. إنشاء سياسات RBAC مخصصة تقيد الوصول للكتابة إلى موارد Kueue/cert-manager لحسابات الخدمة فقط
6. تنفيذ معايير أمان البودات (PSS) لتقييد قدرات الحاويات
7. تفعيل تسجيل التدقيق لجميع تعديلات ClusterRoleBinding
8. استخدام متحكمات القبول (OPA/Gatekeeper) لمنع التعديلات غير المصرح بها على الموارد
9. فصل مساحات أسماء Kueue و cert-manager باستخدام NetworkPolicies
10. مراقبة تعديلات Secret في cert-manager باستخدام: kubectl logs -n cert-manager deployment/cert-manager
قواعد الكشف:
- تنبيهات على أي عمليات كتابة إلى موارد kueue.x-k8s.io/* من قبل حسابات غير الخدمة
- مراقبة تعديلات Secret في cert-manager في مساحات الأسماء الافتراضية والمتعلقة بالدخول
- تتبع تغييرات ClusterRoleBinding التي تؤثر على مجموعة system:authenticated
- تحديد حذف كائنات Workload عبر مساحات الأسماء