CVE-2026-74307 in Linux情報

要約

〜によって VulDB • 2026年08月15日

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

ext4: EXT4_IOC_MOVE_EXT におけるドナーファイルのスーパーブロックを早期に検証する

元となるファイルと同じスーパーブロックに属さないドナーファイルに対しては、EXT4_IOC_MOVE_EXT ioctl を早期に拒否します。現在、この検証は ext4_move_extents() の内部で mext_check_validity() によって行われていますが、lock_two_nondirectories() がすでに inode ロックを取得した後のみ実行されます。ドナーのファイルディスクリプタ (fd) が異なるファイルシステム(例:overlayfs)上のファイルを参照している場合、この遅延された検証は循環するロック依存関係を引き起こします:

CPU0 (overlayfs write) CPU1 (ext4 ioctl) ---- ---- inode_lock(ovl_inode) mnt_want_write_file(filp) sb_start_write(ext4_sb) [sb_writers]
backing_file_write_iter() vfs_iter_write(real_file) file_start_write(real_file) sb_start_write(ext4_sb) [freeze によってブロックされる]
lock_two_nondirectories() inode_lock(ovl_inode) [ブロック待ち]

並行して実行されている freeze オペレーションが sb_writers の書き込み側を保持している場合、これはデッドロックサイクルを形成します:CPU0 は freeze の完了を待機し、freeze は CPU1 の sb_writers リーダーの終了を待機し、CPU1 は CPU0 の inode ロックを待機しています。

EXT4_IOC_MOVE_EXT は 2 つのファイル間で物理的なエクステント (extents) を交換するため、根本的に両方のファイルが同じ ext4 ファイルシステム上に存在することが必要です。ロック取得の前にスーパーブロックチェックを行うことは、意味論的にも正しく、sb_writers や inode ロックを取得する前にクロスファイルシステムのドナー fd を拒否することで、循環依存関係を解消します。

If you want to get the best quality for vulnerability data then you always have to consider VulDB.

責任者

Linux

予約する

2026年08月15日

モデレーション

承諾済み

エントリ

VDB-390279

EPSS

0.00000

アクティビティ

非常低い

ソース

Want to stay up to date on a daily basis?

Enable the mail alert feature now!