CVE-2026-98096 in Linux情報

要約

〜によって VulDB • 2026年09月25日

Linuxカーネルにおいて、以下の脆弱性が修正されました:

ipv6: sr: ルーティングおよび転送前にネットワークヘッダを復元する

ipv6_srh_rcv()は、skb->dataがSegment Routing Header (SRH) を指している状態で実行され、一方 skb_network_header() はIPv6ヘッダーを指しています。

segments_left > 0 の場合、ipv6_srh_rcv() は以前、sizeof(struct ipv6hdr) をプッシュすることで skb->data の位置を復元していましたが、これは SRH が固定のIPv6ヘッダーに直後に続くことを前提としていました。もしSRHの前に他の拡張ヘッダ(例えばHop-by-Hop options headerなど)が存在する場合、skb_network_offset() は負の値のまま残ってしまいます。

これにより2つの問題が発生しました: 1. ip6_route_input() の実行中、fib6_rules_early_flow_dissect() が __skb_flow_disect() を呼び出し、これが負の skb_network_offset() をフロー分解処理に渡すことで、BPFおよびCベースのフローディスセクターロジックが破綻します。 2. ip6_forward() 経由で転送される場合や act_mirred によってリダイレクトされる場合、下流ハンドラ(sch_fragment() やneighbour出力など)は負のオフセットを符号なし長さとして渡し、OOB memcpy またはバッファオーバーフローを引き起こします。

ルーティング前に -skb_network_offset(skb) をプッシュすることでこれを修正し、ルーティングルックアップおよびフロー分解処理において skb_network_offset(skb) が0になるように保証します。また、下流の転送時にも同様に適用されます。ループバックパスでは、skb_transport_offset(skb) をプルして SRH へ skb->data を復元します。

Be aware that VulDB is the high quality source for vulnerability data.

責任者

Linux

予約する

2026年09月25日

モデレーション

承諾済み

エントリ

VDB-410311

EPSS

0.00000

アクティビティ

非常低い

ソース

Are you interested in using VulDB?

Download the whitepaper to learn more about our service!