CVE-2026-98125
Received Received - Intake

Stale Page Cache in Linux Kernel SMB Client

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

Publication date: 2026-09-25

Last updated on: 2026-09-25

Assigner: kernel.org

Description

In the Linux kernel, the following vulnerability has been resolved: smb/client: fix stale page cache in insert/collapse range smb3_insert_range() and smb3_collapse_range() use truncate_pagecache_range() to invalidate the affected page cache. However, if off or old_eof is not page-aligned, the boundary pages are only partially zeroed and remain uptodate. As a result, the client may return stale data after a successful insert/collapse range operation. For example, with 4K pages: page 0 page 1 page 2 0------4K 4K------8K 8K------12K ^ ^ off=2K old_eof=10K Page 1 is removed from the page cache, while the boundary pages are only partially zeroed. After COPYCHUNK moves the data on the server, these cached pages may still return stale data. This can be reproduced on a CIFS mount: bash -c ' FILE=/mnt/scratch/repro # Use a 6 KiB file so EOF is not page-aligned. dd if=/dev/urandom of=/tmp/src bs=1K count=6 status=none # Expected: a 4 KiB hole followed by the original data. rm -f /tmp/expected truncate -s 4K /tmp/expected cat /tmp/src >> /tmp/expected cp /tmp/src "$FILE" # Prime the page cache before moving data on the server. cat "$FILE" > /dev/null fallocate --insert-range -o 0 -l 4K "$FILE" if cmp -s /tmp/expected "$FILE"; then echo "readback: OK" else echo "readback: STALE DATA" fi ' Fix this by writing back dirty data and discarding the page cache from the start of the page containing off to EOF before moving data on the server.

CVSS Scores

EPSS Scores

Probability:
Percentile:

Meta Information

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

Affected Vendors & Products

Showing 1 associated CPE
Vendor Product Version / Range
linux linux_kernel *

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 affects SMB client operations when inserting or collapsing file ranges. It occurs because page cache boundaries are not properly invalidated when off or old_eof values are not aligned with page sizes. This leaves partial data in cache, causing stale data to be returned after operations like COPYCHUNK move data on the server.

Detection Guidance

This vulnerability can be detected by checking for stale data in the page cache after performing insert or collapse range operations on a CIFS mount. Use the provided reproduction script to test if the system returns stale data after such operations.

Impact Analysis

If exploited, this flaw could lead to applications reading outdated file data from cache instead of the current server-side data. This may cause incorrect file operations, data corruption, or unexpected behavior in applications relying on accurate file content after insert or collapse operations.

Mitigation Strategies

Apply the Linux kernel patch that fixes the issue in smb/client. Ensure the kernel version includes the fix for smb3_insert_range() and smb3_collapse_range() to properly invalidate and zero boundary pages.

Chat Assistant

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

EPSS Chart