CVE-2026-89639

cifs: use cifs_invalidate_cache() in cifs_do_truncate() for O_TRUNC

Published Sep 11, 2026 CVSS 3.1 · 7.1 High EPSS < 1% KEV · Not listed
Description
In the Linux kernel, the following vulnerability has been resolved:

cifs: use cifs_invalidate_cache() in cifs_do_truncate() for O_TRUNC

cifs_do_truncate() is invoked from cifs_open() without i_rwsem, so it
cannot use cifs_resize_file_locked() to perform a proper fscache cookie
resize. Instead, add cifs_invalidate_cache() after cifs_setsize().

cifs_invalidate_cache() calls fscache_invalidate(), which works without
holding i_rwsem: it unconditionally increments inval_counter and sets
FSCACHE_COOKIE_NO_DATA_TO_READ, ensuring that stale cached data is not
served once the cookie is later activated by fscache_use_cookie().
Truncation to zero leaves no valid cached data, making invalidation the
correct semantic here.

Analysis

AI-generated

Technical impact

The vulnerability resides in the Linux kernel's CIFS client share is truncated to zero length. During this operation the kernel fails to invalidate the file's cache, allowing stale cached data to remain available. Consequently, a reader of the file after truncation can receive data that were present before the truncate, exposing sensitive information that should no longer exist.

Affected Systems

All Linux kernel installations that compile the in‑tree CIFS client are affected. This includes the default CIFS support shipped by major distributions and any custom kernel using the same module. Any machine that mounts SMB/CIFS shares with the default caching enabled is at risk, regardless of the filesystem’s local ownership or the operating system vendor.

Risk and Exploitability

The flaw provides an information‑disclosure risk but does not grant privilege escalation or remote execution. An attacker must be able to truncate a file on a shared CIFS volume, a capability available to ordinary users who have write permissions on the share. The EPSS score of less than 1% indicates low likelihood of current exploitation, yet the CVSS score of 7.1 reflects high severity. The issue is not listed in the CISA KEV catalog, and no remote exploitation vectors are documented. The risk is therefore moderate for environments that enable caching and provide write access to untrusted users.

Remediation

No solution or workaround provided in the CVE record.

OpenCVE Recommended Actions

  • Update the kernel to a version that includes the fix (e.g., install the latest stable kernel from your distribution’s repositories).
  • Remount CIFS shares with caching disabled by adding `cache=none` to the mount options.
  • If a kernel update module at boot (e.g., add `install fscache /bin/true` to /etc/modprobe.d/ or use `modprobe -r fscache` to unload it).

Generated by OpenCVE AI on September 15, 2026 at 21:02 UTC.

Tracking

Sign in to view the affected projects.

Advisories

No advisories available
History
Type Values Removed Values Added
Metrics cvssV3_1

{'score': 3.3, 'vector': 'CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:L/I:N/A:N'}

cvssV3_1

{'score': 7.1, 'vector': 'CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:N'}

Type Values Removed Values Added
Weaknesses CWE-200
Type Values Removed Values Added
Weaknesses CWE-524
References
Metrics threat_severity

None

cvssV3_1

{'score': 3.3, 'vector': 'CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:L/I:N/A:N'}

threat_severity

Low

Type Values Removed Values Added
Weaknesses CWE-200
Type Values Removed Values Added
Description In the Linux kernel, the following vulnerability has been resolved: cifs: use cifs_invalidate_cache() in cifs_do_truncate() for O_TRUNC cifs_do_truncate() is invoked from cifs_open() without i_rwsem, so it cannot use cifs_resize_file_locked() to perform a proper fscache cookie resize. Instead, add cifs_invalidate_cache() after cifs_setsize(). cifs_invalidate_cache() calls fscache_invalidate(), which works without holding i_rwsem: it unconditionally increments inval_counter and sets FSCACHE_COOKIE_NO_DATA_TO_READ, ensuring that stale cached data is not served once the cookie is later activated by fscache_use_cookie(). Truncation to zero leaves no valid cached data, making invalidation the correct semantic here.
Title cifs: use cifs_invalidate_cache() in cifs_do_truncate() for O_TRUNC
First Time appeared Linux
Linux linux Kernel
CPEs cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*
Vendors & Products Linux
Linux linux Kernel
References
Weaknesses
  • CWE-524

    Use of Cache Containing Sensitive Information

Sources

Status
PUBLISHED
Assigner
Linux
Published
Updated
Oct 19, 2026, 8:50 AM
Reserved
Sep 11, 2026, 7:38 PM
Status
Received
Published
Sep 11, 2026, 8:19 PM
Modified
Oct 19, 2026, 9:18 AM
Severity
Low
Public date
Sep 11, 2026, 7:45 PM