Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

x/vulndb: potential Go vuln in github.com/cilium/cilium: CVE-2023-41333 #2083

Closed
GoVulnBot opened this issue Sep 27, 2023 · 3 comments
Closed
Assignees

Comments

@GoVulnBot
Copy link

CVE-2023-41333 references github.com/cilium/cilium, which may be a Go module.

Description:
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.

References:

Cross references:

See doc/triage.md for instructions on how to triage this report.

modules:
    - module: github.com/cilium/cilium
      vulnerable_at: 1.14.2
      packages:
        - package: cilium
description: |-
    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.
cves:
    - CVE-2023-41333
references:
    - advisory: https://github.com/cilium/cilium/security/advisories/GHSA-4xp2-w642-7mcx
    - fix: https://github.com/cilium/cilium/pull/28007
    - web: https://docs.cilium.io/en/stable/security/threat-model/#kubernetes-api-server-attacker

@jba jba self-assigned this Oct 2, 2023
@jba
Copy link
Contributor

jba commented Oct 2, 2023

Vulnerability in tool.

@jba jba added the excluded: EFFECTIVELY_PRIVATE This vulnerability exists in a package can be imported, but isn't meant to be outside that module. label Oct 2, 2023
@gopherbot
Copy link
Contributor

Change https://go.dev/cl/531705 mentions this issue: data/excluded: batch add 18 excluded reports

@jba
Copy link
Contributor

jba commented Oct 2, 2023

Duplicate of #2080

@jba jba marked this as a duplicate of #2080 Oct 2, 2023
@jba jba closed this as completed Oct 2, 2023
@jba jba added duplicate and removed excluded: EFFECTIVELY_PRIVATE This vulnerability exists in a package can be imported, but isn't meant to be outside that module. labels Oct 2, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants