CVE-2025-38527
smb: client: fix use-after-free in cifs_oplock_break
Description
In the Linux kernel, the following vulnerability has been resolved: smb: client: fix use-after-free in cifs_oplock_break A race condition can occur in cifs_oplock_break() leading to a use-after-free of the cinode structure when unmounting: cifs_oplock_break() _cifsFileInfo_put(cfile) cifsFileInfo_put_final() cifs_sb_deactive() [last ref, start releasing sb] kill_sb() kill_anon_super() generic_shutdown_super() evict_inodes() dispose_list() evict() destroy_inode() call_rcu(&inode->i_rcu, i_callback) spin_lock(&cinode->open_file_lock) <- OK [later] i_callback() cifs_free_inode() kmem_cache_free(cinode) spin_unlock(&cinode->open_file_lock) <- UAF cifs_done_oplock_break(cinode) <- UAF The issue occurs when umount has already released its reference to the superblock. When _cifsFileInfo_put() calls cifs_sb_deactive(), this releases the last reference, triggering the immediate cleanup of all inodes under RCU. However, cifs_oplock_break() continues to access the cinode after this point, resulting in use-after-free. Fix this by holding an extra reference to the superblock during the entire oplock break operation. This ensures that the superblock and its inodes remain valid until the oplock break completes.
INFO
Published Date :
Aug. 16, 2025, 12:15 p.m.
Last Modified :
Jan. 7, 2026, 5:38 p.m.
Remotely Exploit :
No
Source :
416baaa9-dc9f-4396-8d5f-8c081fb06d67
CVSS Scores
| Score | Version | Severity | Vector | Exploitability Score | Impact Score | Source |
|---|---|---|---|---|---|---|
| CVSS 3.1 | HIGH | [email protected] |
Solution
- Update the Linux kernel to a patched version.
- Ensure the kernel is updated with the fix for cifs_oplock_break.
- Apply the patch that holds an extra superblock reference.
References to Advisories, Solutions, and Tools
Here, you will find a curated list of external links that provide in-depth
information, practical solutions, and valuable tools related to
CVE-2025-38527.
CWE - Common Weakness Enumeration
While CVE identifies
specific instances of vulnerabilities, CWE categorizes the common flaws or
weaknesses that can lead to vulnerabilities. CVE-2025-38527 is
associated with the following CWEs:
Common Attack Pattern Enumeration and Classification (CAPEC)
Common Attack Pattern Enumeration and Classification
(CAPEC)
stores attack patterns, which are descriptions of the common attributes and
approaches employed by adversaries to exploit the CVE-2025-38527
weaknesses.
We scan GitHub repositories to detect new proof-of-concept exploits. Following list is a collection of public exploits and proof-of-concepts, which have been published on GitHub (sorted by the most recently updated).
Results are limited to the first 15 repositories due to potential performance issues.
The following list is the news that have been mention
CVE-2025-38527 vulnerability anywhere in the article.
The following table lists the changes that have been made to the
CVE-2025-38527 vulnerability over time.
Vulnerability history details can be useful for understanding the evolution of a vulnerability, and for identifying the most recent changes that may impact the vulnerability's severity, exploitability, or other characteristics.
-
Initial Analysis by [email protected]
Jan. 07, 2026
Action Type Old Value New Value Added CVSS V3.1 AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H Added CWE CWE-416 Added CPE Configuration OR *cpe:2.3:o:linux:linux_kernel:5.1:rc6:*:*:*:*:*:* *cpe:2.3:o:linux:linux_kernel:5.1:-:*:*:*:*:*:* *cpe:2.3:o:linux:linux_kernel:5.1:rc7:*:*:*:*:*:* *cpe:2.3:o:linux:linux_kernel:6.16:rc1:*:*:*:*:*:* *cpe:2.3:o:linux:linux_kernel:6.16:rc2:*:*:*:*:*:* *cpe:2.3:o:linux:linux_kernel:6.16:rc3:*:*:*:*:*:* *cpe:2.3:o:linux:linux_kernel:6.16:rc4:*:*:*:*:*:* *cpe:2.3:o:linux:linux_kernel:6.16:rc5:*:*:*:*:*:* *cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* versions from (including) 6.13 up to (excluding) 6.15.8 *cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* versions from (including) 6.7 up to (excluding) 6.12.40 *cpe:2.3:o:linux:linux_kernel:6.16:rc6:*:*:*:*:*:* *cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* versions from (including) 5.16 up to (excluding) 6.1.147 *cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* versions from (including) 6.2 up to (excluding) 6.6.100 *cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* versions from (including) 3.16.72 up to (excluding) 3.17 *cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* versions from (including) 4.14.114 up to (excluding) 4.15 *cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* versions from (including) 4.19.37 up to (excluding) 4.20 *cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* versions from (including) 4.9.171 up to (excluding) 4.10 *cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* versions from (including) 5.0.10 up to (excluding) 5.1 *cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* versions from (including) 5.1.1 up to (excluding) 5.15.190 Added CPE Configuration OR *cpe:2.3:o:debian:debian_linux:11.0:*:*:*:*:*:*:* Added Reference Type kernel.org: https://git.kernel.org/stable/c/09bce2138a30ef10d8821c8c3f73a4ab7a5726bc Types: Patch Added Reference Type kernel.org: https://git.kernel.org/stable/c/0a4eec84d4d2c4085d4ed8630fd74e4b39033c1b Types: Patch Added Reference Type kernel.org: https://git.kernel.org/stable/c/2baaf5bbab2ac474c4f92c10fcb3310f824db995 Types: Patch Added Reference Type kernel.org: https://git.kernel.org/stable/c/4256a483fe58af66a46cbf3dc48ff26e580d3308 Types: Patch Added Reference Type kernel.org: https://git.kernel.org/stable/c/705c79101ccf9edea5a00d761491a03ced314210 Types: Patch Added Reference Type kernel.org: https://git.kernel.org/stable/c/da11bd4b697b393a207f19a2ed7d382a811a3ddc Types: Patch Added Reference Type CVE: https://lists.debian.org/debian-lts-announce/2025/10/msg00008.html Types: Mailing List, Third Party Advisory -
CVE Modified by af854a3a-2127-422b-91ae-364da2661108
Nov. 03, 2025
Action Type Old Value New Value Added Reference https://lists.debian.org/debian-lts-announce/2025/10/msg00008.html -
CVE Modified by 416baaa9-dc9f-4396-8d5f-8c081fb06d67
Aug. 28, 2025
Action Type Old Value New Value Added Reference https://git.kernel.org/stable/c/4256a483fe58af66a46cbf3dc48ff26e580d3308 -
New CVE Received by 416baaa9-dc9f-4396-8d5f-8c081fb06d67
Aug. 16, 2025
Action Type Old Value New Value Added Description In the Linux kernel, the following vulnerability has been resolved: smb: client: fix use-after-free in cifs_oplock_break A race condition can occur in cifs_oplock_break() leading to a use-after-free of the cinode structure when unmounting: cifs_oplock_break() _cifsFileInfo_put(cfile) cifsFileInfo_put_final() cifs_sb_deactive() [last ref, start releasing sb] kill_sb() kill_anon_super() generic_shutdown_super() evict_inodes() dispose_list() evict() destroy_inode() call_rcu(&inode->i_rcu, i_callback) spin_lock(&cinode->open_file_lock) <- OK [later] i_callback() cifs_free_inode() kmem_cache_free(cinode) spin_unlock(&cinode->open_file_lock) <- UAF cifs_done_oplock_break(cinode) <- UAF The issue occurs when umount has already released its reference to the superblock. When _cifsFileInfo_put() calls cifs_sb_deactive(), this releases the last reference, triggering the immediate cleanup of all inodes under RCU. However, cifs_oplock_break() continues to access the cinode after this point, resulting in use-after-free. Fix this by holding an extra reference to the superblock during the entire oplock break operation. This ensures that the superblock and its inodes remain valid until the oplock break completes. Added Reference https://git.kernel.org/stable/c/09bce2138a30ef10d8821c8c3f73a4ab7a5726bc Added Reference https://git.kernel.org/stable/c/0a4eec84d4d2c4085d4ed8630fd74e4b39033c1b Added Reference https://git.kernel.org/stable/c/2baaf5bbab2ac474c4f92c10fcb3310f824db995 Added Reference https://git.kernel.org/stable/c/705c79101ccf9edea5a00d761491a03ced314210 Added Reference https://git.kernel.org/stable/c/da11bd4b697b393a207f19a2ed7d382a811a3ddc