Incorrect Calculation of Buffer Size Affecting kernel6.18-tools-devel package, versions <1:6.18.41-94.142.amzn2023


Severity

Recommended
high

Based on Amazon Linux security rating.

Threat Intelligence

EPSS
0.14% (4th percentile)

Do your applications use this vulnerable package?

In a few clicks we can analyze your entire application and see what components are vulnerable in your application, and suggest you quick fixes.

Test your applications
  • Snyk IDSNYK-AMZN2023-KERNEL618TOOLSDEVEL-19468096
  • published1 Sept 2026
  • disclosed15 Aug 2026

Introduced: 15 Aug 2026

NewCVE-2026-72470  (opens in a new tab)
CWE-131  (opens in a new tab)

How to fix?

Upgrade Amazon-Linux:2023 kernel6.18-tools-devel to version 1:6.18.41-94.142.amzn2023 or higher.
This issue was patched in ALAS2023-2026-2071.

NVD Description

Note: Versions mentioned in the description apply only to the upstream kernel6.18-tools-devel package and not the kernel6.18-tools-devel package as distributed by Amazon-Linux. See How to fix? for Amazon-Linux:2023 relevant fixed versions and status.

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

fs/ntfs3: resize log->one_page_buf when adopting on-disk page size

log_replay() allocates log->one_page_buf using the page size that was chosen from the host PAGE_SIZE:

log-&gt;one_page_buf = kmalloc(log-&gt;page_size, GFP_NOFS);

Later, when a restart area is found, the log page size recorded on disk is adopted:

t32 = le32_to_cpu(log-&gt;rst_info.r_page-&gt;sys_page_size);
if (log-&gt;page_size != t32) {
    log-&gt;l_size = log-&gt;orig_file_size;
    log-&gt;page_size = norm_file_page(t32, &amp;log-&gt;l_size,
                    t32 == DefaultLogPageSize);
}

If the on-disk page size is larger than the size used for the initial allocation, log->page_size grows but one_page_buf is left at its original, smaller size. A subsequent unaligned read_log_page() then reads log->page_size bytes into the undersized scratch buffer:

page_buf = page_off ? log-&gt;one_page_buf : *buffer;
err = ntfs_read_run_nb_ra(ni-&gt;mi.sbi, &amp;ni-&gt;file.run, page_vbo, page_buf,
              log-&gt;page_size, NULL, &amp;log-&gt;read_ahead);

overflowing the allocation. This is reachable when mounting a dirty NTFS volume whose log was formatted with a page size larger than the buffer initially allocated on the mounting host (for example a 64K-log volume mounted on a host that allocated a 4K scratch buffer).

Grow one_page_buf when the adopted on-disk page size exceeds the size used for the initial allocation. On krealloc() failure the original buffer is left intact and freed by the existing error path.

CVSS Base Scores

version 3.1