Paper/Archive/CVE-2026-89652

CVE-2026-89652

Linux Linux — ceph: bound copied dentry name length in NFS export get_name

Description · from the CVE record

In the Linux kernel, the following vulnerability has been resolved: ceph: bound copied dentry name length in NFS export get_name ceph_get_name() copies the MDS-supplied name into the caller's NAME_MAX-sized buffer with memcpy(name, rinfo->dname, rinfo->dname_len) and then writes name[rinfo->dname_len] = 0, without checking dname_len against NAME_MAX. A malicious or buggy MDS that returns a LOOKUPNAME reply with dname_len > NAME_MAX overflows the buffer. __get_snap_name() copies rde->name / rde->name_len the same unchecked way. Impact: a malicious or compromised Ceph MDS overflows the NAME_MAX name buffer in a client's NFS-export get_name path, a slab out-of-bounds write reported by KASAN. Reachable when a CephFS mount is re-exported over NFS. Add ceph_export_copy_name(), which rejects lengths above NAME_MAX with -ENAMETOOLONG before the copy, and use it in both ceph_get_name() and __get_snap_name().

Affected

ProductAffectedFixed inSource
Linux19913b4eac4a230dccb548931358398f45dabe4c – < a294064e0e0f81ea607b2f019e16888aa1b0a011a294064e0e0f81ea607b2f019e16888aa1b0a011CNA
Linux19913b4eac4a230dccb548931358398f45dabe4c – < 61d9f27b191b838b96b697ce0bfaee39a138243a61d9f27b191b838b96b697ce0bfaee39a138243aCNA
Linux19913b4eac4a230dccb548931358398f45dabe4c – < 06fb5e623cdc2402d6bb29be94d9beb9a826ffec06fb5e623cdc2402d6bb29be94d9beb9a826ffecCNA
Linux19913b4eac4a230dccb548931358398f45dabe4c – < e7c2fd3893a7f7fcd7e8cf0b2c6348bb1e893df6e7c2fd3893a7f7fcd7e8cf0b2c6348bb1e893df6CNA
Linux19913b4eac4a230dccb548931358398f45dabe4c – < eff8013c5a8916613c742ae5a2cc341cb605c0aeeff8013c5a8916613c742ae5a2cc341cb605c0aeCNA
Linux3.15–CNA

Scores by source

Linux (CNA)9.8CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
CISA ADPSSVCExploitation: none · Automatable: yes · Technical impact: total

References

refgit.kernel.org/stable/c/a294064e0e0f81ea607b2f019e16888aa1b0a011refgit.kernel.org/stable/c/61d9f27b191b838b96b697ce0bfaee39a138243arefgit.kernel.org/stable/c/06fb5e623cdc2402d6bb29be94d9beb9a826ffecrefgit.kernel.org/stable/c/e7c2fd3893a7f7fcd7e8cf0b2c6348bb1e893df6refgit.kernel.org/stable/c/eff8013c5a8916613c742ae5a2cc341cb605c0ae