LinuxのLinux Kernelにおける不特定の脆弱性
タイトル LinuxのLinux Kernelにおける不特定の脆弱性
概要

Linuxカーネルにおいて、以下の脆弱性が修正されました。btrfsのlookup_extent_data_ref()関数内でリーフを変更した後に誤った戻り値が返されていた問題です。コミット1618aa3c2e01("btrfs: simplify return variables in lookup_extent_data_ref()")以降、err変数とret変数は単一のret変数に統合されました。しかし、btrfs_next_leaf()が0(成功)を返すと、retは-ENOENTから0に上書きされてしまいます。次のリーフの最初のキーが一致しない場合(異なるobjectidまたはタイプ)、関数は-ENOENTではなく0を返し、その結果呼び出し元はルックアップが成功したと誤認してしまいます。これにより誤ったエクステントツリーアイテムに対する操作が行われ、エクステントツリーの破損を引き起こす可能性がありました。この問題はキーが一致しない場合にret変数に頼らず、直接-ENOENTを返すように修正されました。

想定される影響 当該ソフトウェアが扱う全ての情報が外部に漏れる可能性があります。 また、当該ソフトウェアが扱う全ての情報が書き換えられる可能性があります。 さらに、当該ソフトウェアが完全に停止する可能性があります。 そして、この脆弱性を悪用した攻撃の影響は、他のソフトウェアには及びません。 
対策

リリース情報、またはパッチ情報が公開されています。参考情報を参照して適切な対策を実施してください。

公表日 2026年4月24日0:00
登録日 2026年4月30日12:31
最終更新日 2026年4月30日12:31
CVSS3.0 : 重要
スコア 7.8
ベクター CVSS:3.0/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
影響を受けるシステム
Linux
Linux Kernel 6.10
Linux Kernel 6.10.1 以上 6.12.82 未満
Linux Kernel 6.13 以上 6.18.23 未満
Linux Kernel 6.19 以上 6.19.13 未満
Linux Kernel 7.0
CVE (情報セキュリティ 共通脆弱性識別子)
CWE (共通脆弱性タイプ一覧)
その他
変更履歴
No 変更内容 変更日
1 [2026年04月30日]
  掲載
2026年4月30日12:31

NVD脆弱性情報
CVE-2026-31666
概要

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

btrfs: fix incorrect return value after changing leaf in lookup_extent_data_ref()

After commit 1618aa3c2e01 ("btrfs: simplify return variables in
lookup_extent_data_ref()"), the err and ret variables were merged into
a single ret variable. However, when btrfs_next_leaf() returns 0
(success), ret is overwritten from -ENOENT to 0. If the first key in
the next leaf does not match (different objectid or type), the function
returns 0 instead of -ENOENT, making the caller believe the lookup
succeeded when it did not. This can lead to operations on the wrong
extent tree item, potentially causing extent tree corruption.

Fix this by returning -ENOENT directly when the key does not match,
instead of relying on the ret variable.

公表日 2026年4月25日0:16
登録日 2026年4月25日4:08
最終更新日 2026年4月28日0:16
関連情報、対策とツール
共通脆弱性一覧