CVE-2026-23189

ceph: fix NULL pointer dereference in ceph_mds_auth_match()

State
Published
Severity
Not scored
Published
Feb 14, 2026
Updated
May 23, 2026
Reserved
Jan 13, 2026

Read the record on cve.org

Description

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

ceph: fix NULL pointer dereference in ceph_mds_auth_match()

The CephFS kernel client has regression starting from 6.18-rc1. We have issue in ceph_mds_auth_match() if fs_name == NULL:

const char fs_name = mdsc->fsc->mount_options->mds_namespace; ... if (auth->match.fs_name && strcmp(auth->match.fs_name, fs_name)) { / fsname mismatch, try next one */ return 0; }

Patrick Donnelly suggested that: In summary, we should definitely start decoding `fs_name` from the MDSMap and do strict authorizations checks against it. Note that the `-o mds_namespace=foo` should only be used for selecting the file system to mount and nothing else. It's possible no mds_namespace is specified but the kernel will mount the only file system that exists which may have name "foo".

This patch reworks ceph_mdsmap_decode() and namespace_equals() with the goal of supporting the suggested concept. Now struct ceph_mdsmap contains m_fs_name field that receives copy of extracted FS name by ceph_extract_encoded_string(). For the case of "old" CephFS file systems, it is used "cephfs" name.

[ idryomov: replace redundant %*pE with %s in ceph_mdsmap_decode(), get rid of a series of strlen() calls in ceph_namespace_match(), drop changes to namespace_equals() body to avoid treating empty mds_namespace as equal, drop changes to ceph_mdsc_handle_fsmap() as namespace_equals() isn't an equivalent substitution there ]

Scores

The record has no CVSS score.

Weaknesses

The record names no weakness.

Affected Products

ProductVersions
LinuxLinux
  • 07640d34a781bb2e39020a39137073c03c4aa932 to before c6f8326f26bd20d648d9a55afd68148d1b6afe28Affected
  • 22c73d52a6d05c5a2053385c0d6cd9984732799d to before 57b36ffc8881dd455d875f85c105901974af2130Affected
  • 22c73d52a6d05c5a2053385c0d6cd9984732799d to before 7987cce375ac8ce98e170a77aa2399f2cf6eb99fAffected
  • ca3da8b27ab9a0923ad477447cfb8fc7f4b4c523Affected
  • 6.12.58 to before 6.12.70Affected
  • 6.17.8 to before 6.18Affected
LinuxLinux
  • 6.18Affected
  • before 6.18Not affected
  • 6.12.70 through 6.12.*Not affected
  • 6.18.10 through 6.18.*Not affected
  • 6.19 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.