Vulnerability · Published Dec 29, 2024 · Assigned by Linux
CVE-2024-56719net: stmmac: fix TSO DMA API usage causing oops
Critical 10.0
In plain English
A critical-severity security flaw 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 46% 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 TSO DMA API usage causing oops Commit 66600fac7a98 ("net: stmmac: TSO: Fix unbalanced DMA map/unmap for non-paged SKB data") moved the assignment of tx_skbuff_dma[]'s members to be later in stmmac_tso_xmit(). The buf (dma cookie) and len stored in this structure are passed to dma_unmap_single() by stmmac_tx_clean(). The DMA API requires that the dma cookie passed to dma_unmap_single() is the same as the value returned from dma_map_single(). However, by moving the assignment later, this is not the case when priv->dma_cap.addr64 > 32 as "des" is offset by proto_hdr_len. This causes problems such as: dwc-eth-dwmac 2490000.ethernet eth0: Tx DMA map failed and with DMA_API_DEBUG enabled: DMA-API: dwc-eth-dwmac 2490000.ethernet: device driver tries to +free DMA memory it has not allocated [device address=0x000000ffffcf65c0] [size=66 bytes] Fix this by maintaining "des" as the original DMA cookie, and use tso_des to pass the offset DMA cookie to stmmac_tso_allocator(). Full details of the crashes can be found at: https://lore.kernel.org/all/d8112193-0386-4e14-b516-37c2d838171a@nvidia.com/ https://lore.kernel.org/all/klkzp5yn5kq5efgtrow6wbvnc46bcqfxs65nz3qy77ujr5turc@bwwhelz2l4dw/
Affected packages & fixed versions
| Ecosystem | Package | Fixed in | Advisory |
|---|---|---|---|
| Debian:12 | linux | 6.1.170-1 | DEBIAN-CVE-2024-56719 |
| Debian:13 | linux | 6.12.8-1 | DEBIAN-CVE-2024-56719 |
| Debian:14 | linux | 6.12.8-1 | DEBIAN-CVE-2024-56719 |
| Ubuntu:22.04:LTS | linux | 5.15.0-186.196 | UBUNTU-CVE-2024-56719 |
| Ubuntu:22.04:LTS | linux | 5.15.0-186.196 | USN-8575-1 |
| Ubuntu:22.04:LTS | linux-allwinner-5.19 | no fix listed | UBUNTU-CVE-2024-56719 |
| Ubuntu:22.04:LTS | linux-aws | 5.15.0-1112.119 | UBUNTU-CVE-2024-56719 |
| Ubuntu:22.04:LTS | linux-aws | 5.15.0-1112.119 | USN-8575-2 |
| Ubuntu:22.04:LTS | linux-aws-5.19 | no fix listed | UBUNTU-CVE-2024-56719 |
| Ubuntu:22.04:LTS | linux-aws-6.2 | no fix listed | UBUNTU-CVE-2024-56719 |
| Ubuntu:22.04:LTS | linux-aws-6.5 | no fix listed | UBUNTU-CVE-2024-56719 |
| Ubuntu:22.04:LTS | linux-azure | 5.15.0-1117.126 | USN-8575-3 |
| Ubuntu:22.04:LTS | linux-azure | 5.15.0-1117.126 | UBUNTU-CVE-2024-56719 |
| Ubuntu:22.04:LTS | linux-azure-5.19 | no fix listed | UBUNTU-CVE-2024-56719 |
| Ubuntu:22.04:LTS | linux-azure-6.2 | no fix listed | UBUNTU-CVE-2024-56719 |
| Ubuntu:22.04:LTS | linux-azure-6.5 | no fix listed | UBUNTU-CVE-2024-56719 |
| Ubuntu:22.04:LTS | linux-azure-fde | 5.15.0-1117.126 | UBUNTU-CVE-2024-56719 |
| Ubuntu:22.04:LTS | linux-azure-fde | 5.15.0-1117.126 | USN-8610-1 |
| Ubuntu:22.04:LTS | linux-azure-fde-5.19 | no fix listed | UBUNTU-CVE-2024-56719 |
| Ubuntu:22.04:LTS | linux-azure-fde-6.2 | no fix listed | UBUNTU-CVE-2024-56719 |
| Ubuntu:22.04:LTS | linux-gcp | 5.15.0-1112.122 | UBUNTU-CVE-2024-56719 |
| Ubuntu:22.04:LTS | linux-gcp | 5.15.0-1112.122 | USN-8575-1 |
| Ubuntu:22.04:LTS | linux-gcp-5.19 | no fix listed | UBUNTU-CVE-2024-56719 |
| Ubuntu:22.04:LTS | linux-gcp-6.2 | no fix listed | UBUNTU-CVE-2024-56719 |
| Ubuntu:22.04:LTS | linux-gcp-6.5 | no fix listed | UBUNTU-CVE-2024-56719 |
| Ubuntu:22.04:LTS | linux-gke | 5.15.0-1108.114 | USN-8575-1 |
| Ubuntu:22.04:LTS | linux-gke | 5.15.0-1108.114 | UBUNTU-CVE-2024-56719 |
| Ubuntu:22.04:LTS | linux-gkeop | 5.15.0-1095.103 | USN-8575-1 |
| Ubuntu:22.04:LTS | linux-gkeop | 5.15.0-1095.103 | UBUNTU-CVE-2024-56719 |
| Ubuntu:22.04:LTS | linux-hwe-5.19 | no fix listed | UBUNTU-CVE-2024-56719 |
| Ubuntu:24.04:LTS | linux-hwe-6.11 | 6.11.0-21.21~24.04.1 | UBUNTU-CVE-2024-56719 |
| Ubuntu:22.04:LTS | linux-hwe-6.2 | no fix listed | UBUNTU-CVE-2024-56719 |
| Ubuntu:22.04:LTS | linux-hwe-6.5 | no fix listed | UBUNTU-CVE-2024-56719 |
| Ubuntu:22.04:LTS | linux-ibm | 5.15.0-1106.110 | UBUNTU-CVE-2024-56719 |
| Ubuntu:22.04:LTS | linux-ibm | 5.15.0-1106.110 | USN-8575-2 |
| Ubuntu:22.04:LTS | linux-intel-iot-realtime | no fix listed | UBUNTU-CVE-2024-56719 |
| Ubuntu:22.04:LTS | linux-intel-iotg | 5.15.0-1107.113 | UBUNTU-CVE-2024-56719 |
| Ubuntu:22.04:LTS | linux-intel-iotg | 5.15.0-1107.113 | USN-8620-4 |
| Ubuntu:22.04:LTS | linux-kvm | 5.15.0-1104.109 | USN-8575-1 |
| Ubuntu:22.04:LTS | linux-kvm | 5.15.0-1104.109 | UBUNTU-CVE-2024-56719 |
| Ubuntu:22.04:LTS | linux-lowlatency | 5.15.0-184.194 | USN-8575-1 |
| Ubuntu:22.04:LTS | linux-lowlatency | 5.15.0-184.194 | UBUNTU-CVE-2024-56719 |
| Ubuntu:22.04:LTS | linux-lowlatency-hwe-5.19 | no fix listed | UBUNTU-CVE-2024-56719 |
| Ubuntu:22.04:LTS | linux-lowlatency-hwe-6.2 | no fix listed | UBUNTU-CVE-2024-56719 |
| Ubuntu:22.04:LTS | linux-lowlatency-hwe-6.5 | no fix listed | UBUNTU-CVE-2024-56719 |
| Ubuntu:22.04:LTS | linux-nvidia | 5.15.0-1107.108 | USN-8575-2 |
| Ubuntu:22.04:LTS | linux-nvidia | 5.15.0-1107.108 | UBUNTU-CVE-2024-56719 |
| Ubuntu:22.04:LTS | linux-nvidia-6.2 | no fix listed | UBUNTU-CVE-2024-56719 |
| Ubuntu:22.04:LTS | linux-nvidia-6.5 | no fix listed | UBUNTU-CVE-2024-56719 |
| Ubuntu:22.04:LTS | linux-nvidia-tegra | 5.15.0-1064.66 | UBUNTU-CVE-2024-56719 |
| Ubuntu:22.04:LTS | linux-nvidia-tegra | 5.15.0-1064.66 | USN-8576-2 |
| Ubuntu:22.04:LTS | linux-nvidia-tegra-igx | 5.15.0-1053.53 | USN-8576-2 |
| Ubuntu:22.04:LTS | linux-nvidia-tegra-igx | 5.15.0-1053.53 | UBUNTU-CVE-2024-56719 |
| Ubuntu:22.04:LTS | linux-oem-5.17 | no fix listed | UBUNTU-CVE-2024-56719 |
| Ubuntu:22.04:LTS | linux-oem-6.0 | no fix listed | UBUNTU-CVE-2024-56719 |
| Ubuntu:22.04:LTS | linux-oem-6.1 | no fix listed | UBUNTU-CVE-2024-56719 |
| Ubuntu:24.04:LTS | linux-oem-6.11 | 6.11.0-1017.17 | UBUNTU-CVE-2024-56719 |
| Ubuntu:22.04:LTS | linux-oem-6.5 | no fix listed | UBUNTU-CVE-2024-56719 |
| Ubuntu:22.04:LTS | linux-oracle | 5.15.0-1109.115 | USN-8575-3 |
| Ubuntu:22.04:LTS | linux-oracle | 5.15.0-1109.115 | UBUNTU-CVE-2024-56719 |
| Ubuntu:22.04:LTS | linux-oracle-6.5 | no fix listed | UBUNTU-CVE-2024-56719 |
| Ubuntu:22.04:LTS | linux-raspi | 5.15.0-1106.109 | UBUNTU-CVE-2024-56719 |
| Ubuntu:22.04:LTS | linux-raspi | 5.15.0-1106.109 | USN-8668-2 |
| Ubuntu:24.04:LTS | linux-raspi-realtime | no fix listed | UBUNTU-CVE-2024-56719 |
| Ubuntu:22.04:LTS | linux-realtime | no fix listed | UBUNTU-CVE-2024-56719 |
| Ubuntu:22.04:LTS | linux-riscv | no fix listed | UBUNTU-CVE-2024-56719 |
| Ubuntu:22.04:LTS | linux-riscv-5.19 | no fix listed | UBUNTU-CVE-2024-56719 |
| Ubuntu:22.04:LTS | linux-riscv-6.5 | no fix listed | UBUNTU-CVE-2024-56719 |
| Ubuntu:22.04:LTS | linux-starfive-5.19 | no fix listed | UBUNTU-CVE-2024-56719 |
| Ubuntu:22.04:LTS | linux-starfive-6.2 | no fix listed | UBUNTU-CVE-2024-56719 |
| Ubuntu:22.04:LTS | linux-starfive-6.5 | no fix listed | UBUNTU-CVE-2024-56719 |
| Ubuntu:22.04:LTS | linux-xilinx-zynqmp | 5.15.0-1075.79 | UBUNTU-CVE-2024-56719 |
| Ubuntu:22.04:LTS | linux-xilinx-zynqmp | 5.15.0-1075.79 | USN-8575-1 |
Affected products (as reported)
| Vendor | Product | Versions |
|---|---|---|
| Linux | Linux | ece593fc9c00741b682869d3f3dc584d37b7c9df – before 05968b6dd0ffc65d7386608b11a11fb4fdfc9f36a3ff23f7c3f0e13f718900803e090fd3997d6bc9 – before 6abcdc9a73274052a9e96a1926994ecf9aedad8207c9c26e37542486e34d767505e842f48f29c3f6 – before db3667c9bbfbbf5de98e6c9542f7e03fb524328666600fac7a984dea4ae095411f644770b2561ede – before 9d5dd7ccea1b46a9a7c6b3c2b9e5ed8864e185e266600fac7a984dea4ae095411f644770b2561ede – before 4c49f38e20a57f8abaebdf95b369295b153d1f8e58d23d835eb498336716cca55b5714191a3092865.15.171 – before 5.15.2096.1.116 – before 6.1.167 |
| Linux | Linux | 6.12 |
References
- https://git.kernel.org/stable/c/05968b6dd0ffc65d7386608b11a11fb4fdfc9f36
- https://git.kernel.org/stable/c/6abcdc9a73274052a9e96a1926994ecf9aedad82
- https://git.kernel.org/stable/c/db3667c9bbfbbf5de98e6c9542f7e03fb5243286
- https://git.kernel.org/stable/c/9d5dd7ccea1b46a9a7c6b3c2b9e5ed8864e185e2
- https://git.kernel.org/stable/c/4c49f38e20a57f8abaebdf95b369295b153d1f8e
- 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
- https://cert-portal.siemens.com/productcert/html/ssa-784472.html