CVE-2021-46906
Description
In the Linux kernel, the following vulnerability has been resolved: HID: usbhid: fix info leak in hid_submit_ctrl In hid_submit_ctrl(), the way of calculating the report length doesn't take into account that report->size can be zero. When running the syzkaller reproducer, a report of size 0 causes hid_submit_ctrl) to calculate transfer_buffer_length as 16384. When this urb is passed to the usb core layer, KMSAN reports an info leak of 16384 bytes. To fix this, first modify hid_report_len() to account for the zero report size case by using DIV_ROUND_UP for the division. Then, call it from hid_submit_ctrl().
How to fix
- linux linux_kernel4.4.274, 4.9.274, 4.14.238, 4.19.196, 5.4.127, 5.10.45, 5.12.12 or later
Affected products
| Product | Affected versions | Fixed in |
|---|---|---|
| linux linux_kernel | v < 4.4.274, 4.5.0 ≤ v < 4.9.274, 4.10.0 ≤ v < 4.14.238, 4.15.0 ≤ v < 4.19.196, 4.20.0 ≤ v < 5.4.127, 5.5.0 ≤ v < 5.10.45, 5.11.0 ≤ v < 5.12.12 | 4.4.274, 4.9.274, 4.14.238, 4.19.196, 5.4.127, 5.10.45, 5.12.12 |
Check your version
Choose the product and enter the version you run to see whether it falls in the affected range.
Attack Surface Management
See the assets tied to your domains, the technologies they run and known vulnerabilities in one list.