CVE-2026-80672
Received Received - Intake

Integer Overflow in NTFS Kernel Driver Leading to Out-of-Bounds Read

Vulnerability report for CVE-2026-80672, including description, CVSS score, EPSS score, affected products, exploitability, helpful resources, and attack-flow context.

Publication date: 2026-08-28

Last updated on: 2026-08-28

Assigner: kernel.org

Description

In the Linux kernel, the following vulnerability has been resolved: ntfs: fix u16 truncation of restart-area length check ntfs_check_restart_area() validates that the $LogFile restart area and its trailing log client record array fit within the system page size: u16 ra_ofs, ra_len, ca_ofs; ... ra_len = ca_ofs + le16_to_cpu(ra->log_clients) * sizeof(struct log_client_record); if (ra_ofs + ra_len > le32_to_cpu(rp->system_page_size) || ...) return false; ra_len is u16, but the right-hand side is computed in size_t (sizeof(struct log_client_record) == 160). Both ca_ofs and log_clients come straight from the on-disk restart area. With an on-disk log_clients of 410 the product 410 * 160 = 65600; adding ca_ofs and storing into the u16 ra_len truncates modulo 65536 (e.g. ca_ofs 64 gives ra_len 128), so the "fits in the page" check passes even though the client array described by log_clients extends far beyond the page. ntfs_check_log_client_array() then walks the array bounded only by the on-disk log_clients count: cr = ca + idx; if (cr->prev_client != LOGFILE_NO_CLIENT) ... For log_clients 410 it dereferences records up to ca + 409 * 160, ~64 KiB past the kvzalloc(system_page_size) restart-page buffer -- an out-of-bounds read of attacker-controlled extent, reachable when a crafted NTFS image is mounted (load_and_check_logfile() at mount time). This is the in-kernel analogue of CVE-2022-30789, fixed in the ntfs-3g userspace driver but never in this revived classic driver. Compute the restart-area length in a u32 so the existing bounds check rejects an over-large client array instead of being defeated by the truncation. Widen ra_ofs and ca_ofs to u32 as well: both are loaded from __le16 on-disk fields and every comparison already promotes to int/size_t, so this changes no result and keeps the declaration uniform.

CVSS Scores

EPSS Scores

Probability:
Percentile:

Meta Information

Published
2026-08-28
Last Modified
2026-08-28
Generated
2026-08-28
AI Q&A
2026-08-28
EPSS Evaluated
N/A
NVD
EUVD

Affected Vendors & Products

Currently, no data is known.

Helpful Resources

Exploitability

CWE
CWE Icon
KEV
KEV Icon
CWE ID Description
CWE-UNKNOWN

Attack-Flow Graph

AI Quick Actions

Instant insights powered by AI
Executive Summary

This vulnerability in the Linux kernel involves an integer truncation issue in the NTFS file system driver. The code checks if a restart area and its client records fit within a system page size, but due to a u16 truncation, an attacker can bypass this check by crafting a malicious NTFS image. This leads to an out-of-bounds read when the system attempts to access memory beyond the allocated buffer.

Detection Guidance

This vulnerability is specific to the Linux kernel's NTFS driver and requires examining kernel logs or mounting an NTFS image. Check kernel logs for NTFS-related errors during mount operations. Use 'dmesg | grep ntfs' to inspect logs. No direct network detection commands are applicable.

Impact Analysis

If exploited, this vulnerability could allow an attacker to read sensitive kernel memory or cause a system crash by triggering an out-of-bounds memory access. This could lead to unauthorized data exposure or denial-of-service conditions when mounting a specially crafted NTFS image.

Mitigation Strategies

Update your Linux kernel to the latest patched version. If using a custom kernel, apply the patch fixing the NTFS restart-area length check. Avoid mounting untrusted NTFS images until patched. Monitor vendor advisories for kernel updates.

Chat Assistant

Ask questions about this CVE
Hi! I’m here to help you understand CVE-2026-80672. Ask me anything about the vulnerability, its impact, or mitigation strategies.
0/70

EPSS Chart