CVE-2024-47825: Cilium's CIDR deny policies may not take effect when a more narrow CIDR allow is present
4
CVSS Score
3.1
Basic Information
CVE ID
GHSA ID
EPSS Score
0.09334%
CWE
Published
10/21/2024
Updated
11/1/2024
KEV Status
No
Technology
Go
Technical Details
CVSS Vector
CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:C/C:L/I:N/A:N
Package Name | Ecosystem | Vulnerable Versions | First Patched Version |
---|---|---|---|
github.com/cilium/cilium | go | >= 1.15.0, < 1.15.10 | 1.15.10 |
github.com/cilium/cilium | go | >= 1.14.0, < 1.14.16 | 1.14.16 |
Vulnerability Intelligence
Miggo AI
Root Cause Analysis
The vulnerability stems from the policy insertion logic in denyPreferredInsertWithChanges. The commit diff shows significant modifications to CIDR superset handling and port/protocol comparisons. The original implementation would delete deny entries when a narrower allow rule with 'enableDefaultDeny: false' or 'toEntities: all' existed, due to incorrect assumptions about CIDR relationship handling and datapath enforcement priorities. The patched version adds new conditional checks (identityIsSupersetOf, PortProtoIsBroader) and preserves critical deny entries through additional key insertion, confirming the vulnerability resided in this function's decision logic.