In the Linux kernel, the following vulnerability has been resolved: HID: picolcd: clamp eeprom debugfs read to bytes actually received… (CVE-2026-89628)
A vulnerability in the Linux kernel's HID picolcd driver allows a specially crafted device or spoofed picoLCD to cause an out-of-bounds read via the debugfs eeprom interface. The flaw arises because the driver trusts a length byte from the device without properly validating it against the actual received data size, potentially leaking adjacent kernel memory to userspace. The debugfs file is root-only accessible, and exploitation requires a crafted device, so it is not remotely or unprivileged triggerable. The issue has been resolved by clamping the read length to the actual received payload size.
AI Analysis
Technical Summary
The Linux kernel's HID picolcd driver contained a vulnerability where picolcd_debug_eeprom_read() trusted a length byte (resp->raw_data[2]) supplied by the device in its REPORT_EE_DATA reply. This length byte was only clamped to the caller's read() count but never checked against resp->raw_size, the actual number of bytes received. A malicious or spoofed picoLCD device returning a length byte of 0xff and a read count >= 255 could cause copy_to_user() to read beyond the allocated raw_data[] buffer into adjacent slab memory, leaking kernel memory to userspace via the debugfs "eeprom" file. The debugfs file is root-only (S_IRUSR), and a crafted device is required to trigger this. The fix clamps the copy length to resp->raw_size - 3 (payload size minus header), preventing out-of-bounds reads.
Potential Impact
This vulnerability can lead to an out-of-bounds read in kernel memory, potentially leaking sensitive kernel memory contents to a privileged user via the debugfs eeprom interface. However, exploitation requires root access to read the debugfs file and a crafted or spoofed picoLCD device, limiting the attack surface. There is no indication of remote or unprivileged exploitation.
Mitigation Recommendations
A fix is available that clamps the read length to the actual received payload size, preventing out-of-bounds reads. Users should update to a Linux kernel version that includes this patch. Since the debugfs file is root-only and a crafted device is required, no additional mitigation is necessary beyond applying the official fix.
In the Linux kernel, the following vulnerability has been resolved: HID: picolcd: clamp eeprom debugfs read to bytes actually received… (CVE-2026-89628)
Description
A vulnerability in the Linux kernel's HID picolcd driver allows a specially crafted device or spoofed picoLCD to cause an out-of-bounds read via the debugfs eeprom interface. The flaw arises because the driver trusts a length byte from the device without properly validating it against the actual received data size, potentially leaking adjacent kernel memory to userspace. The debugfs file is root-only accessible, and exploitation requires a crafted device, so it is not remotely or unprivileged triggerable. The issue has been resolved by clamping the read length to the actual received payload size.
AI-Powered Analysis
Machine-generated threat intelligence
Technical Analysis
The Linux kernel's HID picolcd driver contained a vulnerability where picolcd_debug_eeprom_read() trusted a length byte (resp->raw_data[2]) supplied by the device in its REPORT_EE_DATA reply. This length byte was only clamped to the caller's read() count but never checked against resp->raw_size, the actual number of bytes received. A malicious or spoofed picoLCD device returning a length byte of 0xff and a read count >= 255 could cause copy_to_user() to read beyond the allocated raw_data[] buffer into adjacent slab memory, leaking kernel memory to userspace via the debugfs "eeprom" file. The debugfs file is root-only (S_IRUSR), and a crafted device is required to trigger this. The fix clamps the copy length to resp->raw_size - 3 (payload size minus header), preventing out-of-bounds reads.
Potential Impact
This vulnerability can lead to an out-of-bounds read in kernel memory, potentially leaking sensitive kernel memory contents to a privileged user via the debugfs eeprom interface. However, exploitation requires root access to read the debugfs file and a crafted or spoofed picoLCD device, limiting the attack surface. There is no indication of remote or unprivileged exploitation.
Mitigation Recommendations
A fix is available that clamps the read length to the actual received payload size, preventing out-of-bounds reads. Users should update to a Linux kernel version that includes this patch. Since the debugfs file is root-only and a crafted device is required, no additional mitigation is necessary beyond applying the official fix.
Technical Details
- Gcve Source
- db.gcve.eu
- Osv Id
- GHSA-84x9-cxq8-hpgq
- Osv Schema Version
- 1.4.0
- Aliases
- ["CVE-2026-89628"]
Threat ID: 6aa4a00955bf5e2cf5a8665e
Added to database: 09/12/2026, 00:42:49 UTC
Last enriched: 09/12/2026, 01:01:19 UTC
Last updated: 09/12/2026, 01:01:19 UTC
Views: 2
Community Reviews
0 reviewsCrowdsource mitigation strategies, share intel context, and vote on the most helpful responses. Sign in to add your voice and help keep defenders ahead.
Want to contribute mitigation steps or threat intel context? Sign in or create an account to join the community discussion.
Actions
Updates to AI analysis require Pro Console access. Upgrade inside Console → Billing.
Need more coverage?
Upgrade to Pro Console for AI refresh and higher limits.
For incident response and remediation, OffSeq services can help resolve threats faster.
Latest Threats
Check if your credentials are on the dark web
Instant breach scanning across billions of leaked records. Free tier available.