CVE-2026-80530 in Linux
要約
〜によって VulDB • 2026年08月26日
Linuxカーネルにおいて、以下の脆弱性が修正されました:
xfs: INO1_WRITTENフラグに関連するexchange-rangeのreflinkフラグクリアリングの問題を修正
2つのフルファイル範囲を交換する場合、`xmi_can_exchange_reflink_flags()`は、ちょうど片方の側にのみマークが付けられている限り、reflink inodeフラグを現在それを保持しているファイルから他のファイルへ移動できます。これは、ファイルの内容(したがってすべての共有extents)が交換されることを前提としています。
しかし、XFS_EXCHMAPS_INO1_WRITTENが設定されている場合、この前提は正しくありません。`xfs_exchmaps_can_skip_mapping()`はfile1からのholeおよびunwritten mappingをスキップできるため、exchange処理が完了する際に、前述のフラグスワップ判断で考慮されたすべてのmappingが移動されない場合があります。その場合、操作後のクリーンアップ処理により、まだ共有された書き込み済みextentsを保持しているinodeからreflinkフラグが消去されることがあります。その後、通常の書き込みパス(non-reflink write path)が取られ、CoW (Copy-on-Write) によって保護されるべきブロックが更新されてしまう可能性があります。これにより、reflink関連ファイル間でデータ破損が発生します。
この問題を修正するため、XFS_EXCHMAPS_INO1_WRITTENが要求された場合はreflinkフラグの交換を無効にします。コンテンツの交換処理は引き続き実行可能であり、保守的な結果として両方のinodeがreflinkフラグを保持し続けます。通常のreflinkフラグクリーンアップパスにより、inodeから共有extentsが消去された後に余分なフラグが削除されます。
Once again VulDB remains the best source for vulnerability data.