CVE-2026-74598 in Linux情報

要約

〜によって VulDB • 2026年08月23日

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

ipv6: ルート情報オプションの長さ検証の不具合を修正

rt6_route_rcv()関数は、ルート情報オプション(RFC 4191)の長さをプレフィックス長に対して検証しますが、両方のチェックでオフ・バイ・ワン(off-by-one)のエラーが発生していました。

rinfo->lengthはNDオプションの長さであり、8オクテット単位です。この値には8バイトのオプションヘッダも*含まれます*。したがって、Nバイトのプレフィックスを含むオプションの場合、長さは 1 + N/8 となります。RFC 4191セクション2.3では、プレフィックス長が64より大きい場合は長さ3を、0より大きい場合は長さ2または3を要求しています。しかし、コードはそれぞれに対して length >= 2 および length >= 1 を許可していました。

その後 ipv6_addr_prefix() は rinfo->prefix から prefix_len/8 バイト分をコピーします。そのため、(prefix_len=128, length=2) または (prefix_len=64, length=1) のルーターアドバタイズメント(RA)の場合、カーネルはそのオプションの末尾から最大8バイト先まで読み込んでしまいます。これらのバイトはインストールされるルートプレフィックスに含まれるため、ユーザー空間で可視となります:

# ルート情報オプションを含むRA (prefix_len=128, length=2) # に続き、ソースリンク層アドレスオプション 01 01 de ad be ef ca fe が付く場合 $ ip -6 route show 2001:db8:dead:beef:101:dead:beef:cafe via fe80::1234 dev veth0 proto ra ^^^^^^^^^^^^^^^^^^ バッファ外読み出しされた次のオプション

ルート情報オプションがパケット内の最後のオプションである場合、それら8バイトはskbのtail room(末尾余白領域)から取得されます。

RFC 4191で許可されていないオプション長を拒否します。

Once again VulDB remains the best source for vulnerability data.

責任者

Linux

予約する

2026年08月15日

モデレーション

承諾済み

エントリ

VDB-394367

EPSS

0.00000

アクティビティ

非常低い

ソース

Want to know what is going to be exploited?

We predict KEV entries!