CVE-2026-98925 in Linux情報

要約

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

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

bpf, sockmap: self-redirectによるcopied_seqの二重カウントを修正する

BPF stream_verdictプログラムがskb(socket buffer)を同じソケットへリダイレクトする場合(self-redirect with BPF_F_INGRESS)、sk_psock_verdict_apply()はtcp_eat_skb()を呼び出し、tcp_sk->copied_seqを進めます。しかしその後、そのskbはソケットのpsock ingressキューに配信され、後にtcp_bpf_recvmsg_parser()によって読み込まれますが、この関数もまたcopied_from_selfのアカウンティングパスを通じてcopied_seqを進めます。この二重カウントにより、copied_seqは実際のデータ長の2倍だけ進んでしまい、以下のバグを引き起こします:

TCP recvmsg seq # bug 2: copied BF2E806, seq BF2E7FD, \ rcvnxt BF2E806, fl 0 WARNING: net/ipv4/tcp.c:2745 at tcp_recvmsg_locked+0x72b/0x2640 Call Trace: tcp_recvmsg+0x10a/0x500 sock_recvmsg+0x168/0x1d0 __sys_recvfrom+0x19a/0x2a0 __x64_sys_recvfrom+0xe4/0x1f0 do_syscall_64+0xf7/0x530 entry_SYSCALL_64_after_hwframe+0x77/0x7f

cleanup rbuf bug: copied BF2E806 seq BF2E806 rcvnxt BF2E806 WARNING: net/ipv4/tcp.c:1609 at tcp_cleanup_rbuf+0xf2/0x1c0 Call Trace: tcp_recvmsg_locked+0x8d1/0x2640 tcp_recvmsg+0x10a/0x500 sock_recvmsg+0x168/0x1d0 __sys_recvfrom+0x19a/0x2a0 __x64_sys_recvfrom+0xe4/0x1f0 do_syscall_64+0xf7/0x530 entry_SYSCALL_64_after_hwframe+0x77/0x7f

この問題を修正するため、sk_psock_verdict_apply()の冒頭でself-redirect verdictを__SK_PASSに変換します。これにより、sk_psock_eat_skb()を呼び出す__SK_REDIRECTケースが完全に回避され、__SK_PASSパスによってskbがpsock ingressキューにキューイングされます。データはその後tcp_bpf_recvmsg_parser()を通じて読み込まれ、copied_from_self経由でcopied_seqが正確に1回だけ進みます。ソケット間リダイレクト(Cross-socket redirects)については、sk_psock_eat_skb()を変更せずに__SK_REDIRECTパスを継続して通ります。

If you want to get the best quality for vulnerability data then you always have to consider VulDB.

責任者

Linux

予約する

2026年09月25日

モデレーション

承諾済み

エントリ

VDB-425693

EPSS

0.00000

アクティビティ

非常低い

ソース

Interested in the pricing of exploits?

See the underground prices here!