CVE-2026-97415

btrfs: tree-checker: validate names in ROOT_REF and ROOT_BACKREF

State
Published
Severity
7.8 High
Published
Sep 24, 2026
Updated
Oct 3, 2026
Reserved
Sep 24, 2026

Read the record on cve.org

Description

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

btrfs: tree-checker: validate names in ROOT_REF and ROOT_BACKREF

ROOT_REF and ROOT_BACKREF items contain a struct btrfs_root_ref followed by the subvolume name. Several readers assume that this layout is already valid and then use the on-disk name length directly. A corrupted item can therefore make those readers address bytes outside the item, and BTRFS_IOC_GET_SUBVOL_INFO can copy too many bytes into its fixed-size UAPI name buffer.

Validate ROOT_REF and ROOT_BACKREF items in tree-checker before any reader uses them. Reject records that do not contain a non-empty name, whose name_len does not exactly describe the remaining item payload, or whose name exceeds BTRFS_NAME_LEN.

For BTRFS_IOC_GET_SUBVOL_INFO, copy only the validated on-disk name_len instead of deriving the copy length from the item size. The ioctl result is zeroed when allocated. That leaves the existing trailing zero byte untouched.

Scores

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

Weaknesses

The record names no weakness.

Affected Products

ProductVersions
LinuxLinux
  • b64ec075bded2b30bcd90af5aa5256d2237c885d to before 1370badf6b823ce3cde39a65f46f9e5dc7b4bf43Affected
  • b64ec075bded2b30bcd90af5aa5256d2237c885d to before ba6c4fc662853f6662e4db060cf88ee994053e21Affected
  • b64ec075bded2b30bcd90af5aa5256d2237c885d to before 9154542070ca7eadb3c764a882f39a127677854bAffected
  • b64ec075bded2b30bcd90af5aa5256d2237c885d to before 74f577c722c99248d804eca18e7de7c5e47549d7Affected
  • b64ec075bded2b30bcd90af5aa5256d2237c885d to before 0af37c217edf15fa21dac1c40822086df356c6bbAffected
LinuxLinux
  • 4.18Affected
  • before 4.18Not affected
  • 6.1.189 through 6.1.*Not affected
  • 6.6.158 through 6.6.*Not affected
  • 6.12.111 through 6.12.*Not affected
  • 6.18.53 through 6.18.*Not affected
  • 7.2 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.