Description
In the Linux kernel, the following vulnerability has been resolved: wifi: mac80211_hwsim: clamp virtio RX length before skb_put hwsim_virtio_rx_work() passes the virtqueue used-ring length reported by the device straight to skb_put() on a fixed-size receive skb. A backend reporting a length larger than the skb tailroom drives skb_put() past the buffer end and hits skb_over_panic() -- a host-triggerable guest panic (denial of service). Clamp the length to the skb's available room before skb_put(). A conforming device never reports more than the posted buffer size, so valid frames are unaffected; a truncated over-report then fails the length/header checks in hwsim_virtio_handle_cmd() and is dropped, so truncating rather than dropping here cannot be turned into a parsing problem.
Affected products
Version statuses are supplied by the assigning organization. Consult the original record for detailed ranges and platform conditions.
Linux Linux
Default version status: unaffected
5d44fe7c9808c56e136e59147bd932f5491520f1 to < 7f9d678b870fca8eaf1d46fa915cba0b1d5b387aaffected5d44fe7c9808c56e136e59147bd932f5491520f1 to < 909573d6a9b67354fc0515952574564e7c909c62affected5d44fe7c9808c56e136e59147bd932f5491520f1 to < 5779e4a33e1666ddfeba43e96e29c4a9e5254ff0affected5d44fe7c9808c56e136e59147bd932f5491520f1 to < 82c5a30a66e2a7337d99476c67d6fc1a99c4250eaffected5d44fe7c9808c56e136e59147bd932f5491520f1 to < fade308845c89f784da8a6780c1e77258488f1b6affected5d44fe7c9808c56e136e59147bd932f5491520f1 to < 6dc76371a9a360c29de00df5b11563102d9d675aaffected5d44fe7c9808c56e136e59147bd932f5491520f1 to < 99dc05c75acc3c8cde8d89c5371f4b569de5ac62affected5d44fe7c9808c56e136e59147bd932f5491520f1 to < 10a2b430f8f06ae14b9590b6f6faa6b588ef0654affected
Linux Linux
Default version status: affected
5.7affected0 to < 5.7unaffected5.10.265 to ≤ 5.10.*unaffected5.15.216 to ≤ 5.15.*unaffected6.1.183 to ≤ 6.1.*unaffected6.6.148 to ≤ 6.6.*unaffected6.12.101 to ≤ 6.12.*unaffected6.18.42 to ≤ 6.18.*unaffected7.1.6 to ≤ 7.1.*unaffected7.2 to ≤ *unaffected
References
- https://git.kernel.org/stable/c/7f9d678b870fca8eaf1d46fa915cba0b1d5b387a ↗
- https://git.kernel.org/stable/c/909573d6a9b67354fc0515952574564e7c909c62 ↗
- https://git.kernel.org/stable/c/5779e4a33e1666ddfeba43e96e29c4a9e5254ff0 ↗
- https://git.kernel.org/stable/c/82c5a30a66e2a7337d99476c67d6fc1a99c4250e ↗
- https://git.kernel.org/stable/c/fade308845c89f784da8a6780c1e77258488f1b6 ↗
- https://git.kernel.org/stable/c/6dc76371a9a360c29de00df5b11563102d9d675a ↗
- https://git.kernel.org/stable/c/99dc05c75acc3c8cde8d89c5371f4b569de5ac62 ↗
- https://git.kernel.org/stable/c/10a2b430f8f06ae14b9590b6f6faa6b588ef0654 ↗