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

smb/client: validate new EOF for zero range

When FALLOC_FL_ZERO_RANGE is used without FALLOC_FL_KEEP_SIZE,
smb3_zero_range() may extend EOF without checking RLIMIT_FSIZE, allowing
the file to grow beyond the caller's file-size limit.

Fix this by calling inode_newsize_ok() before sending the zero-range
request when the operation would extend EOF.

Reproducer, using a file on a CIFS mount:

bash -c '
FILE=/mnt/cifs/repro

trap "" SIGXFSZ
ulimit -f 3072

truncate -s 2M "$FILE"
fallocate --zero-range -o 0 -l 4M "$FILE"
echo "fallocate rc=$?"
stat -c "file size=%s" "$FILE"
'

Before this change, the operation succeeds despite the 3 MiB limit:

fallocate rc=0
file size=4194304

After this change, fallocate fails and leaves the file at 2 MiB.
Published: 2026-09-25
Score: n/a
EPSS: n/a
KEV: No
Impact: File size escalation beyond RLIMIT_FSIZE
Action: Patch Kernel
AI Analysis

Impact

In the Linux kernel, the absence of a size limit check when using FALLOC_FL_ZERO_RANGE on SMB/CIFS mounts can cause the kernel to extend a file’s end of file (EOF) beyond the caller’s RLIMIT_FSIZE, allowing a file to grow past the user‑defined size limit. The primary impact is a bypass of file size restrictions, which can lead to resource exhaustion, violation of quota policies, and potential denial of service if large files are written without permission.

Affected Systems

This flaw affects the Linux kernel when the SMB client (smb3) performs a zero‑range allocate on a CIFS share. No specific kernel releases are listed, but the issue applies to any system running a Linux kernel with the SMB3 client enabled and using FALLOC_FL_ZERO_RANGE. It is relevant to deployments that mount Windows shares via CIFS and rely on zero‑range support.

Risk and Exploitability

The vulnerability is not listed in CISA KEV and its EPSS score is unknown, indicating limited public exploitation data. The flaw requires the ability to issue a fallocate call that uses FALLOC_FL_ZERO_RANGE on a CIFS mount, so local or remote access that can write to the share is necessary. Once those conditions are met, the attacker can cause a file to grow beyond the user’s size limit, potentially consuming disk space or violating quota enforcement. The lack of exploitation evidence and the need for privileged operations suggest a moderate risk in environments where users have write access to CIFS shares.

Generated by OpenCVE AI on September 25, 2026 at 11:35 UTC.

Remediation

No vendor fix or workaround currently provided.

OpenCVE Recommended Actions

  • Update the Linux kernel to a version that includes the fix for the EOF validation during FALLOC_FL_ZERO_RANGE on SMB/CIFS clients.
  • If a kernel update cannot be applied immediately, refrain from using fallocate with FALLOC_FL_ZERO_RANGE on CIFS mounts; instead zero out ranges by truncating or writing zeros in smaller chunks that respect RLIMIT_FSIZE.
  • Enforce strict RLIMIT_FSIZE limits on processes that access CIFS shares and validate that the limit is respected by testing file creation and zero‑range operations after the configuration.

Generated by OpenCVE AI on September 25, 2026 at 11:35 UTC.

Tracking

Sign in to view the affected projects.

Advisories

No advisories yet.

History

Fri, 25 Sep 2026 12:00:00 +0000

Type Values Removed Values Added
Weaknesses CWE-367

Fri, 25 Sep 2026 10:45:00 +0000

Type Values Removed Values Added
Description In the Linux kernel, the following vulnerability has been resolved: smb/client: validate new EOF for zero range When FALLOC_FL_ZERO_RANGE is used without FALLOC_FL_KEEP_SIZE, smb3_zero_range() may extend EOF without checking RLIMIT_FSIZE, allowing the file to grow beyond the caller's file-size limit. Fix this by calling inode_newsize_ok() before sending the zero-range request when the operation would extend EOF. Reproducer, using a file on a CIFS mount: bash -c ' FILE=/mnt/cifs/repro trap "" SIGXFSZ ulimit -f 3072 truncate -s 2M "$FILE" fallocate --zero-range -o 0 -l 4M "$FILE" echo "fallocate rc=$?" stat -c "file size=%s" "$FILE" ' Before this change, the operation succeeds despite the 3 MiB limit: fallocate rc=0 file size=4194304 After this change, fallocate fails and leaves the file at 2 MiB.
Title smb/client: validate new EOF for zero range
First Time appeared Linux
Linux linux Kernel
CPEs cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*
Vendors & Products Linux
Linux linux Kernel
References

Subscriptions

Linux Linux Kernel
cve-icon MITRE

Status: PUBLISHED

Assigner: Linux

Published:

Updated: 2026-09-25T10:36:07.797Z

Reserved: 2026-09-25T10:25:14.318Z

Link: CVE-2026-98126

cve-icon Vulnrichment

No data.

cve-icon NVD

Status : Received

Published: 2026-09-25T11:17:43.940

Modified: 2026-09-25T11:17:43.940

Link: CVE-2026-98126

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

Updated: 2026-09-25T12:45:16Z

Weaknesses
  • CWE-367

    Time-of-check Time-of-use (TOCTOU) Race Condition