ufs: create the root dentry after loading cylinder metadata (Linux Linux)

CVE-2026-97927
Not available

At a glance

Source
NVD
EPSS
EPSS 0.21 % · percentile 11 ()
State
PUBLISHED
Published
Updated
Assigner
Linux
NVD status
Received

Description

In the Linux kernel, the following vulnerability has been resolved: ufs: create the root dentry after loading cylinder metadata ufs_fill_super() installed sb->s_root before it loaded the cylinder group structures for a writable mount: sb->s_root = d_make_root(inode); ... if (!sb_rdonly(sb)) if (!ufs_read_cylinder_structures(sb)) goto failed; When ufs_read_cylinder_structures() failed, the error path freed the in-core superblock information and set sb->s_fs_info to NULL while sb->s_root stayed installed. get_tree_bdev() then reached deactivate_locked_super(), and because s_root was present, generic_shutdown_super() called sync_filesystem() and the put_super operation. Both dereference UFS_SB(sb), which is now NULL, so a mount that fails only while reading the cylinder groups oopses during teardown. A crafted image whose first cylinder group cannot be read reaches this path. Load the cylinder group metadata first and create the root dentry last, so the superblock is published to the VFS only once it is fully set up. ufs_setup_cstotal() and ufs_read_cylinder_structures() take only the super_block and do not use the root inode, so the reordering is safe.

References

European references

CERT-FR advisories

Affected products

ProductVersions
Linux · Linuxaffected 1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 < e58db6c2dce6e453dca26c3a4953002425201880 ; affected 1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 < 05360c6eb8388bb5adac3c439ffb1512de39550a ; affected 1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 < 5cc48633fb76196b596a449ba1f4f642ad6125ce ; affected 1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 < cd21f1ff74b1c15077fa3b98e80da3b41055aae4 ; affected 1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 < a9804121d55aaa4319c1cac00b99794aa177dd6a ; affected 1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 < 785e523b6c1931d802cab9f85912f3e6c7028af1
Linux · Linuxaffected 2.6.12 ; unaffected 0 < 2.6.12 ; unaffected 5.10.271 ≤ 5.10.* ; unaffected 5.15.222 ≤ 5.15.* ; unaffected 6.1.189 ≤ 6.1.* ; unaffected 6.6.158 ≤ 6.6.*

Sources

SourceLicence
CVE List (CVEProject cvelistV5)CVE Program Terms of Use
EPSS (FIRST.org)FIRST — attribution requested
ENISA EUVDENISA — reproduction authorised, source acknowledged
CERT-FR (ANSSI)Licence Ouverte / Etalab 2.0
NVD (NIST) via fkie-cad/nvd-json-data-feedsPublic domain — this product uses data from the NVD API but is not endorsed or certified by the NVD