net: usb: qmi_wwan: initialize MAC header offset in qmimux_rx_fixup
- 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.4.302, 5.10.247, 5.15.197, 6.1.159, 6.6.117, 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: total
Summary
In the Linux kernel, the following vulnerability has been resolved: net: usb: qmi_wwan: initialize MAC header offset in qmimux_rx_fixup Raw IP packets have no MAC header, leaving skb->mac_header uninitialized. This can trigger kernel panics on ARM64 when xfrm or other subsystems access the offset due to strict alignment checks. Initialize the MAC header to prevent such crashes. This can trigger kernel panics on ARM when running IPsec over the qmimux0 interface. Example trace: Internal error: Oops: 000000009600004f [#1] SMP CPU: 0 UID: 0 PID: 0 Comm: swapper/0 Not tainted 6.12.34-gbe78e49cb433 #1 Hardware name: LS1028A RDB Board (DT) pstate: 60000005 (nZCv daif -PAN -UAO -TCO -DIT -SSBS BTYPE=--) pc : xfrm_input+0xde8/0x1318 lr : xfrm_input+0x61c/0x1318 sp : ffff800080003b20 Call trace: xfrm_input+0xde8/0x1318 xfrm6_rcv+0x38/0x44 xfrm6_esp_rcv+0x48/0xa8 ip6_protocol_deliver_rcu+0x94/0x4b0 ip6_input_finish+0x44/0x70 ip6_input+0x44/0xc0 ipv6_rcv+0x6c/0x114 __netif_receive_skb_one_core+0x5c/0x8c __netif_receive_skb+0x18/0x60 process_backlog+0x78/0x17c __napi_poll+0x38/0x180 net_rx_action+0x168/0x2f0
Timeline
- CVE published
- CISA SSVC assessment
Exploitation: none · Automatable: yes · Technical impact: total
- Record last updated
Affected versions
- Linux Linux
From c6adf77953bcec0ad63d7782479452464e50f7a3 · fixed in d693c47fb902b988f5752182e4f7fbde5e6dcaf9; From c6adf77953bcec0ad63d7782479452464e50f7a3 · fixed in 0aabccdcec1f4a36f95829ea2263f845bbc77223; From c6adf77953bcec0ad63d7782479452464e50f7a3 · fixed in 4e6b9004f01d0fef5b19778399bc5bf55f8c2d71; From c6adf77953bcec0ad63d7782479452464e50f7a3 · fixed in bf527b80b80a282ab5bf1540546211fc35e5cd42; From c6adf77953bcec0ad63d7782479452464e50f7a3 · fixed in dd03780c29f87c26c0e0bb7e0db528c8109461fb; From c6adf77953bcec0ad63d7782479452464e50f7a3 · fixed in ae811175cea35b03ac6d7c910f43a82a43b9c3b3; From c6adf77953bcec0ad63d7782479452464e50f7a3 · fixed in 8ab3b8f958d861a7f725a5be60769106509fbd69; From c6adf77953bcec0ad63d7782479452464e50f7a3 · fixed in e120f46768d98151ece8756ebd688b0e43dc8b29
- Linux Linux
4.12
- KernelLinux
From 4.12.0 · fixed in 5.4.302; From 5.5.0 · fixed in 5.10.247; From 5.11.0 · fixed in 5.15.197; From 5.16.0 · fixed in 6.1.159; From 6.2.0 · fixed in 6.6.117; From 6.7.0 · fixed in 6.12.58; From 6.13.0 · fixed in 6.17.8
References 8
git.kernel.org
- stable/c/d693c47fb902b988f5752182e4f7fbde5e6dcaf9
- stable/c/0aabccdcec1f4a36f95829ea2263f845bbc77223
- stable/c/4e6b9004f01d0fef5b19778399bc5bf55f8c2d71
- stable/c/bf527b80b80a282ab5bf1540546211fc35e5cd42
- stable/c/dd03780c29f87c26c0e0bb7e0db528c8109461fb
- stable/c/ae811175cea35b03ac6d7c910f43a82a43b9c3b3
- stable/c/8ab3b8f958d861a7f725a5be60769106509fbd69
- stable/c/e120f46768d98151ece8756ebd688b0e43dc8b29