VRDA Feed
by
Vulnerability Response Decision Assistance Feed : 脆弱性脅威分析用情報の定型データ配信
|
[ about VRDA Feed
| JPCERT/CC
]
|
|
|
|
|
|
分析対象脆弱性情報 (リビジョン番号 : 1)
|
[ Download XML
]
|
|
JVNDB-2026-032224
( CVE-2026-64322 | CVE-2026-64322 ) |
|
LinuxのLinux Kernelにおける境界外書き込みに関する脆弱性
|
|
https://jvndb.jvn.jp/ja/contents/2026/JVNDB-2026-032224.html |
|
原文
Linuxカーネルにおいて、以下の脆弱性が修正されました。udf: sparingテーブルの長さをバイト数ではなくエントリ数として検証します。udf_load_sparable_map()は、次の条件が偽の場合にsparingテーブルを受け入れます。sizeof(*st) + le16_to_cpu(st->reallocationTableLen) > sb->s_blocksize。つまり、reallocationTableLenをブロックに収まるべきバイト数として扱っています。しかし、このテーブルは8バイトのsparingEntry要素の配列として処理されています。for (i = 0; i < le16_to_cpu(st->reallocationTableLen); i++) { struct sparingEntry *entry = &st->mapEntry[i]; ... entry->origLocation ... }これはudf_get_pblock_spar15()およびudf_relocate_blocks()で行われています。したがって、reallocationTableLenがNの場合、チェックはsizeof(*st) + N <= blocksizeを満たす限り通過しますが、実際にはsizeof(*st) + N * sizeof(struct sparingEntry)バイトをインデックス参照しています。これはブロックサイズの約8倍に達します。細工されたUDFイメージでは、udf_get_pblock_spar15()で境界外読み取りが発生し、udf_relocate_blocks()では同じ長さをudf_update_tag()に渡します。udf_update_tag()内のcrc_itu_t()はブロックを大幅に超えて読み取りを行い、st->mapEntry[]を介したmemmove()は境界外書き込みとなります。reallocationTableLenを実際のエントリ数としてstruct_size()を用いて正しく検証する必要があります。
|
|
|
|
|
この情報について
|
分析情報提供元:
|
JVN iPedia
|
初版公開日:
|
2026-09-07
|
分析対象脆弱性情報の分類:
|
アドバイザリ・注意喚起
|
最終更新日:
|
2026-09-07
|
|
|
|
|
脆弱性の影響を受ける製品の識別子
|
|
cpe:/o:linux:linux_kernel
|
|
|
|
|
|
脆弱性の分析内容
|
|
[攻撃元区分]
[?]
|
|
未評価 [?] |
|
ネットワーク [?] |
|
|
[攻撃条件の複雑さ]
[?]
|
|
未評価 [?] |
|
低 [?] |
|
|
[攻撃前の認証要否]
[?]
|
|
未評価 [?] |
|
不要 [?] |
|
|
[機密性への影響]
[?]
|
|
未評価 [?] |
|
全面的 [?] |
|
|
[完全性への影響]
[?]
|
|
未評価 [?] |
|
全面的 [?] |
|
|
[可用性への影響]
[?]
|
|
未評価 [?] |
|
全面的 [?] |
|
|
関連情報
|
|
Common Vulnerabilities and Exposures (CVE) CVE-2026-64322 |
|
|
|
|
|
|
|
National Vulnerability Database (NVD) CVE-2026-64322 |
|
|
|
|
|
|
|
|
|
|
参考情報
|
|
JVNDB CWE-787 境界外書き込み |
|
|
|
|
|
|
|
関連文書 udf: validate sparing table length as an entry count, not a byte count - kernel/git/stable/linux.git - Linux kernel stable tree (https://git.kernel.org/stable/c/0a9b79a951cfd70a9d31ca01ae2d08a20bb730e9) |
|
|
|
|
|
|
|
関連文書 udf: validate sparing table length as an entry count, not a byte count - kernel/git/stable/linux.git - Linux kernel stable tree (https://git.kernel.org/stable/c/3ec997bd5508e9b25210b5bbec89031629cdb093) |
|
|
|
|
|
|
|
関連文書 udf: validate sparing table length as an entry count, not a byte count - kernel/git/stable/linux.git - Linux kernel stable tree (https://git.kernel.org/stable/c/2a219acb2ce674d99bbd1b7b35ed8c384dac7200) |
|
|
|
|
|
|
|
関連文書 udf: validate sparing table length as an entry count, not a byte count - kernel/git/stable/linux.git - Linux kernel stable tree (https://git.kernel.org/stable/c/2d726135099313958f8975532a2e15322ff150ce) |
|
|
|
|
|
|
|
関連文書 https://git.kernel.org/stable/c/04f4599a9efb90992d072a814960edf0cd62805d |
|
|
|
|
|
|
|
関連文書 udf: validate sparing table length as an entry count, not a byte count - kernel/git/stable/linux.git - Linux kernel stable tree (https://git.kernel.org/stable/c/7285276aa50d2839afb5957ffd491ad282dc8f72) |
|
|
|
|
|
|
|
関連文書 udf: validate sparing table length as an entry count, not a byte count - kernel/git/stable/linux.git - Linux kernel stable tree (https://git.kernel.org/stable/c/7f7774b9da0ef17b87bfa238cf966ad0b3376150) |
|
|
|
|
|
|
|
関連文書 udf: validate sparing table length as an entry count, not a byte count - kernel/git/stable/linux.git - Linux kernel stable tree (https://git.kernel.org/stable/c/eeb0f3e193f8e523d03e4c9e084f6b4875f50e8e) |
|
|
|
|
|
|
|
|
Copyright © 2026 JPCERT/CC All Rights Reserved.
|