【活用ガイド】

JVNDB-2026-013277

LinuxのLinux Kernelにおける境界外読み取りに関する脆弱性

概要

Linuxカーネルにおいて、以下の脆弱性が修正されました。can: gw: cgw_csum_crc8_rel()におけるヒープの範囲外アクセスの修正です。cgw_csum_crc8_rel()はcalc_idx()を通じて境界安全なインデックスを正しく計算しています。int from = calc_idx(crc8-from_idx, cf-len); int to = calc_idx(crc8-to_idx, cf-len); int res = calc_idx(crc8-result_idx, cf-len); if (from 0 || to 0 || res 0) return; しかしながら、その後のループと結果の書き込みにおいては、計算済みの変数ではなく、生のs8フィールドが直接使用されています。for (i = crc8-from_idx; ...) /* バグ: 生の負のインデックス */ cf-data[crc8-result_idx] = ...; /* バグ: 生の負のインデックス */ from_idx = to_idx = result_idx = -64で64バイトのCAN FDフレームの場合、calc_idx(-64, 64) = 0となり、ガードは通過しますが、ループはi = -64で繰り返され、cf-data[-64]を読み込み、書き込みもcf-data[-64]に対して行われます。この書き込みはヒープ上のcanfd_frameの開始位置より56バイト(7.0-rc)または40バイト(6.19以下)前の領域に及ぶ可能性があります。対応関数cgw_csum_xor_rel()は`from`/`to`/`res`を適切に使用しているため、cgw_csum_crc8_rel()もこれに合わせて修正されました。linux-7.0-rc2のKASANにより以下のように確認されています。BUG: KASAN: slab-out-of-bounds in cgw_csum_crc8_rel+0x515/0x5b0 Read of size 1 at addr ffff8880076619c8 by task poc_cgw_oob/62 can-gwのcrc8チェックサムを設定するにはCAP_NET_ADMIN権限が必要です。
CVSS による深刻度 (CVSS とは?)

CVSS v3 による深刻度
基本値: 8.8 (重要) [その他]
  • 攻撃元区分: 隣接
  • 攻撃条件の複雑さ: 低
  • 攻撃に必要な特権レベル: 不要
  • 利用者の関与: 不要
  • 影響の想定範囲: 変更なし
  • 機密性への影響(C): 高
  • 完全性への影響(I): 高
  • 可用性への影響(A): 高
影響を受けるシステム


Linux
  • Linux Kernel 5.11 以上 5.15.203 未満
  • Linux Kernel 5.16 以上 6.1.168 未満
  • Linux Kernel 5.4.1 以上 5.10.253 未満
  • Linux Kernel 6.13 以上 6.18.21 未満
  • Linux Kernel 6.19 以上 6.19.11 未満
  • Linux Kernel 6.2 以上 6.6.131 未満
  • Linux Kernel 6.7 以上 6.12.80 未満
  • Linux Kernel 5.4
  • Linux Kernel 7.0

想定される影響

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

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

CWEによる脆弱性タイプ一覧  CWEとは?

  1. 境界外読み取り(CWE-125) [NVD評価]
共通脆弱性識別子(CVE)  CVEとは?

  1. CVE-2026-31570
参考情報

  1. National Vulnerability Database (NVD) : CVE-2026-31570
  2. 関連文書 : can: gw: fix OOB heap access in cgw_csum_crc8_rel() - kernel/git/stable/linux.git - Linux kernel stable tree (https://git.kernel.org/stable/c/e7c99348b0612b2bc02d5ce6ff9873261cc7605f)
  3. 関連文書 : can: gw: fix OOB heap access in cgw_csum_crc8_rel() - kernel/git/stable/linux.git - Linux kernel stable tree (https://git.kernel.org/stable/c/66b689efd08227da2c5ca49b58b30a95d23c695a)
  4. 関連文書 : can: gw: fix OOB heap access in cgw_csum_crc8_rel() - kernel/git/stable/linux.git - Linux kernel stable tree (https://git.kernel.org/stable/c/a025283d7f7404c739225e457fb99db2368bb544)
  5. 関連文書 : can: gw: fix OOB heap access in cgw_csum_crc8_rel() - kernel/git/stable/linux.git - Linux kernel stable tree (https://git.kernel.org/stable/c/84f8b76d24273175a22713e83e90874e1880d801)
  6. 関連文書 : can: gw: fix OOB heap access in cgw_csum_crc8_rel() - kernel/git/stable/linux.git - Linux kernel stable tree (https://git.kernel.org/stable/c/999ca48d55a8a46da21519db7e834e5867200379)
  7. 関連文書 : can: gw: fix OOB heap access in cgw_csum_crc8_rel() - kernel/git/stable/linux.git - Linux kernel stable tree (https://git.kernel.org/stable/c/54ecdf76a55e75c1f5085e440f8ab671a3283ef5)
  8. 関連文書 : can: gw: fix OOB heap access in cgw_csum_crc8_rel() - kernel/git/stable/linux.git - Linux kernel stable tree (https://git.kernel.org/stable/c/b9c310d72783cc2f30d103eed83920a5a29c671a)
  9. 関連文書 : can: gw: fix OOB heap access in cgw_csum_crc8_rel() - kernel/git/stable/linux.git - Linux kernel stable tree (https://git.kernel.org/stable/c/c4e8eaa75fa0b6bcbfa5356d6195c4ad0e05e57a)
更新履歴

  • [2026年04月30日]
      掲載