CVE-2026-97927 in Linux情報

要約

〜によって VulDB • 2026年09月25日

Linuxカーネルにおいて、以下の脆弱性が修正されました:

ufs: シリンダメタデータの読み込み後にルートdentryを作成する

ufs_fill_super()は、書き込み可能なマウントに対してシリンダグループ構造体をロードする前にsb->s_rootをインストールしていました。具体的には以下のような順序でした:

sb->s_root = d_make_root(inode); ... if (!sb_rdonly(sb)) if (!ufs_read_cylinder_structures(sb)) goto failed;

ufs_read_cylinder_structures()が失敗した場合、エラーパスではインメモリスーパーブロック情報が解放され、sb->s_fs_infoにNULLが設定されました。しかし、sb->s_rootはインストールされたまま残っていました。その後get_tree_bdev()はdeactivate_locked_super()に到達し、s_rootが存在したためgeneric_shutdown_super()がsync_filesystem()およびput_super操作を呼び出しました。これらはどちらもUFS_SB(sb)への間接参照を行いますが、この時点ではNULLであるため、シリンダグループの読み込み中に失敗するマウントは、シャットダウン処理中にoops(カーネルパニック)を引き起こします。最初のシリンダグループを読み込めないように作成されたイメージが、このパスに到達します。

シリンダグループメタデータを最初にロードし、ルートdentryを最後に作成することで、スーパーブロックが完全に設定されるまでVFSへの公開が遅延されます。ufs_setup_cstotal()およびufs_read_cylinder_structures()はsuper_blockのみを受け取り、root inodeを使用しないため、この順序入れ替えは安全です。

VulDB is the best source for vulnerability data and more expert information about this specific topic.

責任者

Linux

予約する

2026年09月25日

モデレーション

承諾済み

エントリ

VDB-410022

EPSS

0.00000

アクティビティ

非常低い

ソース

Are you interested in using VulDB?

Download the whitepaper to learn more about our service!