☠️
EXFILTRATING
DATA...
01010111 10110010 00101001 11000110 01101100 10011011 00010001 11100101 01000010 10101111
[ <-- BACK_TO_SEARCH ]
[ VENDOR STATS ]
CVSS: 5.8 🐛 CWE-755
👁️
Common Weakness Enumeration - Identifies the specific category of software weakness or flaw.

CVE-2024-52529

CVE-2024-52529 Supply Chain Attack in Cilium
📅 PUBLISHED: 2024-11-25 18:49 UTC 🔄 UPDATED: 2026-09-23 20:28 UTC
[ OFFICIAL PATCH DEPLOYED ↓ ] FIX: LIKELY — 2 independent sources confirm fix
[ DEFENSE PATCH ↓ ]
💣 PoC: None
👁️
Proof of Concept - Indicates if functional exploit code is publicly available, drastically increasing the risk of immediate attacks.
🎯 EPSS: 0.52%
👁️
0.52% probability
13.0× above the median CVE
Tier: ELEVATED
30-day exploitation window · FIRST.org · updated daily
Patch available — upgrade to latest release
CVSS SEVERITY SCALE
9.0–10.0 CRITICAL
7.0–8.9 HIGH
4.0–6.9 MEDIUM
0.1–3.9 LOW
0.0 NONE
5.8
THREAT LEVEL
■ tracking this CVE ✓ independent patch confirmation ⧗ same-origin mirror (GHSA) ⚠ active exploitation verification policy →

Executive Summary

CVE-2024-52529 is a protection mechanism failure vulnerability in Cilium, a networking, observability, and security solution with an eBPF-based dataplane. The flaw specifically affects Cilium v1.16.0 through v1.16.3 when using the newly introduced port range functionality. In a specific configuration where an allow policy selects a Layer 3 destination and a port range, AND a Layer 7 allow policy selects a specific port within that range, the Layer 7 enforcement is bypassed for traffic matching the Layer 7 policy. This allows an attacker to potentially bypass application-layer security controls, leading to a partial loss of confidentiality and integrity. The vulnerability has a CVSS score of 5.8 (Medium) and is patched in Cilium v1.16.4.

⚡ AUTOMATE YOUR CVE INTELLIGENCE

This record — and 170,000+ others — are available via the ValtersIT API. One endpoint replaces five: NVD + GitHub CVE + CISA KEV + EPSS + Nuclei + Exploit-DB, unified.

›Patch confidence — UNVERIFIED to CONFIRMED, cross-referenced NVD + RHSA + Debian
›Exploit & PoC — poc_status, poc_url, has_exploit. Not in NVD.
›Shodan dorks — ready-made queries to find exposed vulnerable systems
›Detection rules — YARA · Wazuh · Elastic (all plans) · Sigma (Pro)
›pending_fields — know exactly which of 7 fields NVD hasn't processed yet
›Free backfill — data incomplete when you paid? Re-check within 30 days = 0 credits
PAYG €0.08/lookup Standard €19/mo (was €29) · 5k credits Pro €65/mo (was €99) · 20k credits FOUNDING PRICE · LOCKED FOR LIFE · ENDS 31 DEC 2026
[ FROM €19/MO ]
Free sandbox key available
No signup required

Supply Chain & Package Security

This vulnerability affects the Cilium project, which is distributed as a container image and via package managers for Kubernetes environments. Users should verify they are not running Cilium v1.16.0 through v1.16.3. The official patch is available in the Cilium GitHub repository (PR #35150) and in the v1.16.4 release.

CVSS Breakdown & Threat Level

  • CVSS Score: 5.8 (Medium)
  • Vector: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:L/A:N
  • Attack Vector (AV): Network (N) - The vulnerability can be exploited remotely over the network.
  • Attack Complexity (AC): Low (L) - No special conditions are required for exploitation.
  • Privileges Required (PR): None (N) - No authentication is needed.
  • User Interaction (UI): None (N) - No user action is required.
  • Scope (S): Unchanged (U) - The impact is confined to the vulnerable component.
  • Confidentiality (C): Low (L) - Limited information disclosure is possible.
  • Integrity (I): Low (L) - Limited data modification is possible.
  • Availability (A): None (N) - No impact on availability.

Threat Level: Medium. The vulnerability requires a specific policy configuration to be exploitable, but if present, it allows bypassing Layer 7 security controls, which could be used to exfiltrate data or inject malicious content.

Deep Dive & Mechanics

The vulnerability lies in Cilium's policy enforcement engine when handling port ranges. Cilium uses eBPF programs to enforce network policies at both Layer 3/4 (network and transport) and Layer 7 (application). The port range feature, introduced in v1.16, allows administrators to specify a range of ports (e.g., 8000-9000) in a policy.

The flaw occurs when two policies are combined:

  1. Policy A: An allow policy that selects a Layer 3 destination (e.g., an IP or CIDR) and a port range (e.g., TCP/8000-9000).
  2. Policy B: A Layer 7 allow policy that selects a specific port within that range (e.g., TCP/8080) and an application protocol (e.g., HTTP).

In this configuration, the Layer 7 enforcement for traffic matching Policy B is not applied. The traffic is allowed through based solely on the Layer 3/4 policy, bypassing the intended Layer 7 inspection (e.g., HTTP method filtering, path restrictions).

The root cause is a logic error in how Cilium's policy engine merges and prioritizes rules. When a port range is present, the engine incorrectly skips the Layer 7 enforcement for specific ports that are also covered by a Layer 7 policy. This is because the port range policy is evaluated first, and the Layer 7 policy is not properly linked to the specific port within the range.

Vulnerable vs. Patched Code

The vulnerable code is in Cilium's policy enforcement logic, specifically in the pkg/policy directory. The exact code is not publicly disclosed, but the patch (PR #35150) addresses the logic error in merging port range and Layer 7 policies.

Vulnerable Logic (Conceptual):

// Vulnerable: When a port range policy matches, Layer 7 enforcement is skipped for specific ports.
func enforcePolicy(conn *Connection) {
    if matchPortRange(conn) {
        // Allow traffic based on L3/L4 policy
        return ALLOW
    }
    if matchL7Policy(conn) {
        // Enforce L7 policy
        return enforceL7(conn)
    }
    return DENY
}

Patched Logic (Conceptual):

// Patched: Layer 7 enforcement is checked even if a port range policy matches.
func enforcePolicy(conn *Connection) {
    if matchPortRange(conn) {
        if matchL7Policy(conn) {
            // Enforce L7 policy for specific ports
            return enforceL7(conn)
        }
        // Allow traffic based on L3/L4 policy for other ports
        return ALLOW
    }
    if matchL7Policy(conn) {
        return enforceL7(conn)
    }
    return DENY
}

The patch ensures that when a connection matches both a port range policy and a Layer 7 policy, the Layer 7 enforcement is applied.

Exploitation & Lab Setup

Red Team (Exploitation)

Prerequisites:

  • A Kubernetes cluster running Cilium v1.16.0 to v1.16.3.
  • A CiliumNetworkPolicy that matches the vulnerable configuration (L3/L4 allow with port range + L7 allow on a specific port within that range).

Exploitation Steps:

  1. Identify the vulnerable configuration: Scan the cluster for CiliumNetworkPolicies that use port ranges and Layer 7 rules.
  2. Craft malicious traffic: Send traffic to the specific port that is covered by the Layer 7 policy, but with content that violates the Layer 7 rules (e.g., using a forbidden HTTP method).
  3. Observe bypass: The traffic will be allowed through, bypassing the Layer 7 enforcement.

Example Attack: Assume a policy allows TCP traffic to port range 8000-9000, and a Layer 7 policy allows only HTTP GET requests to port 8080. An attacker can send an HTTP POST request to port 8080, and it will be allowed because the Layer 7 enforcement is bypassed.

Blue Team (Detection & Defense)

Detection:

  • Monitor Cilium agent logs for policy enforcement errors or warnings.
  • Use network monitoring tools to detect anomalous traffic patterns that violate expected Layer 7 behavior.
  • Implement additional security controls (e.g., Web Application Firewall) to catch bypassed Layer 7 rules.

Defense:

  • Upgrade to Cilium v1.16.4 or later.
  • As a workaround, rewrite policies that use port ranges to individually specify the ports permitted for traffic.
  • Audit all CiliumNetworkPolicies for the vulnerable configuration pattern.

Indicators of Compromise (IOCs)

  • Network Traffic: Traffic that matches a Layer 7 policy but is not being inspected (e.g., HTTP requests with forbidden methods on allowed ports).
  • Cilium Agent Logs: Log entries indicating policy enforcement mismatches or errors related to port range handling.
  • Policy Configuration: CiliumNetworkPolicies that combine port ranges with Layer 7 rules on specific ports within that range.

Detection Engineering

YARA Rule

rule CVE_2024_52529_Cilium_Port_Range_Bypass {
    meta:
        description = "Detects Cilium configurations vulnerable to CVE-2024-52529"
        author = "Valters IT"
        date = "2024-01-01"
        reference = "https://nvd.nist.gov/vuln/detail/CVE-2024-52529"
    strings:
        $port_range = /portRange:\s*\d+-\d+/ nocase
        $l7_rule = /l7Rules:/ nocase
        $allow = /allow:/ nocase
    condition:
        all of ($port_range, $l7_rule, $allow)
}

Sigma Rule

title: Cilium Port Range Layer 7 Bypass Detection
id: 7a8b9c0d-1e2f-3a4b-5c6d-7e8f9a0b1c2d
status: experimental
description: Detects potential exploitation of CVE-2024-52529 by monitoring for traffic that bypasses Layer 7 enforcement.
author: Valters IT
date: 2024/01/01
logsource:
    category: network
    product: cilium
detection:
    selection:
        event: "policy_verdict"
        verdict: "allowed"
        l7_protocol: "http"
        http_method: "POST"  # Example: forbidden method
    condition: selection
falsepositives:
    - Legitimate traffic that matches the Layer 7 policy (should not happen if policy is correctly configured)
level: high

Suricata Rule

alert tcp any any -> any 8000:9000 (msg:"CVE-2024-52529 - Cilium Port Range L7 Bypass"; flow:to_server,established; content:"POST"; http_method; sid:1000001; rev:1;)

Remediation & Mitigation

Immediate Remediation:

  • Upgrade Cilium to v1.16.4 or later. This is the only complete fix.

Mitigation (if upgrade is not possible):

  • Rewrite any CiliumNetworkPolicies that use port ranges to individually specify the ports permitted for traffic. For example, instead of portRange: 8000-9000, use ports: [8000, 8080, 9000].
  • Temporarily disable Layer 7 policies that are affected by this issue.
  • Implement additional network security controls (e.g., network segmentation, WAF) to compensate for the bypass.

Long-term Prevention:

  • Regularly update Cilium to the latest stable version.
  • Conduct policy audits to ensure no vulnerable configurations exist.
  • Implement automated testing for policy enforcement in CI/CD pipelines.

Valters IT
DevSecOps & Cyber Threat Intelligence Expert

◈ SOURCE Analysis & enrichment: valtersit.com/cve/CVE-2024-52529/ · CVE data: NVD/MITRE (public domain) · © 2026 ValtersIT Hub
>_ SYSTEM_CORE: INTEL_ACTIVE
90% TEAM-CURATED // 10% AUTOMATED INGESTION.
ALL PATCH REFERENCES AND VERSION DATA SOURCED FROM NVD + OSV OFFICIAL REGISTRIES.