CVE-2023-39347 Detail

Description

Cilium is a networking, observability, and security solution with an eBPF-based dataplane. An attacker with the ability to update pod labels can cause Cilium to apply incorrect network policies. This issue arises due to the fact that on pod update, Cilium incorrectly uses user-provided pod labels to select the policies which apply to the workload in question. This can affect Cilium network policies that use the namespace, service account or cluster constructs to restrict traffic, Cilium clusterwide network policies that use Cilium namespace labels to select the Pod and Kubernetes network policies. Non-existent construct names can be provided, which bypass all network policies applicable to the construct. For example, providing a pod with a non-existent namespace as the value of the `io.kubernetes.pod.namespace` label results in none of the namespaced CiliumNetworkPolicies applying to the pod in question. This attack requires the attacker to have Kubernetes API Server access, as described in the Cilium Threat Model. This issue has been resolved in: Cilium versions 1.14.2, 1.13.7, and 1.12.14. Users are advised to upgrade. As a workaround an admission webhook can be used to prevent pod label updates to the `k8s:io.kubernetes.pod.namespace` and `io.cilium.k8s.policy.*` keys.

Severity

CVSS 3.x Severity and Metrics:

CVSS 2.0 Severity and Metrics:

References to Advisories, Solutions, and Tools

By selecting these links, you will be leaving NIST webspace. We have provided these links to other web sites because they may have information that would be of interest to you. No inferences should be drawn on account of other sites being referenced, or not, from this page. There may be other web sites that are more appropriate for your purpose. NIST does not necessarily endorse the views expressed, or concur with the facts presented on these sites. Further, NIST does not endorse any commercial products that may be mentioned on these sites. Please address comments about this page to [email protected].

Weakness Enumeration

CWE-ID CWE Name Source
CWE-345 Insufficient Verification of Data Authenticity GitHub, Inc.  

Change History

1 change records found show changes

Initial Analysis by NIST 9/29/2023 11:54:47 AM

Action Type Old Value New Value
Added CPE Configuration
OR
     *cpe:2.3:a:cilium:cilium:*:*:*:*:*:*:*:* versions up to (excluding) 1.12.14
     *cpe:2.3:a:cilium:cilium:*:*:*:*:*:*:*:* versions from (including) 1.13.0 up to (excluding) 1.13.7
     *cpe:2.3:a:cilium:cilium:*:*:*:*:*:*:*:* versions from (including) 1.14.0 up to (excluding) 1.14.2
Added CVSS V3.1
NIST AV:A/AC:L/PR:L/UI:N/S:C/C:H/I:H/A:H
Changed Reference Type
https://docs.cilium.io/en/latest/security/threat-model/#kubernetes-api-server-attacker No Types Assigned
https://docs.cilium.io/en/latest/security/threat-model/#kubernetes-api-server-attacker Exploit, Technical Description, Vendor Advisory
Changed Reference Type
https://github.com/cilium/cilium/security/advisories/GHSA-gj2r-phwg-6rww No Types Assigned
https://github.com/cilium/cilium/security/advisories/GHSA-gj2r-phwg-6rww Vendor Advisory

Quick Info

CVE Dictionary Entry:
CVE-2023-39347
NVD Published Date:
09/27/2023
NVD Last Modified:
09/29/2023
Source:
GitHub, Inc.