CVE-2026-64366
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:
HID: wacom: fix slab-out-of-bounds write in wacom_wac_queue_insert
wacom_wac_queue_insert() calls kfifo_skip() in a loop when the kfifo doesn't have enough space for the incoming report. If the kfifo is empty, kfifo_skip() reads stale data left in the kmalloc'd buffer via __kfifo_peek_n() and interprets it as a record length, advancing fifo->out by that garbage value. This corrupts the internal kfifo state, causing kfifo_unused() to return a value much larger than the actual buffer size, which bypasses __kfifo_in_r()'s guard:
if (len + recsize > kfifo_unused(fifo)) return 0;
kfifo_copy_in() then performs an out-of-bounds memcpy, writing up to 3842 bytes past the 256-byte buffer.
Add a !kfifo_is_empty() condition to the while loop so kfifo_skip() is never called on an empty fifo, and check the return value of kfifo_in() to reject reports that are too large for the fifo.
Affected Software
| Vendor | Product | Version Range | Status |
|---|---|---|---|
| Linux | Linux | 5e013ad206895e72d7da41bc1ae89d8cb499c3aa < ca899a926c11a59211b764b0155d9a1cdcc32b81 | affected |
| Linux | Linux | 5e013ad206895e72d7da41bc1ae89d8cb499c3aa < 57bdd10ad50d68341f500a7b330f0d8949e510ec | affected |
| Linux | Linux | 5e013ad206895e72d7da41bc1ae89d8cb499c3aa < 6b3014ec0e9a390ca563030b2d7689921f0daef5 | affected |
| Linux | Linux | 6.15 | affected |
| Linux | Linux | 0 < 6.15 | unaffected |
| Linux | Linux | 6.18.39 <= 6.18.* | unaffected |
| Linux | Linux | 7.1.4 <= 7.1.* | unaffected |
| Linux | Linux | 7.2-rc1 <= * | unaffected |
Weaknesses
References
- https://git.kernel.org/stable/c/ca899a926c11a59211b764b0155d9a1cdcc32b81
- https://git.kernel.org/stable/c/57bdd10ad50d68341f500a7b330f0d8949e510ec
- https://git.kernel.org/stable/c/6b3014ec0e9a390ca563030b2d7689921f0daef5
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.