HOMEVULNERABILITIESCVE-2026-31649
CRITICAL

CVE-2026-31649

Published: April 24, 2026· Updated: Apr 27, 2026

9.8
CVSS v3.1
EPSS:0.02%probability of exploitation in 30 daysPercentile:6.8th

Official Description

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

net: stmmac: fix integer underflow in chain mode

The jumbo_frm() chain-mode implementation unconditionally computes

len = nopaged_len - bmax;

where nopaged_len = skb_headlen(skb) (linear bytes only) and bmax is

BUF_SIZE_8KiB or BUF_SIZE_2KiB. However, the caller stmmac_xmit()

decides to invoke jumbo_frm() based on skb->len (total length including

page fragments):

is_jumbo = stmmac_is_jumbo_frm(priv, skb->len, enh_desc);

When a packet has a small linear portion (nopaged_len <= bmax) but a

large total length due to page fragments (skb->len > bmax), the

subtraction wraps as an unsigned integer, producing a huge len value

(~0xFFFFxxxx). This causes the while (len != 0) loop to execute

hundreds of thousands of iterations, passing skb->data + bmax * i

pointers far beyond the skb buffer to dma_map_single(). On IOMMU-less

SoCs (the typical deployment for stmmac), this maps arbitrary kernel

memory to the DMA engine, constituting a kernel memory disclosure and

potential memory corruption from hardware.

Fix this by introducing a buf_len local variable clamped to

min(nopaged_len, bmax). Computing len = nopaged_len - buf_len is then

always safe: it is zero when the linear portion fits within a single

descriptor, causing the while (len != 0) loop to be skipped naturally,

and the fragment loop in stmmac_xmit() handles page fragments afterward.

NVD Source

Technical Analysis

CVE-2026-31649 can be exploited remotely over the network without requiring physical or adjacent access, significantly expanding the attack surface for threat actors.

The vulnerability requires no privileges and no user interaction, making it a prime target for automated exploitation campaigns and worm-like propagation.

A successful exploit results in complete confidentiality breach (data exposure), full integrity compromise (data manipulation), availability disruption (denial of service), with a CVSS base score of 9.8.

CVSS v3.1 Vector Breakdown

Exploitability
Attack VectorNetwork
Attack ComplexityLow
Privileges Req.None
User InteractionNone
ScopeUnchanged
Impact
ConfidentialityHigh
IntegrityHigh
AvailabilityHigh
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H

Affected Vendors & Products

Linux1 product
linux kernel
Source: NVD CPE · 3 total CPE entries

Exploit & PoC Resources

NO KNOWN EXPLOITNo public exploit confirmed at this time
External links open in a new tab. Always verify in a controlled environment before use.

Official Patches & Advisories

All References (8)

Quick Facts

CVE IDCVE-2026-31649
CVSS Score9.8 / 10
SeverityCRITICAL
CISA KEVNo
EPSS (30d)0.02%
Affected1 vendor
PublishedApr 24, 2026

Recommended Actions

  • Apply vendor patches immediately
  • Monitor CVE-2026-31649 in threat intel feeds
  • Review IDS/IPS signatures for exploitation attempts
Data sourced from NVD (NIST), CISA KEV, and EPSS (FIRST). Analysis generated by CTIWATCH.COM. CVE data is provided under the NVD usage policy.