{"id":"CVE-2026-124441","kind":"vulnerability","aliases":["CVE-2026-124441"],"related":[],"title":"Kyverno: namespaced tenants can write resources into other namespaces","description":"Kyverno before 1.19.2 contains an authorization bypass vulnerability that allows namespaced tenants to generate any resource kind in any namespace by templating the generate rule's kind and namespace with variables. Attackers can create a Policy and trigger ConfigMap in their own namespace, causing the privileged background-controller to write NetworkPolicies or RoleBindings into victim or kube-system namespaces.","summary":"Kyverno before 1.19.2 lets a user in one namespace template a generate rule so the privileged background controller creates resources of any kind in any namespace. An attacker can use this to write NetworkPolicies or RoleBindings into victim or kube-system namespaces.","severity":"high","cvss":8.8,"epss":null,"exploited":false,"exploited_at":null,"products":[],"ecosystems":[],"tags":["infrastructure","kubernetes","kyverno"],"not_affected_if":["kyverno-1.19.2-or-later","no-untrusted-namespace-tenants"],"how_to_check":"- Check the installed Kyverno version, for example with `kubectl get deploy -A -o wide | grep kyverno` and compare against `1.19.2`.\n- Review whether tenants can create Kyverno Policy or ClusterPolicy objects with generate rules in their own namespaces.","fix":"- Kyverno: move to `1.19.2` or later.","status":"open","published_at":"2026-11-08T14:18:10+00:00","first_seen_at":"2026-11-08T14:48:39+00:00","triaged_at":"2026-11-08T14:49:02+00:00","updated_at":"2026-11-08T14:49:02+00:00","category":"infrastructure","confidence":0.7,"triage":{"at":"2026-11-08T14:49:02Z","model":"claude-haiku-5-5","output":{"fix":"- Kyverno: move to `1.19.2` or later.","reach":"network","title":"Kyverno: namespaced tenants can write resources into other namespaces","impact":"high","summary":"Kyverno before 1.19.2 lets a user in one namespace template a generate rule so the privileged background controller creates resources of any kind in any namespace. An attacker can use this to write NetworkPolicies or RoleBindings into victim or kube-system namespaces.","audience":"businesses","category":"infrastructure","nicknames":[],"who_cares":["kubernetes","kyverno"],"confidence":0.7,"fix_status":"available","needs_auth":"yes","worst_case":"privileged controller writes RoleBindings into kube-system namespace","analyst_note":"","how_to_check":"- Check the installed Kyverno version, for example with `kubectl get deploy -A -o wide | grep kyverno` and compare against `1.19.2`.\n- Review whether tenants can create Kyverno Policy or ClusterPolicy objects with generate rules in their own namespaces.","plain_action":"","product_name":"","needs_analyst":false,"not_affected_if":["kyverno-1.19.2-or-later","no-untrusted-namespace-tenants"],"who_is_affected":"Clusters running Kyverno before 1.19.2 where namespaced users can create policies with generate rules. Clusters where only cluster admins write Kyverno policies are less exposed. The sources do not describe further conditions.","user_interaction":"no","product_ecosystem":"","needs_special_setup":"unknown","severity_if_unknown":"high"},"cost_usd":0.000734,"input_tokens":4632,"output_tokens":541,"severity_before":"high"},"analyst_status":null,"analyst_note":null,"search":"'-124441':12A,15A '-2026':11A,14A '1.19.2':21B,64C 'allow':71C 'attack':46B,93C 'author':67C 'background':35B,109C 'background-control':108C 'bypass':68C 'caus':105C 'configmap':100C 'contain':65C 'control':36B,110C 'creat':37B,95C 'cve':10A,13A 'generat':30B,75C,85C 'infrastructur':16B 'kind':41B,78C,88C 'kube':59B,120C 'kube-system':58B,119C 'kubernet':17B 'kyverno':1A,18B,19B,62C 'let':22B 'namespac':2A,9A,27B,44B,61B,72C,81C,90C,104C,122C 'networkpolici':52B,113C 'one':26B 'polici':97C 'privileg':34B,107C 'resourc':6A,38B,77C 'rolebind':54B,115C 'rule':31B,86C 'system':60B,121C 'templat':28B,83C 'tenant':3A,73C 'trigger':99C 'use':48B 'user':24B 'variabl':92C 'victim':56B,117C 'vulner':69C 'write':5A,51B,112C","nicknames":[],"mitigations":[],"who_affected":"Clusters running Kyverno before 1.19.2 where namespaced users can create policies with generate rules. Clusters where only cluster admins write Kyverno policies are less exposed. The sources do not describe further conditions.","tier":"B","verified":{},"analyst_revisit_at":null,"fix_status":"available","audience":"businesses","plain_action":null,"pkeys":[],"ptokens":[],"labels":["high","infrastructure","kubernetes","kyverno"],"campaign_type":null,"search_a":"'-124441':12A,15A '-2026':11A,14A 'cve':10A,13A 'kyverno':1A 'namespac':2A,9A 'resourc':6A 'tenant':3A 'write':5A","search_b":"'1.19.2':21B 'attack':46B 'background':35B 'control':36B 'creat':37B 'generat':30B 'infrastructur':16B 'kind':41B 'kube':59B 'kube-system':58B 'kubernet':17B 'kyverno':18B,19B 'let':22B 'namespac':27B,44B,61B 'networkpolici':52B 'one':26B 'privileg':34B 'resourc':38B 'rolebind':54B 'rule':31B 'system':60B 'templat':28B 'use':48B 'user':24B 'victim':56B 'write':51B","search_c":"'1.19.2':64C 'allow':71C 'attack':93C 'author':67C 'background':109C 'background-control':108C 'bypass':68C 'caus':105C 'configmap':100C 'contain':65C 'control':110C 'creat':95C 'generat':75C,85C 'kind':78C,88C 'kube':120C 'kube-system':119C 'kyverno':62C 'namespac':72C,81C,90C,104C,122C 'networkpolici':113C 'polici':97C 'privileg':107C 'resourc':77C 'rolebind':115C 'rule':86C 'system':121C 'templat':83C 'tenant':73C 'trigger':99C 'variabl':92C 'victim':117C 'vulner':69C 'write':112C","cause_entry":null,"cause_path":null,"disclosures_checked_at":null,"first_public_at":"2026-10-23T07:38:48+00:00","kev":null,"cvss_vector":"CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X","cvss_by":"disclosure@vulncheck.com","poc_count":0,"sources":[{"source":"nvd","external_id":"CVE-2026-124441","url":"https://nvd.nist.gov/vuln/detail/CVE-2026-124441","severity":null,"published_at":"2026-11-08T14:18:10+00:00","modified_at":"2026-11-08T14:18:10+00:00","first_seen_at":"2026-11-08T14:48:39+00:00","fetched_at":"2026-11-08T14:48:39+00:00","note":null}],"documents":[{"id":102066,"url":"https://github.com/kyverno/kyverno/security/advisories/GHSA-vjfx-fp68-rh4v","title":"Vendor advisory: github.com","kind":"vendor","source":"nvd","publisher":"vendor","text":null,"published_at":"2026-10-23T07:38:48+00:00","relation":"advisory","confidence":null,"note":"Vendor advisory: github.com"},{"id":102067,"url":"https://www.vulncheck.com/advisories/kyverno-before-1.19.2-authorization-bypass-via-variable-generate-target-kind","title":"Third-party advisory: www.vulncheck.com","kind":"advisory","source":"nvd","publisher":"research","text":null,"published_at":null,"relation":"advisory","confidence":null,"note":"Third-party advisory: www.vulncheck.com"}],"disclosures":[],"exploit_sources":[],"notice":"Free to read, with fair use of about 60 pages a minute. For higher limits or API access: sales@infrastack.ai"}