【活用ガイド】

JVNDB-2026-024724

LinuxのLinux Kernelにおける複数の脆弱性

概要

Linuxカーネルにおいて、以下の脆弱性が修正されました。dm log における region_count のオーバーフローによる境界外書き込みの問題です。create_log_context() 内のローカル変数 region_count は unsigned int(32ビット)として宣言されていますが、dm_sector_div_up() は sector_t(64ビット)を返します。デバイスマッパターゲットの ti->len が十分大きく、かつ region_size が小さい場合、割り算の結果が UINT_MAX を超える可能性があります。切り捨てられた値が bitset_size の計算に使用されるため、clean_bits、sync_bits、および recovering_bits は実際の領域数に比べてはるかに小さいサイズで割り当てられてしまいます。その後のログ操作(log_set_bit、log_clear_bit、log_test_bit)は、切り捨てられていない完全な領域空間に基づいたインデックスを使用するため、vmalloc によって割り当てられたカーネルヒープメモリに対して境界外の書き込みが発生します。32ビットをオーバーフローする region_count を持つミラーターゲットを作成することで問題を再現できます。具体例は以下の通りです。 dmsetup create bigzero --table '0 8589934594 zero' dmsetup create mymirror --table '0 8589934594 mirror core 2 2 nosync 2 /dev/mapper/bigzero 0 /dev/mapper/bigzero 0' ステータス出力は切り捨てが起きていることを示しています(sync_count=1、4294967297 ではなく、0x100000001 が 1 に切り捨てられたため)。 $ dmsetup status mymirror 0 8589934594 mirror 2 254:1 254:1 1/4294967297 ... これにより、core_in_sync でカーネルクラッシュが発生します。具体的には以下のようになります。 BUG: scheduling while atomic: (udev-worker)/9150/0x00000000 RIP: 0010:core_in_sync+0x14/0x30 [dm_log] CR2: 0000000000000008 Fixing recursive fault but reboot is needed! 修正は、ローカルの region_count を sector_t に拡張し、その値を lc->region_count に代入する前に明示的なオーバーフローチェックを追加することで行われました。
CVSS による深刻度 (CVSS とは?)

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


Linux
  • Linux Kernel 2.6.12.1 以上 5.10.258 未満
  • Linux Kernel 5.11 以上 5.15.209 未満
  • Linux Kernel 5.16 以上 6.1.175 未満
  • Linux Kernel 6.13 以上 6.18.33 未満
  • Linux Kernel 6.19 以上 7.0.10 未満
  • Linux Kernel 6.2 以上 6.6.141 未満
  • Linux Kernel 6.7 以上 6.12.91 未満
  • Linux Kernel 2.6.12

本脆弱性の影響を受ける製品の詳細については、ベンダ情報および参考情報をご確認ください。
想定される影響

・当該ソフトウェアが扱う全ての情報が外部に漏れる可能性があります。
・当該ソフトウェアが扱う全ての情報が書き換えられる可能性があります。
・当該ソフトウェアが完全に停止する可能性があります。
対策

ベンダ情報を参照して適切な対策を実施してください。
ベンダ情報

レッドハット
CWEによる脆弱性タイプ一覧  CWEとは?

  1. 整数オーバーフローまたはラップアラウンド(CWE-190) [その他]
  2. 境界外書き込み(CWE-787) [NVD評価]
共通脆弱性識別子(CVE)  CVEとは?

  1. CVE-2026-53059
参考情報

  1. National Vulnerability Database (NVD) : CVE-2026-53059
  2. 関連文書 : dm log: fix out-of-bounds write due to region_count overflow - kernel/git/stable/linux.git - Linux kernel stable tree (https://git.kernel.org/stable/c/defe483e47173768c227532694dc78cb65db5f09)
  3. 関連文書 : dm log: fix out-of-bounds write due to region_count overflow - kernel/git/stable/linux.git - Linux kernel stable tree (https://git.kernel.org/stable/c/3ec74da927b4e171a6fc0e77b1188ba4d019af51)
  4. 関連文書 : dm log: fix out-of-bounds write due to region_count overflow - kernel/git/stable/linux.git - Linux kernel stable tree (https://git.kernel.org/stable/c/b455903eed4558982be0811f5b7f44f6bbc4ff57)
  5. 関連文書 : dm log: fix out-of-bounds write due to region_count overflow - kernel/git/stable/linux.git - Linux kernel stable tree (https://git.kernel.org/stable/c/44ab8875ae4a2842bde2d756bed195d375e0debb)
  6. 関連文書 : dm log: fix out-of-bounds write due to region_count overflow - kernel/git/stable/linux.git - Linux kernel stable tree (https://git.kernel.org/stable/c/4ec8323b9f0764a14d532b1ae9b87f8a9fecb867)
  7. 関連文書 : dm log: fix out-of-bounds write due to region_count overflow - kernel/git/stable/linux.git - Linux kernel stable tree (https://git.kernel.org/stable/c/12bd5b88e91a02785244ff1d20fb157e96e9cdc8)
  8. 関連文書 : dm log: fix out-of-bounds write due to region_count overflow - kernel/git/stable/linux.git - Linux kernel stable tree (https://git.kernel.org/stable/c/c20e36b7631d83e7535877f08af8b0af72c44b1a)
  9. 関連文書 : dm log: fix out-of-bounds write due to region_count overflow - kernel/git/stable/linux.git - Linux kernel stable tree (https://git.kernel.org/stable/c/d4ac87567f86a55c3c92e9a5144dcd943a9772a1)
更新履歴

  • [2026年07月23日]
      掲載