net: mvpp2: sync RX data at the hardware packet offset
- Published
- Last modified
- Where the record stands: published, rejected by its publisher, or superseded by another id.What do these mean? →
- published
- Whether CISA lists it in its Known Exploited Vulnerabilities catalog: proof that attackers are using it.What do these mean? →
- Not listed in CISA KEV
- Fix
- Fixed in 5.10.259, 5.15.210, 6.1.176, 6.6.143, 6.12.94, and 2 more
- Whether working attack code is public (Exploit-DB, Metasploit, Nuclei or GitHub). Public code makes attacks easier.What do these mean? →
- None on Exploit-DB, Metasploit or GitHub
- Exploitation: none
- Automatable: yes
- Technical impact: partial
Summary
In the Linux kernel, the following vulnerability has been resolved: net: mvpp2: sync RX data at the hardware packet offset mvpp2 programs the RX queue packet offset, so hardware writes received data at dma_addr + MVPP2_SKB_HEADROOM. The current CPU sync starts at dma_addr and only covers rx_bytes + MVPP2_MH_SIZE bytes, which syncs the unused headroom and misses the same number of bytes at the packet tail. On non-coherent DMA systems this can leave the CPU reading stale cache contents for the end of the received frame. Use dma_sync_single_range_for_cpu() with MVPP2_SKB_HEADROOM as the range offset so the sync covers the Marvell header and packet data actually written by hardware.
Timeline
- CVE published
- CISA SSVC assessment
Exploitation: none · Automatable: yes · Technical impact: partial
- Record last updated
Affected versions
- Linux Linux
From e1921168bbd4810de4197446e52f652cd0dd9541 · fixed in 60412bdd1b2576659eac23a23d2d9ff96228a643; From e1921168bbd4810de4197446e52f652cd0dd9541 · fixed in 19f8bc139e9b149d1e5bf75ae761d1bb8dd3e7d8; From e1921168bbd4810de4197446e52f652cd0dd9541 · fixed in a3ad9b5767c89531fc7dae951b51b0933dcf7051; From e1921168bbd4810de4197446e52f652cd0dd9541 · fixed in bede0f481b9137d73d1cf64309cbe4b94818a5d6; From e1921168bbd4810de4197446e52f652cd0dd9541 · fixed in 23548007b3c66d628fc7d6b80d1e23be04ea10d9; From e1921168bbd4810de4197446e52f652cd0dd9541 · fixed in a13199fa224e9f776f4005d5037df03aa9ea8f37; From e1921168bbd4810de4197446e52f652cd0dd9541 · fixed in e302206ad84a407a7e5f3f6fe767ff5efaace689; From e1921168bbd4810de4197446e52f652cd0dd9541 · fixed in 180235600934bef6add3be637c296d6cf3272e67
- Linux Linux
5.5
- KernelLinux
From 5.5.0 · fixed in 5.10.259; From 5.11.0 · fixed in 5.15.210; From 5.16.0 · fixed in 6.1.176; From 6.2.0 · fixed in 6.6.143; From 6.7.0 · fixed in 6.12.94; From 6.13.0 · fixed in 6.18.36; From 6.19.0 · fixed in 7.0.13
References 8
git.kernel.org
- stable/c/60412bdd1b2576659eac23a23d2d9ff96228a643
- stable/c/19f8bc139e9b149d1e5bf75ae761d1bb8dd3e7d8
- stable/c/a3ad9b5767c89531fc7dae951b51b0933dcf7051
- stable/c/bede0f481b9137d73d1cf64309cbe4b94818a5d6
- stable/c/23548007b3c66d628fc7d6b80d1e23be04ea10d9
- stable/c/a13199fa224e9f776f4005d5037df03aa9ea8f37
- stable/c/e302206ad84a407a7e5f3f6fe767ff5efaace689
- stable/c/180235600934bef6add3be637c296d6cf3272e67