CVE-2021-46906 json
HID: usbhid: fix info leak in hid_submit_ctrl
published 2024-02-26 2 y ago modified 2026-06-17 4 mo ago also EUVD-2021-33554
- cvss
- 5.5
- version 3.1, NVD
- cisa kev
- Not listed
- not in CISA's catalog
- epss
- 0.2%
- EPSS 0.2% chance of exploitation in 30 days, percentile 15%
- public exploits
- 0
- none known
Summary
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().
Patch / fix
- Linux Linux 4.4.274, 4.9.274, 4.14.238, 4.19.196, 5.4.127, 5.10.45, 5.12.12, 5.13
- linux Debian 14, Debian 13, Debian 12 5.14.6-1
debian advisories DEBIAN-CVE-2021-46906
- linux Ubuntu 18.04 LTS 4.15.0-156.163
- linux Ubuntu 20.04 LTS 5.4.0-81.91
- linux-aws Ubuntu 18.04 LTS 4.15.0-1111.118
- linux-aws Ubuntu 20.04 LTS 5.4.0-1055.58
- linux-gcp Ubuntu 20.04 LTS 5.4.0-1051.55
- linux-kvm Ubuntu 18.04 LTS 4.15.0-1099.101
- linux-kvm Ubuntu 20.04 LTS 5.4.0-1045.47
- linux-azure Ubuntu 20.04 LTS 5.4.0-1056.58
ubuntu advisories UBUNTU-CVE-2021-46906
Ubuntu security data © Canonical Ltd., from https://github.com/canonical/ubuntu-security-notices via OSV; changed: normalised to fixed package versions per release. CC BY-SA 4.0
- kernel-rt SLE Real Time 12 SP5 4.12.14-10.171.1
- kernel-syms-rt SLE Real Time 12 SP5 4.12.14-10.171.1
- kernel-rt_debug SLE Real Time 12 SP5 4.12.14-10.171.1
- kernel-source-rt SLE Real Time 12 SP5 4.12.14-10.171.1
- kernel-azure SLES for SAP 12 SP5, SLES 12 SP5 4.12.14-16.173.1
- kernel-syms-azure SLES for SAP 12 SP5, SLES 12 SP5 4.12.14-16.173.1
- kernel-source-azure SLES for SAP 12 SP5, SLES 12 SP5 4.12.14-16.173.1
- kernel-default SLES for SAP 15 SP2, SLES 15 SP2-LTSS, SLE Live Patching 15 SP2 +2 more 5.3.18-150200.24.183.1
suse advisories SUSE-SU-2024:0976-1SUSE-SU-2024:0975-1SUSE-SU-2024:0926-1SUSE-SU-2024:0925-1SUSE-SU-2024:0857-1SUSE-SU-2024:0856-1
- git.kernel.org/stable/c/c5d3c142f2d57d40c55e65d5622d319125a45366 commit
- git.kernel.org/stable/c/41b1e71a2c57366b08dcca1a28b0d45ca69429ce commit
- git.kernel.org/stable/c/8c064eece9a51856f3f275104520c7e3017fc5c0 commit
- git.kernel.org/stable/c/0e280502be1b003c3483ae03fc60dea554fcfa82 commit
- git.kernel.org/stable/c/7f5a4b24cdbd7372770a02f23e347d7d9a9ac8f1 commit
- git.kernel.org/stable/c/b1e3596416d74ce95cc0b7b38472329a3818f8a9 commit
- git.kernel.org/stable/c/21883bff0fd854e07429a773ff18f1e9658f50e8 commit
- git.kernel.org/stable/c/6be388f4a35d2ce5ef7dbf635a8964a5da7f799f commit
Vendor advisories
What the vendors themselves say about their products: affected, fixed or not affected, and what to do.
red hat product security vex CVE-2021-46906 updated cvss 6.0
kernel: info leak in hid_submit_ctrl
-
Red Hat Enterprise Linux 6 perf, kernel, python-perf, kernel-kdump, kernel-firmware, kernel-bootwrapper, +1 more Red Hat Enterprise Linux 7 perf, kernel, bpftool, kernel-rt, python-perf, kernel-kdump, +8 moreaffected: no fix planned “Out of support scope”
-
Red Hat Enterprise Linux 8 perf, kernel, bpftool, kernel-rt, kernel-core, kernel-tools, +29 more Red Hat Enterprise Linux 9 rv, perf, rtla, kernel, bpftool, libperf, +83 morenot affected: vulnerable code not present
Red Hat CSAF VEX © Red Hat, Inc., from https://security.access.redhat.com/data/csaf/v2/vex/; changed: reduced to product statuses and remediations. CC BY 4.0 · csaf
CISA SSVC
- Exploitation
- none
- Automatable
- no
- Technical impact
- partial
- Assessed
- 2 y ago
Exploit prediction
0.24% chance of exploitation in the next 30 days, higher than 15% of all scored CVEs (FIRST EPSS, 2026-11-08).
CVSS scores
| assigned by | version | score | vector |
|---|---|---|---|
| NVD | 3.1 | 5.5 | CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:N |
Affected products
- Linux Linux
Classification
- Weakness
-
- CWE-668 Exposure of Resource to Wrong Sphere
- Technology feeds
References
-
git.kernel.org
/stable/c/c5d3c142f2d57d40c55e65d5622d319125a45366
patch
-
git.kernel.org
/stable/c/41b1e71a2c57366b08dcca1a28b0d45ca69429ce
patch
-
git.kernel.org
/stable/c/8c064eece9a51856f3f275104520c7e3017fc5c0
patch
-
git.kernel.org
/stable/c/0e280502be1b003c3483ae03fc60dea554fcfa82
patch
-
git.kernel.org
/stable/c/7f5a4b24cdbd7372770a02f23e347d7d9a9ac8f1
patch
-
git.kernel.org
/stable/c/b1e3596416d74ce95cc0b7b38472329a3818f8a9
patch
-
git.kernel.org
/stable/c/21883bff0fd854e07429a773ff18f1e9658f50e8
patch
-
git.kernel.org
/stable/c/6be388f4a35d2ce5ef7dbf635a8964a5da7f799f
patch
Sources
- CVE List CVE-2021-46906
- NVD CVE-2021-46906
Fencer Vulns keeps one entry per vulnerability: the CVE id wins, then GHSA, and records that alias each other are merged, except that two CVEs always keep separate entries. The same data is available as JSON.