Linux: Out-of-bounds Read
CVE-2026-45943 is a high-severity out-of-bounds read vulnerability in Linux, with a CVSS 3.1 base score of 7.1 out of 10. It can be exploited with local access to the system by an attacker with a low-privileged account, without any action from a user. The record lists versions 9ac759f2fb20b0cc3e367ce965b7279ea3919505, 237e0524a53812706e4cad30f40ef6c3213a2a92, ad07ea069f924465061cfee40ef2861bb99f4dd8 as the first without the flaw, so updating Linux to one of those releases or later removes the exposure. There is no confirmed exploitation so far. EPSS estimates a 0.16% chance of exploitation within 30 days, which is low compared with other CVEs.
High severity with no evidence of exploitation so far.
What to do
- Update Linux to 9ac759f2fb20b0cc3e367ce965b7279ea3919505 or 237e0524a53812706e4cad30f40ef6c3213a2a92 or ad07ea069f924465061cfee40ef2861bb99f4dd8 or 5de1aa0bf3a5db0b3cbf61959da5ac61250833ed, whichever matches your release line, or a later version.
- Update Linux Kernel to 6.12.78 or 6.18.14 or 6.19.4, whichever matches your release line, or a later version.
Affected products and versions
| Vendor | Product | Affected versions | Fixed in |
|---|---|---|---|
| Linux | Linux | cecf864d3d76d50e3d9c58145e286a0b8c284e92 up to, but not including, 9ac759f2fb20b0cc3e367ce965b7279ea3919505; cecf864d3d76d50e3d9c58145e286a0b8c284e92 up to, but not including, 237e0524a53812706e4cad30f40ef6c3213a2a92; cecf864d3d76d50e3d9c58145e286a0b8c284e92 up to, but not including, ad07ea069f924465061cfee40ef2861bb99f4dd8; cecf864d3d76d50e3d9c58145e286a0b8c284e92 up to, but not including, 5de1aa0bf3a5db0b3cbf61959da5ac61250833ed; cecf864d3d76d50e3d9c58145e286a0b8c284e92 up to, but not including, 92088bd9aa2a7246bba8b9648fbc64edd173cf17; cecf864d3d76d50e3d9c58145e286a0b8c284e92 up to, but not including, c134a40f86efb8d6b5a949ef70e06d5752209be5; 5.17 | 9ac759f2fb20b0cc3e367ce965b7279ea3919505, 237e0524a53812706e4cad30f40ef6c3213a2a92, ad07ea069f924465061cfee40ef2861bb99f4dd8, 5de1aa0bf3a5db0b3cbf61959da5ac61250833ed, 92088bd9aa2a7246bba8b9648fbc64edd173cf17, c134a40f86efb8d6b5a949ef70e06d5752209be5 |
| Linux | Linux Kernel | 5.17 up to, but not including, 6.12.78; 6.13 up to, but not including, 6.18.14; 6.19 up to, but not including, 6.19.4 | 6.12.78, 6.18.14, 6.19.4 |
Version data comes from the organisation that assigned the CVE. Confirm against the vendor advisory before deciding you are unaffected.
How the severity score breaks down
- Attack vector
- LocalThe attacker needs local access or must trick a user into running something.
- Attack complexity
- LowNo special conditions are needed; the attack works reliably.
- Privileges required
- LowA basic user account is enough.
- User interaction
- NoneNo action by a victim is required.
- Scope
- UnchangedImpact stays within the vulnerable component.
- Confidentiality
- HighAll data handled by the component can be read.
- Integrity
- NoneNothing can be modified.
- Availability
- HighThe component can be taken down completely.
Vector: CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:H. Scored by NVD.
Official description
In the Linux kernel, the following vulnerability has been resolved: erofs: fix inline data read failure for ztailpacking pclusters Compressed folios for ztailpacking pclusters must be valid before adding these pclusters to I/O chains. Otherwise, z_erofs_decompress_pcluster() may assume they are already valid and then trigger a NULL pointer dereference. It is somewhat hard to reproduce because the inline data is in the same block as the tail of the compressed indexes, which are usually read just before. However, it may still happen if a fatal signal arrives while read_mapping_folio() is running, as shown below: erofs: (device dm-1): z_erofs_pcluster_begin: failed to get inline data -4 Unable to handle kernel NULL pointer dereference at virtual address 0000000000000008 ... pc : z_erofs_decompress_queue+0x4c8/0xa14 lr : z_erofs_decompress_queue+0x160/0xa14 sp : ffffffc08b3eb3a0 x29: ffffffc08b3eb570 x28: ffffffc08b3eb418 x27: 0000000000001000 x26: ffffff8086ebdbb8 x25: ffffff8086ebdbb8 x24: 0000000000000001 x23: 0000000000000008 x22: 00000000fffffffb x21: dead000000000700 x20: 00000000000015e7 x19: ffffff808babb400 x18: ffffffc089edc098 x17: 00000000c006287d x16: 00000000c006287d x15: 0000000000000004 x14: ffffff80ba8f8000 x13: 0000000000000004 x12: 00000006589a77c9 x11: 0000000000000015 x10: 0000000000000000 x9 : 0000000000000000 x8 : 0000000000000000 x7 : 0000000000000000 x6 : 000000000000003f x5 : 0000000000000040 x4 : ffffffffffffffe0 x3 : 0000000000000020 x2 : 0000000000000008 x1 : 0000000000000000 x0 : 0000000000000000 Call trace: z_erofs_decompress_queue+0x4c8/0xa14 z_erofs_runqueue+0x908/0x97c z_erofs_read_folio+0x128/0x228 filemap_read_folio+0x68/0x128 filemap_get_pages+0x44c/0x8b4 filemap_read+0x12c/0x5b8 generic_file_read_iter+0x4c/0x15c do_iter_readv_writev+0x188/0x1e0 vfs_iter_read+0xac/0x1a4 backing_file_read_iter+0x170/0x34c ovl_read_iter+0xf0/0x140 vfs_read+0x28c/0x344 ksys_read+0x80/0xf0 __arm64_sys_read+0x24/0x34 invoke_syscall+0x60/0x114 el0_svc_common+0x88/0xe4 do_el0_svc+0x24/0x30 el0_svc+0x40/0xa8 el0t_64_sync_handler+0x70/0xbc el0t_64_sync+0x1bc/0x1c0 Fix this by reading the inline data before allocating and adding the pclusters to the I/O chains.
Source: the CVE record as published by its numbering authority, via NVD and CVE.org.
The underlying weakness: Out-of-bounds Read
The product reads data past the end, or before the beginning, of the intended buffer.
How developers prevent this class of flaw
- Use a language that provides appropriate memory abstractions.
Timeline
- CVE record published.
- Record last changed materially (score, affected products, status or references).
References
Patches and release notes
Other references
Recent Out-of-bounds Read vulnerabilities
- 7.1 High severity
- 7.1 High severity
- 7.1 High severity
- 7.1 High severity
- 8.2 High severity
- 7.1 High severity
Spotted an error? Tell us.