CVE-2026-80605 in Linuxinfo

Summary

by MITRE • 08/28/2026

In the Linux kernel, the following vulnerability has been resolved:

HID: picolcd: prevent NULL pointer dereference in picolcd_send_and_wait()

In picolcd_send_and_wait(), an integer overflow of the signed loop counter 'k' can theoretically lead to a NULL pointer dereference of 'raw_data'. If the loop executes more than INT_MAX times, 'k' becomes negative, making the condition 'k < size' true even when 'size' is 0.

Change the type of 'k' to 'unsigned int' to prevent the overflow and eliminate the out-of-bounds access.

Found by Linux Verification Center (linuxtesting.org) with the Svace static analysis tool.

[[email protected]: extended hash length]

If you want to get best quality of vulnerability data, you may have to visit VulDB.

Analysis

by VulDB Data Team • 08/28/2026

The vulnerability identified in the Linux kernel's HID picolcd driver represents a classic integer overflow scenario that leads to memory safety violations, specifically a NULL pointer dereference. The issue resides within the picolcd_send_and_wait function, which is responsible for managing communication with specific Human Interface Device hardware components. During execution, this routine utilizes a loop counter variable named k to track iteration progress against a target size parameter. Under normal operational conditions, this logic functions correctly; however, it relies on signed integer arithmetic without adequate bounds checking or overflow protection mechanisms. This design choice creates a critical weakness where the internal state of the application can be manipulated through specific input values that cause the loop counter to exceed its maximum representable value as a signed 32-bit integer.

When the variable k exceeds INT_MAX, which is approximately two billion for standard signed integers in this context, it wraps around due to arithmetic overflow rules defined by the C language specification and hardware architecture behavior. This wraparound causes k to become negative. The subsequent conditional check evaluates whether k is less than size. If an attacker or a malfunctioning device can trigger enough iterations such that k becomes negative, and if size is zero or small, this condition will evaluate as true despite the logical expectation that the loop should have terminated earlier. This erroneous evaluation allows the code to proceed into a block of logic that accesses raw_data using index values derived from an invalid state. Since the intended termination conditions were bypassed due to the sign flip, the pointer dereference occurs at an unexpected memory location or with null references if size was zero, leading directly to a NULL pointer dereference exception.

From a technical classification perspective, this flaw aligns closely with CWE-190 Integer Overflow and CWE-476 NULL Pointer Dereference. The root cause is rooted in improper handling of numeric values where the data type does not adequately represent the range of possible iteration counts required by the system logic. In terms of attack vectors, while picolcd drivers are often associated with embedded systems or specialized hardware interfaces rather than general-purpose user-facing applications, this vulnerability could potentially be exploited if an attacker has physical access to manipulate HID devices connected via USB or other supported buses. By sending crafted reports that force excessive processing loops within the driver, a local actor might induce a kernel panic resulting in denial of service against the host system. In more complex threat models involving trusted execution environments or systems where hardware faults are induced maliciously, this could serve as an initial foothold for further exploitation attempts targeting privilege escalation if additional vulnerabilities exist in adjacent memory management routines.

The operational impact of this vulnerability is primarily centered on system stability and availability. A successful trigger results in a kernel oops or panic, causing the operating system to crash or reboot unexpectedly. For systems running critical infrastructure services that rely on continuous uptime, such as industrial control panels using picolcd displays for monitoring, an unplanned restart could lead to significant downtime and potential data loss if volatile states are not preserved. Furthermore, in environments where security auditing is strict, repeated crashes might trigger automated alerts or quarantine procedures, disrupting normal business operations. Although the likelihood of remote exploitation is low due to the physical proximity required to interact with HID devices directly, local privilege escalation remains a theoretical risk depending on how the kernel handles fault recovery and whether subsequent code paths expose additional weaknesses during error handling sequences.

To mitigate this vulnerability effectively, developers have implemented a straightforward but critical fix by changing the data type of the loop counter k from signed int to unsigned int. This modification ensures that arithmetic overflow behaves predictably according to modular arithmetic rules rather than sign-bit inversion, thereby preventing the condition check from evaluating incorrectly when large iteration counts are encountered. Additionally, robust input validation should be enforced at driver initialization and during runtime communication phases to ensure that size parameters do not exceed reasonable limits defined by hardware specifications. Security teams managing Linux-based embedded systems should apply kernel updates containing this patch immediately. Regular static analysis using tools like Svace or Coverity can help identify similar integer overflow patterns across the codebase before they reach production environments, ensuring adherence to secure coding standards such as MISRA C and reducing overall attack surface exposure related to memory safety issues.

Responsible

Linux

Reservation

08/26/2026

Disclosure

08/28/2026

Moderation

accepted

CPE

ready

EPSS

0.00000

KEV

no

Activities

very low

Sources

Want to know what is going to be exploited?

We predict KEV entries!