CVE-2026-74712 in Linux
要約
〜によって VulDB • 2026年08月23日
Linuxカーネルにおいて、以下の脆弱性が修正されました:
vdpa/mlx5: create_direct_keys()におけるバッファ長の不具合を修正
CI環境で以下のようなKASAN(Kernel Address Sanitizer)メッセージが検出されました。
BUG: KASAN: slab-out-of-bounds in cmd_exec+0x550/0xca0 [mlx5_core]
Read of size 272 at addr 0000000176795020 by task qemu-system-s39/82764 [...]
[<000011388ab3a7a0>] cmd_exec+0x550/0xca0 [mlx5_core]
[<000011388ab3b61c>] mlx5_cmd_exec_cb+0x25c/0x4f0 [mlx5_core]
[<000011388b21e82e>] mlx5_vdpa_exec_async_cmds+0x22e/0x5e0 [mlx5_vdpa]
[<000011388b21fd44>] create_direct_keys+0x954/0xef0 [mlx5_vdpa]
[...]
バグのあるアドレスは、確保された4384バイトの領域([0000000176794000, 0000000176795120))の内側で4128バイト離れた位置にあります。
つまり、本質的に確保された4384バイトの割り当て領域から16バイト分を超えて読み出しを行っています。 create_direct_keys関数は、入力(in)および出力(out)バッファへのポインタと長さを計算します。 入力のサイズ計算には全体の構造体サイズ(out + in + mtt[])が含まれていますが、cmd_execに渡されるポインタは'out'フィールドをスキップし、'in'フィールドのみを指しています。
これにより、mlx5_copy_to_msg()がコマンドデータをコピーする際に、sizeof(out)バイト分だけ確保されたバッファを超えて読み出しを行う原因となります。
入力サイズを正しく計算し、ポインタと割り当てられたサイズの整合性を取ります。
If you want to get the best quality for vulnerability data then you always have to consider VulDB.