概要
Linux カーネルの IPv6 In-situ OAM(IOAM)実装(net/ipv6/ioam6_iptunnel.c)に境界外アクセスと排他制御不備の脆弱性があります。
trace->type.bit6 がセットされている場合、受信パス(is_input = true)のパケット処理で skb->queue_mapping が受信側のキューインデックスを保持したままになります。これを送信デバイス(dev)の _tx[] 配列アクセスに使用すると、受信デバイスの RX キュー数が送信デバイスの TX キュー数を上回る場合に配列外アクセスが発生します。
また、qdisc_qstats_qlen_backlog() 周辺でのロック漏れも修正されています。IPv6 IOAM トレース機能(bit6 が有効なトレースタイプ)を利用している環境が対象です。
CVSSベクトル
| 項目 | 値 |
|---|---|
| CVSSスコア | 9.1 |
| 深刻度 | Critical |
| 攻撃元区分 | ネットワーク |
| 攻撃条件の複雑さ | 低 |
| 必要な特権 | 不要 |
| CWE | CWE-125(境界外読み取り) |
影響を受けるソフトウェア
| 製品 | ベンダー | 影響バージョン |
|---|---|---|
| Linux kernel(net/ioam6) | kernel.org | パッチ適用前バージョン |
修正バージョンと回避策
- 修正: kernel.org の各 stable ブランチへのパッチ適用
is_input時のキューマッピング範囲チェックを追加qdisc_qstats_qlen_backlog()周辺にspin_lock_bh()を追加
- 回避策: IPv6 IOAM トレース機能(bit6)を使用していない場合は当該コードパスは実行されません
関連リンク
データソース: NVD (NIST) AI解説は Claude API により自動生成されています。正確性については原文をご確認ください。
