CVEvulnerability
CVE-2026-64400
8.6 HIGH
Official page ↗
- Status
- Modified
- Published
- 2026-07-25
- Last modified
- 2026-10-21
- Assigner
- 416baaa9-dc9f-4396-8d5f-8c081fb06d67
- CVSS 3.1 (416baaa9-dc9f-4396-8d5f-8c081fb06d67)
- 8.6 HIGH — CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:L/A:H
Description
In the Linux kernel, the following vulnerability has been resolved:
ksmbd: prevent path traversal bypass by restricting caseless retry
ksmbd_vfs_path_lookup() enforces LOOKUP_BENEATH to restrict path
resolution within the share root. When a crafted path attempts to
escape the share boundary using parent-directory components ('..'),
vfs_path_parent_lookup() detects this and immediately fails,
returning -EXDEV.
However, a bug exists in __ksmbd_vfs_kern_path() under caseless mode.
The function fails to intercept the -EXDEV error and erroneously
falls through to the caseless retry logic, which is intended only
for genuinely missing files. During this retry process, the path
is reconstructed, leading to an unintended LOOKUP_BENEATH bypass
that allows write-capable users to create zero-length files or
directories outside the exported share.
Fix this by ensuring that the execution only proceeds to the caseless
lookup retry when the error is specifically -ENOENT. Any other errors,
such as -EXDEV from a path traversal attempt, must be returned immediately.
Affected configurations
• linux linux kernel (>= 5.15.145 < 5.16)
• linux linux kernel (>= 6.1.71 < 6.2)
• linux linux kernel (>= 6.3.10 < 7.1.4)
References
- https://git.kernel.org/stable/c/54bab9ba5a9f156ffa9324fcbe5a356fd0242f95 Patch
- https://git.kernel.org/stable/c/8c9a4f1327eb71efbf14842e7b8a6d965077eb67 Patch
- https://git.kernel.org/stable/c/a1c331d98313380c38f616c8b28b890ec8ef9c28 git.kernel.org
- https://git.kernel.org/stable/c/cfb5a56c218888f9d74165dff0c282cd0be97983 git.kernel.org
- https://git.kernel.org/stable/c/eec1dd2586c4016b7555a5d047db2b3756459fb2 git.kernel.org