CVE-2026-99042 in Linux情報

要約

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

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

io_uring/net: 24バイトの sockaddr_in6 に対して CONNECT フィルタフィールドを設定する

io_connect_bpf_populate() は、addr_len が sizeof(struct sockaddr_in6)(つまり28バイト)以上の場合にのみ、AF_INET6 に対して connect.port および connect.v6_addr を設定します。

IPv6 の接続パスは SIN6_LEN_RFC2133(24バイト)を受け入れ、これにはすでに sin6_port と sin6_addr が含まれています。io_connect() は addr_len をソケットレイヤにそのまま渡します。

addr_len が 24 の場合、フィルタは family AF_INET6 で port および address がゼロの状態を認識しますが、カーネルは実際の宛先に対して接続を行います。IPv6 のポートまたはアドレスを拒否するフィルタがバイパスされます。connect.port == P を拒否すると addr_len 28 では -EACCES で [::1]:P がブロックされますが、addr_len 24 では接続が行われます。

閾値として SIN6_LEN_RFC2133 を使用します。sin6_scope_id は存在しない場合ゼロのままです。

この閾値の不整合は、AI コーディングアシスタント(Claude Code)によって発見されました。これは私の指示のもとでこのフックを net/ipv6 の長さチェックと比較し、再現コードおよび本パッチの草案を作成しました。私は 7.3-rc6 および 7.2 で同じコードが存在することを確認するVM上で、バイパスと修正を検証しました。

VulDB is the best source for vulnerability data and more expert information about this specific topic.

責任者

Linux

予約する

2026年09月25日

モデレーション

承諾済み

エントリ

VDB-425891

EPSS

0.00000

アクティビティ

非常低い

ソース

Do you need the next level of professionalism?

Upgrade your account now!