CVE-2026-63947
CVSS:3.1/AV:A/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
Summary
In the Linux kernel, the following vulnerability has been resolved:
Bluetooth: HIDP: fix missing length checks in hidp_input_report()
hidp_input_report() reads keyboard and mouse payload data from an skb without first verifying that skb->len contains enough data.
hidp_recv_intr_frame() pulls the 1-byte HIDP header before dispatching to hidp_input_report(). If a paired device sends a truncated packet, the handler reads beyond the valid skb data, resulting in an out-of-bounds read of skb data. The OOB bytes may be interpreted as phantom key presses or spurious mouse movement.
Replace the open-coded length tracking and pointer arithmetic with skb_pull_data() calls. skb_pull_data() returns NULL if the requested bytes are not present, eliminating the need for a manual size variable and the separate skb->len guard.
Affected Software
| Vendor | Product | Version Range | Status |
|---|---|---|---|
| Linux | Linux | 1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 < 1f08a90013e1e632b34321334e861fcefc056505 | affected |
| Linux | Linux | 1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 < cc3832b19f863e3677c5651f001a2e3795f39eb8 | affected |
| Linux | Linux | 1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 < d313683d6ccdd8c01e0562270a2ae25b86d8461d | affected |
| Linux | Linux | 1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 < d7d6a81b8dd1a8d084a1b755db9406041d53adb5 | affected |
| Linux | Linux | 1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 < 6348dfed5b0f9c6074f14322332e97493d32fef0 | affected |
| Linux | Linux | 1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 < b83dcacd2ec7fcc5a48be215f82d573759f87ec2 | affected |
| Linux | Linux | 1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 < 2a3ac9ee11dbb9845f3947cef4a79dba658cf6f6 | affected |
| Linux | Linux | 2.6.12 | affected |
| Linux | Linux | 0 < 2.6.12 | unaffected |
| Linux | Linux | 5.15.210 <= 5.15.* | unaffected |
| Linux | Linux | 6.1.176 <= 6.1.* | unaffected |
| Linux | Linux | 6.6.143 <= 6.6.* | unaffected |
| Linux | Linux | 6.12.93 <= 6.12.* | unaffected |
| Linux | Linux | 6.18.35 <= 6.18.* | unaffected |
| Linux | Linux | 7.0.12 <= 7.0.* | unaffected |
| Linux | Linux | 7.1 <= * | unaffected |
Weaknesses
References
- https://git.kernel.org/stable/c/1f08a90013e1e632b34321334e861fcefc056505
- https://git.kernel.org/stable/c/cc3832b19f863e3677c5651f001a2e3795f39eb8
- https://git.kernel.org/stable/c/d313683d6ccdd8c01e0562270a2ae25b86d8461d
- https://git.kernel.org/stable/c/d7d6a81b8dd1a8d084a1b755db9406041d53adb5
- https://git.kernel.org/stable/c/6348dfed5b0f9c6074f14322332e97493d32fef0
- https://git.kernel.org/stable/c/b83dcacd2ec7fcc5a48be215f82d573759f87ec2
- https://git.kernel.org/stable/c/2a3ac9ee11dbb9845f3947cef4a79dba658cf6f6
Feedback
Was this page helpful?
Glad to hear it! Please tell us how we can improve.
Sorry to hear that. Please tell us how we can improve.