// For flags

CVE-2023-41333

Bypass of namespace restrictions in CiliumNetworkPolicy

Severity Score

8.1
*CVSS v3.1

Exploit Likelihood

*EPSS

Affected Versions

*CPE

Public Exploits

0
*Multiple Sources

Exploited in Wild

-
*KEV

Decision

Track
*SSVC
Descriptions

Cilium is a networking, observability, and security solution with an eBPF-based dataplane. An attacker with the ability to create or modify CiliumNetworkPolicy objects in a particular namespace is able to affect traffic on an entire Cilium cluster, potentially bypassing policy enforcement in other namespaces. By using a crafted `endpointSelector` that uses the `DoesNotExist` operator on the `reserved:init` label, the attacker can create policies that bypass namespace restrictions and affect the entire Cilium cluster. This includes potentially allowing or denying all traffic. This attack requires API server access, as described in the Kubernetes API Server Attacker section of the Cilium Threat Model. This issue has been resolved in Cilium versions 1.14.2, 1.13.7, and 1.12.14. As a workaround an admission webhook can be used to prevent the use of `endpointSelectors` that use the `DoesNotExist` operator on the `reserved:init` label in CiliumNetworkPolicies.

Cilium es una solución de redes, observabilidad y seguridad con un plano de datos basado en eBPF. Un atacante con la capacidad de crear o modificar objetos CiliumNetworkPolicy en un espacio de nombres particular puede afectar el tráfico en un clúster Cilium completo, evitando potencialmente la aplicación de políticas en otros espacios de nombres. Al utilizar un `endpointSelector` manipulado que utiliza el operador `DoesNotExist` en la etiqueta `reserved:init`, el atacante puede crear políticas que eludan las restricciones del espacio de nombres y afecten a todo el clúster de Cilium. Esto incluye potencialmente permitir o denegar todo el tráfico. Este ataque requiere acceso al servidor API, como se describe en la sección Atacante del servidor API de Kubernetes del modelo de amenazas de Cilium. Este problema se resolvió en las versiones 1.14.2, 1.13.7 y 1.12.14 de Cilium. Como workaround, se puede utilizar un webhook de admisión para evitar el uso de `endpointSelectors` que utilizan el operador `DoesNotExist` en la etiqueta `reserved:init` en CiliumNetworkPolicies.

*Credits: N/A
CVSS Scores
Attack Vector
Adjacent
Attack Complexity
Low
Privileges Required
High
User Interaction
None
Scope
Changed
Confidentiality
None
Integrity
High
Availability
High
Attack Vector
Adjacent
Attack Complexity
Low
Privileges Required
High
User Interaction
None
Scope
Changed
Confidentiality
Low
Integrity
None
Availability
High
Attack Vector
Adjacent
Attack Complexity
Low
Authentication
Multiple
Confidentiality
None
Integrity
Complete
Availability
Complete
* Common Vulnerability Scoring System
SSVC
  • Decision:Track
Exploitation
None
Automatable
No
Tech. Impact
Partial
* Organization's Worst-case Scenario
Timeline
  • 2023-08-28 CVE Reserved
  • 2023-09-26 CVE Published
  • 2024-09-23 CVE Updated
  • 2024-10-02 EPSS Updated
  • ---------- Exploited in Wild
  • ---------- KEV Due Date
  • ---------- First Exploit
CWE
  • CWE-306: Missing Authentication for Critical Function
CAPEC
Affected Vendors, Products, and Versions
Vendor Product Version Other Status
Vendor Product Version Other Status <-- --> Vendor Product Version Other Status
Cilium
Search vendor "Cilium"
Cilium
Search vendor "Cilium" for product "Cilium"
< 1.12.14
Search vendor "Cilium" for product "Cilium" and version " < 1.12.14"
-
Affected
Cilium
Search vendor "Cilium"
Cilium
Search vendor "Cilium" for product "Cilium"
>= 1.13.0 < 1.13.7
Search vendor "Cilium" for product "Cilium" and version " >= 1.13.0 < 1.13.7"
-
Affected
Cilium
Search vendor "Cilium"
Cilium
Search vendor "Cilium" for product "Cilium"
>= 1.14.0 < 1.14.2
Search vendor "Cilium" for product "Cilium" and version " >= 1.14.0 < 1.14.2"
-
Affected