VRDA Feed by JPCERT/CC
  Vulnerability Response Decision Assistance Feed : 脆弱性脅威分析用情報の定型データ配信
[ about VRDA Feed | JPCERT/CC



 
分析対象脆弱性情報 (リビジョン番号 : 1) [ Download XML
JVNDB-2026-032047     ( CVE-2026-64320 | CVE-2026-64320 )
LinuxのLinux Kernelにおける境界外読み取りに関する脆弱性
https://jvndb.jvn.jp/ja/contents/2026/JVNDB-2026-032047.html

原文

Linuxカーネルにおいて、以下の脆弱性が修正されました。nvmetのDiscovery Get Log Pageにおける認証前のヒープ外読み取りの問題です。nvmet_execute_disc_get_log_page()関数は、ホストから提供されたログページオフセット(lpo)がdワードアライメントされているかのみを検証しています。64ビットのオフセットは、発見用ログページを保持する小さなkzallocで確保されたバッファに加算され、その結果が直接nvmet_copy_to_sgl()に渡されます。nvmet_copy_to_sgl()はソース側の境界チェックを行わずに、data_lenバイトをホスト側にmemcpy()します。 u64 offset = nvmet_get_log_page_offset(req->cmd); /* 64ビットホスト */ size_t data_len = nvmet_get_log_page_len(req->cmd); /* 32ビットホスト */ ... if (offset & 0x3) { ... } /* 唯一のチェック */ ... alloc_len = sizeof(*hdr) + entry_size * discovery_log_entries(req); buffer = kzalloc(alloc_len, GFP_KERNEL); ... status = nvmet_copy_to_sgl(req, 0, buffer + offset, data_len);Discoveryコントローラーは認証されておらず、nvmet_host_allowed()はdiscoveryサブシステムに対して無条件にtrueを返すため、この呼び出しは認証前にTCP/RDMA/FCの任意のピアからnvmetターゲットへ到達可能です。約1KiBの発見ログページで、オフセットがalloc_lenと等しい最大4KiBまでの要求を行う攻撃者は、次のスラブページを読み取り、その内容をファブリック経由で受け取ることができます(nvmet-tcpループバックターゲットの実測では、1回のGet Log Pageレスポンスで81個の標準的なカーネルポインタが漏洩しました)。オフセットがマッピングされていないカーネルメモリを指す場合、カーネル内memcpyがフォルトし、ターゲットホストはクラッシュするか、panic_on_oops=1設定時にはパニックを起こします。攻撃者制御のソース側オフセットパターン「nvmet_copy_to_sgl(req, 0, buffer + ATTACKER_OFFSET, ...)」は、nvmetコードベース全体でnvmet_execute_disc_get_log_pageに特有のものです。admin-cmd.c内の他のすべてのGet Log Pageハンドラはlpoを無視するか(応答は常にオフセット0から開始)、固定ソースポインタによりローカルな宛先オフセットを追跡しています。ホストから提供されるオフセットをログページサイズに対して検証し、コピー長を実際に存在する範囲に制限し、ホスト転送バッファの残りをゼロで埋める処理が行われています。このゼロ埋めは、admin-cmd.c内のnvmet_execute_get_log_changed_ns()における既存の短いレスポンスパターンと一致しており、ホストがログページの実際のサイズ以上のバイト数を要求した場合にトランスポートSGリストの内容が漏洩するのを防いでいます。

翻訳   (表示)





この情報について
分析情報提供元:
JVN iPedia
初版公開日:
2026-09-04
分析対象脆弱性情報の分類:
アドバイザリ・注意喚起
最終更新日:
2026-09-04




脆弱性の影響を受ける製品の識別子
cpe:/o:linux:linux_kernel
 


脆弱性の分析内容
[攻撃元区分]  [?]
未評価 [?]

ローカル [?]
隣接 [?]
ネットワーク [?]

[攻撃条件の複雑さ]  [?]
未評価 [?]

 [?]
 [?]
 [?]

[攻撃前の認証要否]  [?]
未評価 [?]

複数 [?]
単一 [?]
不要 [?]

[機密性への影響]  [?]
未評価 [?]

影響なし [?]
部分的 [?]
全面的 [?]

[完全性への影響]  [?]
未評価 [?]

影響なし [?]
部分的 [?]
全面的 [?]

[可用性への影響]  [?]
未評価 [?]

影響なし [?]
部分的 [?]
全面的 [?]

関連情報
Common Vulnerabilities and Exposures (CVE) CVE-2026-64320




National Vulnerability Database (NVD) CVE-2026-64320








参考情報
JVNDB CWE-125 境界外読み取り




関連文書 nvmet: fix pre-auth out-of-bounds heap read in Discovery Get Log Page - kernel/git/stable/linux.git - Linux kernel stable tree (https://git.kernel.org/stable/c/33b974eb626154ae9348f2bac7de84cb2a3d9dd4)




関連文書 nvmet: fix pre-auth out-of-bounds heap read in Discovery Get Log Page - kernel/git/stable/linux.git - Linux kernel stable tree (https://git.kernel.org/stable/c/56c021a0869260d04c4b65d1471936aaf9177114)




関連文書 nvmet: fix pre-auth out-of-bounds heap read in Discovery Get Log Page - kernel/git/stable/linux.git - Linux kernel stable tree (https://git.kernel.org/stable/c/53cd102a7a56079b11b897835bd9b94c14e6322c)




関連文書 nvmet: fix pre-auth out-of-bounds heap read in Discovery Get Log Page - kernel/git/stable/linux.git - Linux kernel stable tree (https://git.kernel.org/stable/c/a29b316b9bbfd269f323ab4ba9906a894025680f)





Copyright © 2026 JPCERT/CC All Rights Reserved.