CVE-2026-63949
Last modified
CVE-2026-63949 is a vulnerability of currently unknown severity. In the Linux kernel, the following vulnerability has been resolved: auxdisplay: line-display: fix OOB read on zero-length message_store() linedisp_display() unconditionally reads msg[count - 1] before checking whether count is zero, so a write of zero bytes to the message sysfs attribute hits msg[-1]: write(fd, "", 0); -> message_store(..., buf, count=0) -> linedisp_display(linedisp, buf, count=0) -> msg[count - 1] == '\n' ; OOB read The kernfs write buffer for that store is a 1-byte allocation (kernfs_fop_write_iter() does kmalloc(len + 1) with len == 0), so msg[-1] is a 1-byte read before the slab object. On a KASAN-enabled kernel this trips an out-of-bounds report and panics; on stock kernels it silently reads adjacent slab data and, if that byte happens to be '\n', the following count-- wraps ssize_t 0 to -1 and is then passed to kmemdup_nul(). linedisp_display() is reached from the message_store() sysfs callback (drivers/auxdisplay/line-display.c message attribute, mode 0644) and from the in-tree initial-message setup with count == -1, so the OOB path is only userspace-triggerable via zero-byte writes; vfs_write() does not short-circuit on count == 0 and kernfs_fop_write_iter() dispatches the store callback regardless. Guard the trailing-newline trim with a count check. EPSS estimates a 0.17% chance of exploitation in the next 30 days.
Description
In the Linux kernel, the following vulnerability has been resolved: auxdisplay: line-display: fix OOB read on zero-length message_store() linedisp_display() unconditionally reads msg[count - 1] before checking whether count is zero, so a write of zero bytes to the message sysfs attribute hits msg[-1]: write(fd, "", 0); -> message_store(..., buf, count=0) -> linedisp_display(linedisp, buf, count=0) -> msg[count - 1] == '\n' ; OOB read The kernfs write buffer for that store is a 1-byte allocation (kernfs_fop_write_iter() does kmalloc(len + 1) with len == 0), so msg[-1] is a 1-byte read before the slab object. On a KASAN-enabled kernel this trips an out-of-bounds report and panics; on stock kernels it silently reads adjacent slab data and, if that byte happens to be '\n', the following count-- wraps ssize_t 0 to -1 and is then passed to kmemdup_nul(). linedisp_display() is reached from the message_store() sysfs callback (drivers/auxdisplay/line-display.c message attribute, mode 0644) and from the in-tree initial-message setup with count == -1, so the OOB path is only userspace-triggerable via zero-byte writes; vfs_write() does not short-circuit on count == 0 and kernfs_fop_write_iter() dispatches the store callback regardless. Guard the trailing-newline trim with a count check. The existing if (!count) block then takes the clear-display path unchanged. Affects every auxdisplay driver that registers via linedisp_register() / linedisp_attach(): ht16k33, max6959, img-ascii-lcd, seg-led-gpio.
Metrics
Affected Software
Source: CNA advisory (CVE.org). NVD analysis pending.
| Vendor | Product | Versions |
|---|---|---|
| Linux | Linux | >= 7e76aece6f036cb7ada4858d6aa73825bfe22983, < ca5b0781946d5083ceafa752141f47f085853620; >= 7e76aece6f036cb7ada4858d6aa73825bfe22983, < 8776032fe989a9b5fc77f2de5e03e4adb44c630e; >= 7e76aece6f036cb7ada4858d6aa73825bfe22983, < 3859960daeb9b7b39b9847b5b0113bc6081eb735; >= 7e76aece6f036cb7ada4858d6aa73825bfe22983, < 197476b126010bac1b3199833c6966cd6f54c2a9; >= 7e76aece6f036cb7ada4858d6aa73825bfe22983, < 6ad4f75ef9f3372fce8cad494e789ac6a5507bef; >= 7e76aece6f036cb7ada4858d6aa73825bfe22983, < a7511dcd9dd4bc55d123f9b800c8a4ed2662e5c6 |
| Linux | Linux | 5.16 |
References
Timeline
- Published
- Last Modified
- Status
- Awaiting Analysis
Frequently Asked Questions
What is CVE-2026-63949?
How severe is CVE-2026-63949?
How do I fix CVE-2026-63949?
How Strix Helps
- How Strix found a critical auth bypass in etcdStrix autonomously discovered a critical authentication bypass in etcd, later designated CVE-2026-33413.
- Autonomous PentestingAI agents that find and validate exploitable vulnerabilities like this one across your applications.
- PR ReviewsPentest every pull request so vulnerable code is caught before it ships to production.
- AI Penetration TestingHow AI-driven penetration testing continuously covers your attack surface.
Related CVEs from 2026
- CVE-2026-63943In the Linux kernel, the following vulnerability has been re…
- CVE-2026-63944In the Linux kernel, the following vulnerability has been re…8.8
- CVE-2026-63945In the Linux kernel, the following vulnerability has been re…7.8
- CVE-2026-63946In the Linux kernel, the following vulnerability has been re…8.8
- CVE-2026-63947In the Linux kernel, the following vulnerability has been re…8.8
- CVE-2026-63948In the Linux kernel, the following vulnerability has been re…
- CVE-2026-6395The Word 2 Cash plugin for WordPress is vulnerable to Cross-…6.1
- CVE-2026-63950In the Linux kernel, the following vulnerability has been re…7.8
- CVE-2026-63951In the Linux kernel, the following vulnerability has been re…7.8
- CVE-2026-63952In the Linux kernel, the following vulnerability has been re…8.4
- CVE-2026-63953In the Linux kernel, the following vulnerability has been re…
- CVE-2026-63954In the Linux kernel, the following vulnerability has been re…7.8
Are you affected by CVE-2026-63949?
Run a free Strix scan to check your systems for this vulnerability.
Scan your code nowSource: NVD / NIST
