CVE-2024-38558: net: openvswitch: fix overwriting ct original tuple for ICMPv6
In the Linux kernel, the following vulnerability has been resolved:
net: openvswitch: fix overwriting ct original tuple for ICMPv6
OVS_PACKET_CMD_EXECUTE has 3 main attributes:
- OVS_PACKET_ATTR_KEY - Packet metadata in a netlink format.
- OVS_PACKET_ATTR_PACKET - Binary packet content.
- OVS_PACKET_ATTR_ACTIONS - Actions to execute on the packet.
OVS_PACKET_ATTR_KEY is parsed first to populate sw_flow_key structure
with the metadata like conntrack state, input port, recirculation id,
etc. Then the packet itself gets parsed to populate the rest of the
keys from the packet headers.
Whenever the packet parsing code starts parsing the ICMPv6 header, it
first zeroes out fields in the key corresponding to Neighbor Discovery
information even if it is not an ND packet.
It is an 'ipv6.nd' field. However, the 'ipv6' is a union that shares
the space between 'nd' and 'ct_orig' that holds the original tuple
conntrack metadata parsed from the OVS_PACKET_ATTR_KEY.
ND packets should not normally have conntrack state, so it's fine to
share the space, but normal ICMPv6 Echo packets or maybe other types of
ICMPv6 can have the state attached and it should not be overwritten.
The issue results in all but the last 4 bytes of the destination
address being wiped from the original conntrack tuple leading to
incorrect packet matching and potentially executing wrong actions
in case this packet recirculates within the datapath or goes back
to userspace.
ND fields should not be accessed in non-ND packets, so not clearing
them should be fine. Executing memset() only for actual ND packets to
avoid the issue.
Initializing the whole thing before parsing is needed because ND packet
may not contain all the options.
The issue only affects the OVS_PACKET_CMD_EXECUTE path and doesn't
affect packets entering OVS datapath from network interfaces, because
in this case CT metadata is populated from skb after the packet is
already parsed.
Security readout for executives and security teams
Plain-English summary
This Linux kernel Open vSwitch issue can corrupt connection-tracking metadata for some ICMPv6 packets submitted through a specific OVS execute path. The practical concern is incorrect packet matching and potentially wrong datapath actions. The source says normal packets entering OVS from network interfaces are not affected.
Executive priority
Treat as a targeted network-control integrity issue. Patch OVS-dependent infrastructure during the next security maintenance window, sooner for SDN, virtualization, or multi-tenant environments where incorrect flow actions could weaken segmentation.
Technical view
OVS_PACKET_CMD_EXECUTE parses netlink key metadata before packet headers. For non-Neighbor Discovery ICMPv6 traffic, parsing cleared ipv6.nd fields that share storage with ipv6.ct_orig, wiping most of the original conntrack destination address. This affects recirculation or userspace-returned packets in that execute path.
Likely exposure
Exposure is most likely on Linux systems using kernel Open vSwitch with IPv6, conntrack metadata, and OVS_PACKET_CMD_EXECUTE-style userspace packet execution. Generic Linux hosts without OVS, or OVS traffic entering normally from interfaces, appear less exposed based on the source description.
Exploitation context
The bundle marks KEV as false and provides no cited evidence of active exploitation. The described impact is policy or flow misclassification through corrupted conntrack original tuple data, not direct remote code execution. Exploitability depends on deployment-specific OVS packet processing paths.
Researcher notes
The key boundary is OVS_PACKET_CMD_EXECUTE. The source explicitly excludes packets entering OVS datapath from network interfaces because conntrack metadata is populated after parsing. Evidence is insufficient to claim broad remote exploitability or active attacks.
Mitigation direction
Apply the relevant Linux kernel stable or distribution security update.
Prioritize OVS-enabled virtualization, SDN, and container-networking hosts using IPv6 conntrack.
Check Debian, Siemens, or other vendor advisories for product-specific fixed builds.
If immediate patching is blocked, review vendor guidance for safe operational workarounds.
Validation and detection
Inventory Linux kernel versions on systems running Open vSwitch.
Confirm whether kernel OVS and IPv6 conntrack are used in production paths.
Verify the installed kernel includes the referenced stable fix or vendor backport.
Regression-test OVS policies involving ICMPv6, conntrack state, and recirculation.
Generated from the cited source records. This long-tail analysis has not been individually reviewed by a named human.
Potential ATT&CK relevance
Conservative CVE-to-ATT&CK context
These mappings and lookup hints may be relevant to the vulnerability behavior, CWE, affected product, or exposure path. Glexia-inferred context is not an official MITRE, ATT&CK, CWE, or CVE Program mapping.
ATT&CK lookup starting points
Use these exact CWE pages and searches to review the Glexia ATT&CK library from this CVE's weakness and description context.
cve · low confidence lookup
CVE-2024-38558 mapping review
Open the CVE-to-ATT&CK bridge for reviewed, inferred, or future official mappings tied to this CVE.
These fields come from the CVE record and ADP containers, not from Glexia's Take. They preserve time-varying source decisions such as CISA SSVC, KEV status, CVSS metrics, and provider references.