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

ipv4: reject undersized MTUs in ip_do_fragment()

ip_do_fragment() subtracts the IPv4 header length from the effective
MTU and passes the resulting payload MTU to ip_frag_next().

If the effective MTU is smaller than hlen + 8, ip_frag_next() rounds
the fragment payload length down to zero. The fragmentation state then
never makes forward progress: state->left, state->ptr and state->offset
stay unchanged while ip_do_fragment() keeps allocating and transmitting
header-only fragments until the softlockup detector fires.

This is reproducible with a route installed using "mtu lock 20", but it
is also reproducible without route MTU lock, for example by forwarding a
packet to a device whose MTU is 20.

Fix it in ip_do_fragment() by rejecting mtu < hlen + 8 with -EMSGSIZE,
matching the existing IPv6 fragmentation check.
Published: 2026-09-04
Score: n/a
EPSS: n/a
KEV: No
Impact: n/a
Action: n/a
AI Analysis

Impact

The flaw lies in the way IPv4 fragmentation is handled. When a fragment packet is directed to a path whose MTU is too low—specifically less than the header length plus eight bytes— the fragmentation routine creates fragments that contain only headers. This causes the fragmentation state to stall; the kernel continues to send header‑only fragments, never advancing the fragmentation process. The result is a hard kernel cycle that triggers the softlockup detector, effectively freezing the forwarding path and reducing overall system responsiveness. No arbitrary code execution is possible; the impact is limited to denial of service.

Affected Systems

All Linux kernel implementations inheriting the buggy ip_do_fragment() logic are affected. The issue manifests on systems that forward packets to interfaces with MTU values below 28 bytes, such as a route configured with "mtu lock 20" or a physical device with a 20‑byte MTU. The kernel version before the applied patch is vulnerable; any release after the commit that adds the MTU check is presumed fixed.

Risk and Exploitability

The vulnerability can be triggered by sending crafted IPv4 packets that require fragmentation over a path with a very small MTU. An attacker with the ability to inject such traffic into the network can cause a kernel softlockup, leading to service denial until a reboot or restart of the affected process. The EPSS score is not available and the vulnerability is not listed in CISA's KEV catalog, so the current public exploitation probability is uncertain. However, the CVSS score is not provided in the advisory, implying that the severity is at least high due to potential widespread kernel impact. Administrators should treat this as a significant risk if small‑MTU interfaces exist in their environment.

Generated by OpenCVE AI on September 4, 2026 at 16:58 UTC.

Remediation

No vendor fix or workaround currently provided.

OpenCVE Recommended Actions

  • Update the kernel to a release that includes the fix for ip_do_fragment(); ensure the kernel version matches the commit that rejects MTU values less than header length plus eight bytes.
  • Audit and adjust network configuration to avoid or increase MTUs that fall below 28 bytes; remove "mtu lock 20" directives and verify that physical and virtual interfaces use a safe MTU.
  • After applying the patch or configuration changes, restart the network stack if necessary and monitor kernel logs for softlockup messages to confirm that the issue has been resolved.

Generated by OpenCVE AI on September 4, 2026 at 16:58 UTC.

Tracking

Sign in to view the affected projects.

Advisories

No advisories yet.

History

Fri, 04 Sep 2026 17:15:00 +0000

Type Values Removed Values Added
Weaknesses CWE-674

Fri, 04 Sep 2026 15:30:00 +0000

Type Values Removed Values Added
Description In the Linux kernel, the following vulnerability has been resolved: ipv4: reject undersized MTUs in ip_do_fragment() ip_do_fragment() subtracts the IPv4 header length from the effective MTU and passes the resulting payload MTU to ip_frag_next(). If the effective MTU is smaller than hlen + 8, ip_frag_next() rounds the fragment payload length down to zero. The fragmentation state then never makes forward progress: state->left, state->ptr and state->offset stay unchanged while ip_do_fragment() keeps allocating and transmitting header-only fragments until the softlockup detector fires. This is reproducible with a route installed using "mtu lock 20", but it is also reproducible without route MTU lock, for example by forwarding a packet to a device whose MTU is 20. Fix it in ip_do_fragment() by rejecting mtu < hlen + 8 with -EMSGSIZE, matching the existing IPv6 fragmentation check.
Title ipv4: reject undersized MTUs in ip_do_fragment()
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-09-04T15:13:05.814Z

Reserved: 2026-08-26T14:34:25.793Z

Link: CVE-2026-80793

cve-icon Vulnrichment

No data.

cve-icon NVD

Status : Received

Published: 2026-09-04T16:18:05.613

Modified: 2026-09-04T16:18:05.613

Link: CVE-2026-80793

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

Updated: 2026-09-04T18:45:02Z

Weaknesses