← Vulnerability feed

Vulnerability record · CVE-2026-53059 · published 24 June 2026

CVE-2026-53059: Linux kernel out-of-bounds write vulnerability

Linux · Linux Kernel

In the Linux kernel, the following vulnerability has been resolved: dm log: fix out-of-bounds write due to region_count overflow The local variable region_count in create_log_context() is declared as unsigned int (32-bit), but dm_sector_div_up() returns sector_t (64-bit). When a device-mapper target has a sufficiently large ti->len with a small region_size, the division result can exceed UINT_MAX. The truncated value is then used to calculate bitset_size, causing clean_bits, sync_bits, and recovering_bits to be allocated far smaller than needed for the actual number of regions. Subsequent log operations (log_set_bit, log_clear_bit, log_test_bit) use region indices derived from the full untruncated region space, causing out-of-bounds writes to kernel heap memory allocated by vmalloc. This can be reproduced by creating a mirror target whose region_count overflows 32 bits: dmsetup create bigzero --table '0 8589934594 zero' dmsetup create mymirror --table '0 8589934594 mirror \ core 2 2 nosync 2 /dev/mapper/bigzero 0 \ /dev/mapper/bigzero 0' The status output confirms the truncation (sync_count=1 instead of 4294967297, because 0x100000001 was truncated to 1): $ dmsetup status mymirror 0 8589934594 mirror 2 254:1 254:1 1/4294967297 ... This leads to a kernel crash in core_in_sync: BUG: scheduling while atomic: (udev-worker)/9150/0x00000000 RIP: 0010:core_in_sync+0x14/0x30 [dm_log] CR2: 0000000000000008 Fixing recursive fault but reboot is needed! Fix by widening the local region_count to sector_t and adding an explicit overflow check before the value is assigned to lc->region_count.

7.8 CVSS 3.1 High EPSS 0.14% · top 97.2% CWE-787 · Out-of-bounds writeCWE-190 · Integer overflow
7.8CVSS 3.1 base score
0.14%EPSS exploitation probability, 30 days
NoNot in CISA KEV
1Affected product versions listed by NVD
24References
4 Sep 2026Last modified by NVD

Description

In the Linux kernel, the following vulnerability has been resolved: dm log: fix out-of-bounds write due to region_count overflow The local variable region_count in create_log_context() is declared as unsigned int (32-bit), but dm_sector_div_up() returns sector_t (64-bit). When a device-mapper target has a sufficiently large ti->len with a small region_size, the division result can exceed UINT_MAX. The truncated value is then used to calculate bitset_size, causing clean_bits, sync_bits, and recovering_bits to be allocated far smaller than needed for the actual number of regions. Subsequent log operations (log_set_bit, log_clear_bit, log_test_bit) use region indices derived from the full untruncated region space, causing out-of-bounds writes to kernel heap memory allocated by vmalloc. This can be reproduced by creating a mirror target whose region_count overflows 32 bits: dmsetup create bigzero --table '0 8589934594 zero' dmsetup create mymirror --table '0 8589934594 mirror \ core 2 2 nosync 2 /dev/mapper/bigzero 0 \ /dev/mapper/bigzero 0' The status output confirms the truncation (sync_count=1 instead of 4294967297, because 0x100000001 was truncated to 1): $ dmsetup status mymirror 0 8589934594 mirror 2 254:1 254:1 1/4294967297 ... This leads to a kernel crash in core_in_sync: BUG: scheduling while atomic: (udev-worker)/9150/0x00000000 RIP: 0010:core_in_sync+0x14/0x30 [dm_log] CR2: 0000000000000008 Fixing recursive fault but reboot is needed! Fix by widening the local region_count to sector_t and adding an explicit overflow check before the value is assigned to lc->region_count.

CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H

Affected products

1 vulnerable configurations from NVD's CPE data, grouped by vendor and product.

References

LinkTags
https://git.kernel.org/stable/c/12bd5b88e91a02785244ff1d20fb157e96e9cdc8 Patch
https://git.kernel.org/stable/c/3ec74da927b4e171a6fc0e77b1188ba4d019af51 Patch
https://git.kernel.org/stable/c/44ab8875ae4a2842bde2d756bed195d375e0debb Patch
https://git.kernel.org/stable/c/4ec8323b9f0764a14d532b1ae9b87f8a9fecb867 Patch
https://git.kernel.org/stable/c/b455903eed4558982be0811f5b7f44f6bbc4ff57 Patch
https://git.kernel.org/stable/c/c20e36b7631d83e7535877f08af8b0af72c44b1a Patch
https://git.kernel.org/stable/c/d4ac87567f86a55c3c92e9a5144dcd943a9772a1 Patch
https://git.kernel.org/stable/c/defe483e47173768c227532694dc78cb65db5f09 Patch
https://access.redhat.com/errata/RHSA-2026:45114
https://access.redhat.com/errata/RHSA-2026:45115
https://access.redhat.com/errata/RHSA-2026:45116
https://access.redhat.com/errata/RHSA-2026:45192
https://access.redhat.com/errata/RHSA-2026:47248
https://access.redhat.com/errata/RHSA-2026:52649
https://access.redhat.com/errata/RHSA-2026:53989
https://access.redhat.com/errata/RHSA-2026:55445
https://access.redhat.com/errata/RHSA-2026:56574
https://access.redhat.com/errata/RHSA-2026:59662
https://access.redhat.com/errata/RHSA-2026:59663
https://access.redhat.com/errata/RHSA-2026:61692
https://access.redhat.com/errata/RHSA-2026:63189
https://access.redhat.com/security/cve/CVE-2026-53059 Third Party Advisory
https://bugzilla.redhat.com/show_bug.cgi?id=2492277 Third Party Advisory
https://security.access.redhat.com/data/csaf/v2/vex/2026/cve-2026-53059.json Third Party Advisory

Track CVE-2026-53059 inside VULONE

Watch it alongside the ransomware crews, C2 infrastructure and forum chatter that reference it, query it through the API and pull it into your SIEM over TAXII.

Start free Open in platform

Related vulnerabilities

Same products first, then exploited flaws of the same weakness class.

9.8CVE-2025-39682Linux kernel TLS zero-length record handling flaw on rx_listThe Linux kernel TLS receive path mishandles zero-length records that arrive from the rx_list, breaking the assumption that a record type change cann…KEVEPSS 2.9%analysed8.8CVE-2026-53266Linux kernel ebtables SNAT out-of-bounds write in ARP rewriteThe ebtables SNAT target rewrites the ARP sender hardware address via skb_store_bits() without first making that range writable. When the ARP SHA byt…KEVEPSS 0.65%analysed8.8CVE-2023-3079Google Chrome V8 type confusion enables heap corruptionCVE-2023-3079 is a type confusion flaw in the V8 JavaScript engine in Google Chrome before 114.0.5735.110. A crafted HTML page can trigger the confus…KEVEPSS 32%analysed8.8CVE-2013-6282Linux kernel ARM get_user/put_user missing address validationThe get_user and put_user API functions in the Linux kernel before 3.5.5 on v6k and v7 ARM platforms fail to validate certain addresses, allowing cra…KEVEPSS 40%analysed8.4CVE-2022-0185Linux Kernel Filesystem Context Heap Buffer OverflowThe legacy_parse_param function in the Linux kernel's Filesystem Context functionality fails to properly verify supplied parameter lengths, causing a…KEVEPSS 25%analysed8.4CVE-2013-2094Linux Kernel perf_swevent_init Integer Type Flaw Enables Local Privilege EscalationThe perf_swevent_init function in kernel/events/core.c in the Linux kernel before 3.8.9 uses an incorrect integer data type, allowing a local user to…KEVEPSS 48%analysed7.8CVE-2026-53362Linux kernel IPv6 UDP paged allocation out-of-bounds write__ip6_append_data() in the Linux kernel mis-accounts fraggap on the paged-allocation path, leaving the linear skb area undersized while pagedlen is o…KEVEPSS 0.71%analysed7.8CVE-2026-31431Linux kernel algif_aead in-place crypto operation flawThe Linux kernel's algif_aead AF_ALG AEAD interface operated in-place on buffers that come from different mappings, a flaw the fix resolves by revert…KEVEPSS 3.4%analysed

Source: NIST National Vulnerability Database (record CVE-2026-53059), CISA KEV, FIRST EPSS (scores of 2026-09-26). This page is refreshed as NVD updates the record.