Description
In the Linux kernel, the following vulnerability has been resolved:

vxlan: use pskb_network_may_pull() in route_shortcircuit()

route_shortcircuit() currently calls pskb_may_pull(skb, sizeof(struct iphdr))
(or ipv6hdr), which checks if bytes are available starting from skb->data.

However, in vxlan_xmit(), skb->data points to the MAC header, so
skb_network_offset(skb) is ETH_HLEN (14 bytes). Using pskb_may_pull(skb, 20)
only checks 20 bytes from skb->data (which is 14 bytes MAC header + 6 bytes of
IP header), leaving the rest of the IP header potentially un-pulled in non-linear
frags. Subsequent dereferences of ip_hdr(skb)->daddr can read beyond the pulled
linear buffer length.

Fix this by using pskb_network_may_pull(), which adds skb_network_offset(skb) to
the length check to ensure the full network header is present in the linear buffer.
Published: 2026-08-15
Score: 9.8 Critical
EPSS: < 1% Very Low
KEV: No
Impact: n/a
Action: n/a
AI Analysis

Impact

The Linux kernel’s VXLAN implementation contains a flaw in the route_shortcircuit() routine, which uses pskb_may_pull() relative to skb->data. This miscalculates the number of bytes that must be present in the linear buffer, allowing the code to read beyond the pulled network header when handling VXLAN packets. The over-read can expose kernel memory contents or cause a kernel panic, providing confidentiality or availability impact.

Affected Systems

All Linux kernel deployments that include the unpatched VXLAN code are affected. The CVE does not list specific kernel versions, so any build that relies on the legacy route_shortcircuit() logic is considered vulnerable until the patch that switches to pskb_network_may_pull() is applied.

Risk and Exploitability

The EPSS score is < 1 %, indicating a low probability of exploitation, and the vulnerability is not listed in CISA’s KEV catalog. The CVSS score of 9.8 reflects a high severity. The likely attack vector is via traffic processed by the VXLAN stack – an attacker able to inject crafted VXLAN packets into the host, either over the physical network or through virtual interfaces, could trigger the fault. This is an inferred assessment based on the description, as the precise exploit path is not detailed in the CVE data.

Generated by OpenCVE AI on August 21, 2026 at 21:49 UTC.

Remediation

No vendor fix or workaround currently provided.

OpenCVE Recommended Actions

  • Apply the latest kernel update that incorporates the pskb_network_may_pull fix to route_shortcircuit()
  • If a kernel upgrade cannot be performed immediately, block VXLAN UDP traffic (port 4789) on interfaces that do not require the protocol using firewall rules or by disabling the VXLAN module
  • If VXLAN must remain active, isolate VXLAN traffic to trusted VNFs and apply strict network segmentation to limit exposure

Generated by OpenCVE AI on August 21, 2026 at 21:49 UTC.

Tracking

Sign in to view the affected projects.

Advisories
Source ID Title
Debian DSA Debian DSA DSA-6466-1 linux security update
History

Thu, 20 Aug 2026 00:15:00 +0000

Type Values Removed Values Added
Weaknesses CWE-125
References
Metrics threat_severity

None

threat_severity

Moderate


Wed, 19 Aug 2026 16:45:00 +0000


Mon, 17 Aug 2026 11:45:00 +0000

Type Values Removed Values Added
Weaknesses CWE-119

Mon, 17 Aug 2026 06:00:00 +0000

Type Values Removed Values Added
Metrics cvssV3_1

{'score': 9.8, 'vector': 'CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H'}


Sat, 15 Aug 2026 16:00:00 +0000

Type Values Removed Values Added
Weaknesses CWE-119

Sat, 15 Aug 2026 12:45:00 +0000

Type Values Removed Values Added
Description In the Linux kernel, the following vulnerability has been resolved: vxlan: use pskb_network_may_pull() in route_shortcircuit() route_shortcircuit() currently calls pskb_may_pull(skb, sizeof(struct iphdr)) (or ipv6hdr), which checks if bytes are available starting from skb->data. However, in vxlan_xmit(), skb->data points to the MAC header, so skb_network_offset(skb) is ETH_HLEN (14 bytes). Using pskb_may_pull(skb, 20) only checks 20 bytes from skb->data (which is 14 bytes MAC header + 6 bytes of IP header), leaving the rest of the IP header potentially un-pulled in non-linear frags. Subsequent dereferences of ip_hdr(skb)->daddr can read beyond the pulled linear buffer length. Fix this by using pskb_network_may_pull(), which adds skb_network_offset(skb) to the length check to ensure the full network header is present in the linear buffer.
Title vxlan: use pskb_network_may_pull() in route_shortcircuit()
First Time appeared Linux
Linux linux Kernel
CPEs cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*
Vendors & Products Linux
Linux linux Kernel
References

Subscriptions

Linux Linux Kernel
cve-icon MITRE

Status: PUBLISHED

Assigner: Linux

Published:

Updated: 2026-08-19T16:37:25.639Z

Reserved: 2026-08-15T05:44:03.903Z

Link: CVE-2026-74473

cve-icon Vulnrichment

No data.

cve-icon NVD

Status : Received

Published: 2026-08-15T13:17:52.060

Modified: 2026-08-19T17:21:04.623

Link: CVE-2026-74473

cve-icon Redhat

Severity : Moderate

Publid Date: 2026-08-15T00:00:00Z

Links: CVE-2026-74473 - Bugzilla

cve-icon OpenCVE Enrichment

Updated: 2026-08-21T22:00:15Z

Weaknesses