CVE-2026-52906

9p: fix access mode flags being ORed instead of replaced

State
Published
Severity
7.7 High
Published
Jun 9, 2026
Updated
Aug 5, 2026
Reserved
Jun 9, 2026

Read the record on cve.org

Description

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

9p: fix access mode flags being ORed instead of replaced

Since commit 1f3e4142c0eb ("9p: convert to the new mount API"), v9fs_apply_options() applies parsed mount flags with |= onto flags already set by v9fs_session_init(). For 9P2000.L, session_init sets V9FS_ACCESS_CLIENT as the default, so when the user mounts with "access=user", both bits end up set. Access mode checks compare against exact values, so having both bits set matches neither mode.

This causes v9fs_fid_lookup() to fall through to the default switch case, using INVALID_UID (nobody/65534) instead of current_fsuid() for all fid lookups. Root is then unable to chown or perform other privileged operations.

Fix by clearing the access mask before applying the user's choice.

Scores

CVSSScoreVectorSource
3.17.7 HighCVSS:3.1/AV:L/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:NLinux

Weaknesses

The record names no weakness.

Affected Products

ProductVersions
LinuxLinux
  • 1f3e4142c0eb178089ea0cbc97506a061470ad27 to before b8f037e87a083291190204b959cda417aaf01058Affected
  • 1f3e4142c0eb178089ea0cbc97506a061470ad27 to before da2346a48a5a1fed86c3fe3d73c0b60e7b3027c9Affected
LinuxLinux
  • 6.19Affected
  • before 6.19Not affected
  • 7.0.4 through 7.0.*Not affected
  • 7.1 and laterNot affected

References

Every record here comes from the CVE Program’s CVE List. © 1999–2026 The MITRE Corporation. CVE is a registered trademark of The MITRE Corporation. The records are reproduced under the CVE Program terms of use.