Vulnerability · Published Apr 24, 2026 · Assigned by Linux
CVE-2026-31649net: stmmac: fix integer underflow in chain mode
Critical 9.8
In plain English
A critical-severity integer overflow in Linux from Linux. There are no confirmed reports of exploitation so far. The chance it is exploited in the next 30 days is estimated at 0.5% (higher than 40% of all known vulnerabilities). Fixed versions are available - upgrade the affected package.
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.
Affected packages & fixed versions
| Ecosystem | Package | Fixed in | Advisory |
|---|---|---|---|
| Debian:12 | linux | 6.1.170-1 | DEBIAN-CVE-2026-31649 |
| Debian:13 | linux | 6.12.85-1 | DEBIAN-CVE-2026-31649 |
| Debian:14 | linux | 6.19.13-1 | DEBIAN-CVE-2026-31649 |
| Ubuntu:22.04:LTS | linux | 5.15.0-185.195 | UBUNTU-CVE-2026-31649 |
| Ubuntu:22.04:LTS | linux | 5.15.0-185.195 | USN-8493-1 |
| Ubuntu:24.04:LTS | linux | 6.8.0-134.134 | UBUNTU-CVE-2026-31649 |
| Ubuntu:25.10 | linux | 6.17.0-40.40 | USN-8490-1 |
| Ubuntu:25.10 | linux | 6.17.0-40.40 | UBUNTU-CVE-2026-31649 |
| Ubuntu:22.04:LTS | linux-allwinner-5.19 | no fix listed | UBUNTU-CVE-2026-31649 |
| Ubuntu:22.04:LTS | linux-aws | 5.15.0-1111.118 | USN-8493-1 |
| Ubuntu:22.04:LTS | linux-aws | 5.15.0-1111.118 | UBUNTU-CVE-2026-31649 |
| Ubuntu:24.04:LTS | linux-aws | 6.8.0-1060.63 | UBUNTU-CVE-2026-31649 |
| Ubuntu:25.10 | linux-aws | 6.17.0-1019.19 | USN-8490-1 |
| Ubuntu:25.10 | linux-aws | 6.17.0-1019.19 | UBUNTU-CVE-2026-31649 |
| Ubuntu:22.04:LTS | linux-aws-5.19 | no fix listed | UBUNTU-CVE-2026-31649 |
| Ubuntu:24.04:LTS | linux-aws-6.14 | no fix listed | UBUNTU-CVE-2026-31649 |
| Ubuntu:24.04:LTS | linux-aws-6.17 | 6.17.0-1019.19~24.04.1 | USN-8490-1 |
| Ubuntu:24.04:LTS | linux-aws-6.17 | 6.17.0-1019.19~24.04.1 | UBUNTU-CVE-2026-31649 |
| Ubuntu:22.04:LTS | linux-aws-6.2 | no fix listed | UBUNTU-CVE-2026-31649 |
| Ubuntu:22.04:LTS | linux-aws-6.5 | no fix listed | UBUNTU-CVE-2026-31649 |
| Ubuntu:22.04:LTS | linux-aws-6.8 | 6.8.0-1060.63~22.04.1 | UBUNTU-CVE-2026-31649 |
| Ubuntu:22.04:LTS | linux-azure | 5.15.0-1116.125 | USN-8493-1 |
| Ubuntu:22.04:LTS | linux-azure | 5.15.0-1116.125 | UBUNTU-CVE-2026-31649 |
| Ubuntu:24.04:LTS | linux-azure | 6.8.0-1063.71 | UBUNTU-CVE-2026-31649 |
| Ubuntu:25.10 | linux-azure | no fix listed | UBUNTU-CVE-2026-31649 |
| Ubuntu:22.04:LTS | linux-azure-5.19 | no fix listed | UBUNTU-CVE-2026-31649 |
| Ubuntu:24.04:LTS | linux-azure-6.11 | no fix listed | UBUNTU-CVE-2026-31649 |
| Ubuntu:24.04:LTS | linux-azure-6.14 | no fix listed | UBUNTU-CVE-2026-31649 |
| Ubuntu:24.04:LTS | linux-azure-6.17 | 6.17.0-1021.21~24.04.1 | UBUNTU-CVE-2026-31649 |
| Ubuntu:22.04:LTS | linux-azure-6.2 | no fix listed | UBUNTU-CVE-2026-31649 |
| Ubuntu:22.04:LTS | linux-azure-6.5 | no fix listed | UBUNTU-CVE-2026-31649 |
| Ubuntu:22.04:LTS | linux-azure-6.8 | 6.8.0-1063.71~22.04.1 | UBUNTU-CVE-2026-31649 |
| Ubuntu:22.04:LTS | linux-azure-fde | 5.15.0-1116.125 | UBUNTU-CVE-2026-31649 |
| Ubuntu:24.04:LTS | linux-azure-fde | 6.8.0-1062.69 | UBUNTU-CVE-2026-31649 |
| Ubuntu:25.10 | linux-azure-fde | no fix listed | UBUNTU-CVE-2026-31649 |
| Ubuntu:22.04:LTS | linux-azure-fde-5.19 | no fix listed | UBUNTU-CVE-2026-31649 |
| Ubuntu:24.04:LTS | linux-azure-fde-6.14 | no fix listed | UBUNTU-CVE-2026-31649 |
| Ubuntu:22.04:LTS | linux-azure-fde-6.2 | no fix listed | UBUNTU-CVE-2026-31649 |
| Ubuntu:22.04:LTS | linux-azure-fde-6.8 | 6.8.0-1062.69~22.04.1 | UBUNTU-CVE-2026-31649 |
| Ubuntu:24.04:LTS | linux-azure-nvidia | no fix listed | UBUNTU-CVE-2026-31649 |
| Ubuntu:24.04:LTS | linux-azure-nvidia-6.14 | no fix listed | UBUNTU-CVE-2026-31649 |
| Ubuntu:22.04:LTS | linux-gcp | 5.15.0-1111.121 | UBUNTU-CVE-2026-31649 |
| Ubuntu:22.04:LTS | linux-gcp | 5.15.0-1111.121 | USN-8493-1 |
| Ubuntu:24.04:LTS | linux-gcp | 6.8.0-1063.69 | UBUNTU-CVE-2026-31649 |
| Ubuntu:25.10 | linux-gcp | 6.17.0-1020.22 | UBUNTU-CVE-2026-31649 |
| Ubuntu:25.10 | linux-gcp | 6.17.0-1020.22 | USN-8490-1 |
| Ubuntu:22.04:LTS | linux-gcp-5.19 | no fix listed | UBUNTU-CVE-2026-31649 |
| Ubuntu:24.04:LTS | linux-gcp-6.11 | no fix listed | UBUNTU-CVE-2026-31649 |
| Ubuntu:24.04:LTS | linux-gcp-6.14 | no fix listed | UBUNTU-CVE-2026-31649 |
| Ubuntu:24.04:LTS | linux-gcp-6.17 | 6.17.0-1020.22~24.04.1 | USN-8490-1 |
| Ubuntu:24.04:LTS | linux-gcp-6.17 | 6.17.0-1020.22~24.04.1 | UBUNTU-CVE-2026-31649 |
| Ubuntu:22.04:LTS | linux-gcp-6.2 | no fix listed | UBUNTU-CVE-2026-31649 |
| Ubuntu:22.04:LTS | linux-gcp-6.5 | no fix listed | UBUNTU-CVE-2026-31649 |
| Ubuntu:22.04:LTS | linux-gcp-6.8 | 6.8.0-1063.69~22.04.1 | UBUNTU-CVE-2026-31649 |
| Ubuntu:22.04:LTS | linux-gke | 5.15.0-1107.113 | UBUNTU-CVE-2026-31649 |
| Ubuntu:22.04:LTS | linux-gke | 5.15.0-1107.113 | USN-8493-1 |
| Ubuntu:24.04:LTS | linux-gke | 6.8.0-1058.64 | UBUNTU-CVE-2026-31649 |
| Ubuntu:22.04:LTS | linux-gkeop | 5.15.0-1094.102 | USN-8493-1 |
| Ubuntu:22.04:LTS | linux-gkeop | 5.15.0-1094.102 | UBUNTU-CVE-2026-31649 |
| Ubuntu:24.04:LTS | linux-gkeop | 6.8.0-1045.48 | UBUNTU-CVE-2026-31649 |
| Ubuntu:22.04:LTS | linux-hwe-5.19 | no fix listed | UBUNTU-CVE-2026-31649 |
| Ubuntu:24.04:LTS | linux-hwe-6.11 | no fix listed | UBUNTU-CVE-2026-31649 |
| Ubuntu:24.04:LTS | linux-hwe-6.14 | no fix listed | UBUNTU-CVE-2026-31649 |
| Ubuntu:24.04:LTS | linux-hwe-6.17 | 6.17.0-40.40~24.04.1 | USN-8545-1 |
| Ubuntu:24.04:LTS | linux-hwe-6.17 | 6.17.0-40.40~24.04.1 | UBUNTU-CVE-2026-31649 |
| Ubuntu:22.04:LTS | linux-hwe-6.2 | no fix listed | UBUNTU-CVE-2026-31649 |
| Ubuntu:22.04:LTS | linux-hwe-6.5 | no fix listed | UBUNTU-CVE-2026-31649 |
| Ubuntu:22.04:LTS | linux-hwe-6.8 | 6.8.0-136.136~22.04.1 | UBUNTU-CVE-2026-31649 |
| Ubuntu:22.04:LTS | linux-ibm | 5.15.0-1105.109 | USN-8493-1 |
| Ubuntu:22.04:LTS | linux-ibm | 5.15.0-1105.109 | UBUNTU-CVE-2026-31649 |
| Ubuntu:24.04:LTS | linux-ibm | 6.8.0-1060.61 | UBUNTU-CVE-2026-31649 |
| Ubuntu:22.04:LTS | linux-ibm-6.8 | 6.8.0-1060.61~22.04.1 | UBUNTU-CVE-2026-31649 |
| Ubuntu:22.04:LTS | linux-intel-iot-realtime | no fix listed | UBUNTU-CVE-2026-31649 |
| Ubuntu:22.04:LTS | linux-intel-iotg | 5.15.0-1106.112 | UBUNTU-CVE-2026-31649 |
| Ubuntu:22.04:LTS | linux-intel-iotg | 5.15.0-1106.112 | USN-8493-1 |
| Ubuntu:22.04:LTS | linux-kvm | 5.15.0-1103.108 | USN-8493-1 |
| Ubuntu:22.04:LTS | linux-kvm | 5.15.0-1103.108 | UBUNTU-CVE-2026-31649 |
| Ubuntu:22.04:LTS | linux-lowlatency | 5.15.0-183.193 | UBUNTU-CVE-2026-31649 |
| Ubuntu:22.04:LTS | linux-lowlatency | 5.15.0-183.193 | USN-8493-1 |
| Ubuntu:24.04:LTS | linux-lowlatency | 6.8.0-134.134.1 | UBUNTU-CVE-2026-31649 |
| Ubuntu:22.04:LTS | linux-lowlatency-hwe-5.19 | no fix listed | UBUNTU-CVE-2026-31649 |
| Ubuntu:24.04:LTS | linux-lowlatency-hwe-6.11 | no fix listed | UBUNTU-CVE-2026-31649 |
| Ubuntu:22.04:LTS | linux-lowlatency-hwe-6.2 | no fix listed | UBUNTU-CVE-2026-31649 |
| Ubuntu:22.04:LTS | linux-lowlatency-hwe-6.5 | no fix listed | UBUNTU-CVE-2026-31649 |
| Ubuntu:22.04:LTS | linux-lowlatency-hwe-6.8 | 6.8.0-134.134.1~22.04.1 | UBUNTU-CVE-2026-31649 |
| Ubuntu:22.04:LTS | linux-nvidia | 5.15.0-1106.107 | UBUNTU-CVE-2026-31649 |
| Ubuntu:22.04:LTS | linux-nvidia | 5.15.0-1106.107 | USN-8493-1 |
| Ubuntu:24.04:LTS | linux-nvidia | 6.8.0-1058.61 | UBUNTU-CVE-2026-31649 |
| Ubuntu:26.04:LTS | linux-nvidia | 7.0.0-1006.6 | UBUNTU-CVE-2026-31649 |
| Ubuntu:24.04:LTS | linux-nvidia-6.11 | no fix listed | UBUNTU-CVE-2026-31649 |
| Ubuntu:24.04:LTS | linux-nvidia-6.17 | 6.17.0-1026.26 | USN-8508-1 |
| Ubuntu:24.04:LTS | linux-nvidia-6.17 | 6.17.0-1026.26 | UBUNTU-CVE-2026-31649 |
| Ubuntu:22.04:LTS | linux-nvidia-6.2 | no fix listed | UBUNTU-CVE-2026-31649 |
| Ubuntu:22.04:LTS | linux-nvidia-6.5 | no fix listed | UBUNTU-CVE-2026-31649 |
| Ubuntu:22.04:LTS | linux-nvidia-6.8 | 6.8.0-1058.61~22.04.1 | UBUNTU-CVE-2026-31649 |
| Ubuntu:24.04:LTS | linux-nvidia-lowlatency | 6.8.0-1058.61.1 | UBUNTU-CVE-2026-31649 |
| Ubuntu:22.04:LTS | linux-nvidia-tegra | 5.15.0-1063.63 | UBUNTU-CVE-2026-31649 |
| Ubuntu:22.04:LTS | linux-nvidia-tegra | 5.15.0-1063.63 | USN-8493-1 |
| Ubuntu:24.04:LTS | linux-nvidia-tegra | 6.8.0-1029.30 | UBUNTU-CVE-2026-31649 |
| Ubuntu:22.04:LTS | linux-nvidia-tegra-igx | 5.15.0-1052.52 | UBUNTU-CVE-2026-31649 |
| Ubuntu:22.04:LTS | linux-nvidia-tegra-igx | 5.15.0-1052.52 | USN-8493-1 |
| Ubuntu:22.04:LTS | linux-oem-5.17 | no fix listed | UBUNTU-CVE-2026-31649 |
| Ubuntu:22.04:LTS | linux-oem-6.0 | no fix listed | UBUNTU-CVE-2026-31649 |
| Ubuntu:22.04:LTS | linux-oem-6.1 | no fix listed | UBUNTU-CVE-2026-31649 |
| Ubuntu:24.04:LTS | linux-oem-6.11 | no fix listed | UBUNTU-CVE-2026-31649 |
| Ubuntu:24.04:LTS | linux-oem-6.14 | no fix listed | UBUNTU-CVE-2026-31649 |
| Ubuntu:24.04:LTS | linux-oem-6.17 | 6.17.0-1028.28 | USN-8491-1 |
| Ubuntu:24.04:LTS | linux-oem-6.17 | 6.17.0-1028.28 | UBUNTU-CVE-2026-31649 |
| Ubuntu:22.04:LTS | linux-oem-6.5 | no fix listed | UBUNTU-CVE-2026-31649 |
| Ubuntu:24.04:LTS | linux-oem-6.8 | no fix listed | UBUNTU-CVE-2026-31649 |
| Ubuntu:22.04:LTS | linux-oracle | 5.15.0-1108.114 | UBUNTU-CVE-2026-31649 |
| Ubuntu:22.04:LTS | linux-oracle | 5.15.0-1108.114 | USN-8493-1 |
| Ubuntu:24.04:LTS | linux-oracle | 6.8.0-1057.58 | UBUNTU-CVE-2026-31649 |
| Ubuntu:25.10 | linux-oracle | 6.17.0-1018.18 | UBUNTU-CVE-2026-31649 |
| Ubuntu:25.10 | linux-oracle | 6.17.0-1018.18 | USN-8490-1 |
| Ubuntu:24.04:LTS | linux-oracle-6.14 | no fix listed | UBUNTU-CVE-2026-31649 |
| Ubuntu:24.04:LTS | linux-oracle-6.17 | 6.17.0-1018.18~24.04.1 | USN-8490-1 |
| Ubuntu:24.04:LTS | linux-oracle-6.17 | 6.17.0-1018.18~24.04.1 | UBUNTU-CVE-2026-31649 |
| Ubuntu:22.04:LTS | linux-oracle-6.5 | no fix listed | UBUNTU-CVE-2026-31649 |
| Ubuntu:22.04:LTS | linux-oracle-6.8 | 6.8.0-1057.58~22.04.1 | UBUNTU-CVE-2026-31649 |
| Ubuntu:22.04:LTS | linux-raspi | 5.15.0-1105.108 | USN-8527-1 |
| Ubuntu:22.04:LTS | linux-raspi | 5.15.0-1105.108 | UBUNTU-CVE-2026-31649 |
| Ubuntu:24.04:LTS | linux-raspi | 6.8.0-1060.64 | UBUNTU-CVE-2026-31649 |
| Ubuntu:25.10 | linux-raspi | 6.17.0-1021.21 | USN-8546-1 |
| Ubuntu:25.10 | linux-raspi | 6.17.0-1021.21 | UBUNTU-CVE-2026-31649 |
| Ubuntu:24.04:LTS | linux-raspi-realtime | no fix listed | UBUNTU-CVE-2026-31649 |
| Ubuntu:22.04:LTS | linux-realtime | no fix listed | UBUNTU-CVE-2026-31649 |
| Ubuntu:24.04:LTS | linux-realtime | no fix listed | UBUNTU-CVE-2026-31649 |
| Ubuntu:25.10 | linux-realtime | 6.17.0-1017.19 | USN-8490-2 |
| Ubuntu:25.10 | linux-realtime | 6.17.0-1017.19 | UBUNTU-CVE-2026-31649 |
| Ubuntu:22.04:LTS | linux-riscv | no fix listed | UBUNTU-CVE-2026-31649 |
| Ubuntu:24.04:LTS | linux-riscv | no fix listed | UBUNTU-CVE-2026-31649 |
| Ubuntu:25.10 | linux-riscv | 6.17.0-40.40.1 | UBUNTU-CVE-2026-31649 |
| Ubuntu:22.04:LTS | linux-riscv-5.19 | no fix listed | UBUNTU-CVE-2026-31649 |
| Ubuntu:24.04:LTS | linux-riscv-6.14 | no fix listed | UBUNTU-CVE-2026-31649 |
| Ubuntu:24.04:LTS | linux-riscv-6.17 | no fix listed | UBUNTU-CVE-2026-31649 |
| Ubuntu:22.04:LTS | linux-riscv-6.5 | no fix listed | UBUNTU-CVE-2026-31649 |
| Ubuntu:22.04:LTS | linux-riscv-6.8 | 6.8.0-134.134~22.04.1 | UBUNTU-CVE-2026-31649 |
| Ubuntu:22.04:LTS | linux-starfive-5.19 | no fix listed | UBUNTU-CVE-2026-31649 |
| Ubuntu:22.04:LTS | linux-starfive-6.2 | no fix listed | UBUNTU-CVE-2026-31649 |
| Ubuntu:22.04:LTS | linux-starfive-6.5 | no fix listed | UBUNTU-CVE-2026-31649 |
| Ubuntu:24.04:LTS | linux-vmware | 6.8.0-1008.8 | UBUNTU-CVE-2026-31649 |
| Ubuntu:24.04:LTS | linux-xilinx | 6.8.0-1032.33 | UBUNTU-CVE-2026-31649 |
| Ubuntu:22.04:LTS | linux-xilinx-zynqmp | 5.15.0-1074.78 | USN-8528-1 |
| Ubuntu:22.04:LTS | linux-xilinx-zynqmp | 5.15.0-1074.78 | UBUNTU-CVE-2026-31649 |
Affected products (as reported)
| Vendor | Product | Versions |
|---|---|---|
| Linux | Linux | 286a837217204b1ef105e3a554d0757e4fdfaac1 – before 513e06735f5be575b409d195822195348b164e48286a837217204b1ef105e3a554d0757e4fdfaac1 – before 275bdf762e82082f064e60a92448fa2ac43cf95b286a837217204b1ef105e3a554d0757e4fdfaac1 – before a2b68a9a476b9544ff31f1fbcd5d80867a8a5e2f286a837217204b1ef105e3a554d0757e4fdfaac1 – before b7b8012193fd98236d7ae05d4b553f010a77b2ef286a837217204b1ef105e3a554d0757e4fdfaac1 – before 2c91b39912278d0878f9ba60ba04d2518b18a08d286a837217204b1ef105e3a554d0757e4fdfaac1 – before 6fca757c20396dc2e604dcc61922264e9e3dc803286a837217204b1ef105e3a554d0757e4fdfaac1 – before 10d12b9240ebf96c785f0e2e4228318cd5f3a3eb286a837217204b1ef105e3a554d0757e4fdfaac1 – before 51f4e090b9f87b40c21b6daadb5c06e6c0a07b67 |
| Linux | Linux | 3.2 |
Weakness: CWE-190 · Vector: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
References
- https://git.kernel.org/stable/c/513e06735f5be575b409d195822195348b164e48
- https://git.kernel.org/stable/c/275bdf762e82082f064e60a92448fa2ac43cf95b
- https://git.kernel.org/stable/c/a2b68a9a476b9544ff31f1fbcd5d80867a8a5e2f
- https://git.kernel.org/stable/c/b7b8012193fd98236d7ae05d4b553f010a77b2ef
- https://git.kernel.org/stable/c/2c91b39912278d0878f9ba60ba04d2518b18a08d
- https://git.kernel.org/stable/c/6fca757c20396dc2e604dcc61922264e9e3dc803
- https://git.kernel.org/stable/c/10d12b9240ebf96c785f0e2e4228318cd5f3a3eb
- https://git.kernel.org/stable/c/51f4e090b9f87b40c21b6daadb5c06e6c0a07b67
- https://cert-portal.siemens.com/productcert/html/ssa-082556.html
- https://cert-portal.siemens.com/productcert/html/ssa-019113.html
- https://cert-portal.siemens.com/productcert/html/ssa-457936.html