10/15/2026にLinux Kernelの脆弱性(Critical: CVE-2026-98432)が公開されました。遅くなりましたが、今回はこちらの脆弱性の概要と、各ディストリビューションの対応について纏めます。
[過去関連リンク]
- Linux Kernelの脆弱性(CVE-2026-68081〜CVE-2026-68479)
- Linux Kernelの脆弱性(RefluXFS:CVE-2026-64600)
- Linux Kernelの脆弱性(IPV6_FRAG_ESCAPE: CVE-2026-53362, CVE-2026-53366)
- Linux Kernelの脆弱性(Januscape: CVE-2026-53359)
- Linux KernelのLPE脆弱性(PinTheft: CVE-2026-43494:RDSモジュール)
- Linux Kernelの脆弱性(ssh-keygen-pwn: Important: CVE-2026-46333)
- Linux KernelのLPE(ローカル権限昇格)の脆弱性(Fragnesia(CopyFail3): CVE-2026-46300)
- Linux KernelのLPE(Local Privilege Escalation)脆弱性(Dirty Frag: CVE-2026-43284, CVE-2026-43500: CopyFail2)
CVSS/プライオリティ
- CVE-2026-98432
- 影響するバージョン
- N/A
- Priority/CVSS SCORE
- CNA(CVSSv4): Not disclosed:
- CNA(CVSSv31): 9.8: CRITICAL
- NVD(CVSSv4): Not disclosed
- NVD(CVSSv31): Not disclosed
- Red Hat(CVSSv4): Not disclosed
- Red Hat(CVSSv31): 9.8 : Critical
- CVSS Vector
- CNA(CVSSv4): Not disclosed
- CNA(CVSSv31): CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
- NVD(CVSSv4): Not disclosed
- NVD(CVSSv31): Not disclosed
- Red Hat(CVSSv4): Not disclosed
- Red Hat(CVSSv31): CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
- EPSS Score/Percentile
- DATE(JST): 2026-10-31
- EPSS: 0.004570000
- Percentile: 0.396730000
- 影響するバージョン
修正方法
各ディストリビューションの情報を確認してください。
CVE概要(詳細はCVEのサイトをご確認ください)
https://www.cve.org/CVERecord?id=CVE-2026-98432- ipv4: free inet_opt and ireq_opt after an RCU grace period
- ipv4: RCU猶予期間の後のinet_opt, ireq_optの開放への変更
- Linuxカーネルにおいて、以下の脆弱性が修正されました:ipv4において、RCUの猶予期間(grace period)が経過した後に”inet_opt”および”ireq_opt”を解放するように変更されました。”tcp_v4_syn_recv_sock()”は、”ireq->ireq_opt”をコピーすることなく、そのまま子ソケット(”newinet->inet_opt”)へ所有権を移します。この際、別のCPUが同じリクエストソケットに対する再送SYNを並行して処理し、”tcp_check_req()”からSYNACKを送信してしまう可能性があります。 “tcp_v4_send_synack()”および”inet_csk_route_req()”は”rcu_read_lock()”で保護された状態で”ireq->ireq_opt”を読み取りますが、その後の”ip_build_and_send_pkt()”や”ip_options_build()”において、”opt->optlen”が2回読み取られることになります。 なお、SYNACKタイマー自体は問題ではありません。タイマーはリクエストソケットへの参照を保持しており、子ソケットが解放される前に”inet_csk_reqsk_queue_drop()”が”timer_delete_sync()”を呼び出すためです。 コミット 079096f103fa (“tcp/dccp: install syn_recv requests into ehash table”) 以降、リクエストソケットはリスナーロックを保持せずに処理されるようになったため、SYNACKの構築中に子ソケットが解放されることを防ぐ手段がありません。TCPの子ソケットには”SOCK_RCU_FREE”が設定されておらず、”inet_sock_destruct()”が通常の”kfree()”を用いて”inet_opt”を解放してしまうため、”ip_options_build()”において解放済みメモリへのアクセス(use-after-free)が発生します。 同様の問題は、リクエストソケットの移行(”net.ipv4.tcp_migrate_req=1″が有効な場合、または”BPF_SK_REUSEPORT_SELECT_OR_MIGRATE”プログラムを使用している場合)においても存在します。
緩和策
- AlmaLinuxのブログ(https://almalinux.org/blog/2026-10-30-cve-2026-98432/)に緩和策があります。
- このバグは、IPv4オプションを含むTCP接続要求によってのみ発生します。通常の通信ではIPv4オプションはほとんど使用されないため、IPv4オプションを含む受信IPv4 TCPパケットを破棄することで、通常の接続に影響を与えることなくバグの発生を阻止できます。
- nftablesが使えるのであれば、下記のようなnftablesルールで緩和できます。
sudo nft -f - <<'EOF'
add table ip cve_2026_98432
delete table ip cve_2026_98432
table ip cve_2026_98432 {
chain prerouting {
type filter hook prerouting priority -300; policy accept;
meta l4proto tcp ip hdrlength > 5 counter drop
}
}
EOF
主なディストリビューションの対応方法
詳細は、各ディストリビューションの提供元にご確認ください
- Debian
- Red Hat Enterprise Linux/CentOS/Rocky Linux/Alma Linux
- Ubuntu
- SUSE/openSUSE
対処方法
各ディストリビューションの案内に従い、アップデートを行ってください。