Severity by source
AV:A/AC:L/PR:L/UI:N/S:C/C:L/I:L/A:N
Adjacent vector because exploitation requires a pod inside the cluster; PR:L because any standard workload suffices; S:C because the bypass escapes the policy boundary to affect peer workloads; no availability impact.
Primary rating from Vendor (GitHub_M).
CVSS VectorVendor: GitHub_M
Lifecycle Timeline
3DescriptionCVE.org
Cilium is a networking, observability, and security solution. From 1.19.0 to 1.19.4, standard Kubernetes NetworkPolicy specifications using CIDR-based ipBlock rules without pod or namespace selectors erroneously generate a wildcard namespace allow rule when Cilium is configured with a custom clusterName rather than the default any value. The parser incorrectly instantiates a pod selector on selectorless peer definitions, allowing traffic from other workloads in the same namespace as the subject of the policy. This issue is fixed in version 1.19.5.
AnalysisAI
Network policy bypass in Cilium 1.19.0-1.19.4 allows workloads inside a Kubernetes namespace to reach peers that CIDR-based ipBlock NetworkPolicies should block. The flaw surfaces exclusively when Cilium is deployed with a custom clusterName (any value other than the default 'any'): the network-policy parser in parseNetworkPolicyPeer erroneously instantiates an empty pod selector for selectorless ipBlock peers, which compiles into a wildcard namespace-allow rule instead of a pure CIDR rule. No public exploit code has been identified at time of analysis, and this CVE is not listed in the CISA KEV catalog.
Technical ContextAI
Cilium is a eBPF-based CNI plugin that enforces Kubernetes NetworkPolicy at the dataplane level via compiled policy rules in pkg/k8s/network_policy.go. The affected code path is parseNetworkPolicyPeer(), which translates a NetworkPolicyPeer struct (containing either an IPBlock CIDR range or pod/namespace label selectors) into a Cilium-internal types.Selector. In versions 1.19.0-1.19.4, when a peer contained only an IPBlock (no PodSelector or NamespaceSelector), the function did not return early after processing the CIDR block; it continued into a branch that created an empty pod label selector (slim_metav1.LabelSelector{}) and appended it to the policy's L3 rules. Under a custom clusterName, that empty selector resolved to a wildcard allow for the entire namespace rather than being a no-op, causing the CIDR restriction to be silently augmented with blanket intra-namespace access. The root cause is classified as CWE-863 (Incorrect Authorization): the authorization check (CIDR-scoped network policy) is evaluated but its output is overridden by a spurious selector. The fix (PR #46305) adds an early return for the IPBlock case before any pod selector is instantiated. CPE cpe:2.3:a:cilium:cilium:*:*:*:*:*:*:*:* covers all editions 1.19.0-1.19.4.
RemediationAI
Upgrade Cilium to version 1.19.5, which contains the corrected parseNetworkPolicyPeer() logic in pkg/k8s/network_policy.go (commits 1c84ae3b58a7cd54f7ee355e6c524c82f620eae8 and bacea640404c0805c23515353dc1681c5bf35171). The release is available at https://github.com/cilium/cilium/releases/tag/v1.19.5. If an immediate upgrade is not possible, a targeted workaround is to rewrite affected NetworkPolicies to include an explicit podSelector or namespaceSelector on every peer that also carries an ipBlock - this forces the parser into a different, correctly-behaving branch. A second option is to temporarily set clusterName back to the default 'any', which disables the code path that produces the spurious wildcard selector; however, this may conflict with multi-cluster routing or identity requirements and should be validated against the deployment architecture before applying. Clusters that have never set a custom clusterName are not exposed and require no action.
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-863 – Incorrect Authorization
View allSame technique Authentication Bypass
View allShare
External POC / Exploit Code
Leaving vuln.today
EUVD-2026-44774
GHSA-fm8w-2m5w-9j7r