Skip to content
KitploitKITPLOIT
ツールエクスプロイトブログ
Log in
提出
ツールエクスプロイトブログ
提出

ハッキング、侵入テスト、サイバーセキュリティツールをあなたのセキュリティアーセナルに!

Kitploitはハッキング、サイバーセキュリティ、ペネトレーションテストのツールディレクトリです。最新のプロジェクトアップデートを見つけて、脆弱性の発見、システム分析、テストの自動化、セキュリティの強化を行いましょう。

フィードお問い合わせプライバシー© 2026 Kitploit

ツールディレクトリ

カテゴリ

すべてのカテゴリを見る
Loading categories
cve-2026-98432 — IPv4 TCPのinet_opt/ireq_opt use-after-freeに対する緩和ツールキット: 露出監査、nftによるIPオプション付きSYNのドロップルール、tcpdumpによる検出、およびELカーネル向けkpatch/livepatchビルダー。 | Kitploit
ツール/GitHubGitHub/davetha/cve-2026-98432
防御ツールパケットスニッフィングと分析脆弱性分析構成監査ネットワークセキュリティインシデントレスポンス
GitHubdavetha/cve-2026-98432

cve-2026-98432

IPv4 TCPのinet_opt/ireq_opt use-after-freeに対する緩和ツールキット: 露出監査、nftによるIPオプション付きSYNのドロップルール、tcpdumpによる検出、およびELカーネル向けkpatch/livepatchビルダー。

リポジトリを見る
1126日前未レビュー

人気

すべて見る →

コミュニティで最も使われているツールを見つけましょう。

すべてのツールを探索

ツールコレクションを閲覧

すべてのツールを見る →
共有

CVE-2026-98432 緩和ツールキット

IPv4 TCP の inet_opt/ireq_opt における use-after-free(上流の修正 e3f33b0a、inet_sock_destruct() および tcp_v4_reqsk_destructor() 内の kfree → kfree_rcu)。 トリガー: IPv4 オプション(ihl > 5)を含むクライアント SYN — オプションがなければ、競合対象のオブジェクト ireq_opt は決して割り当てられない。主張されているリモート root エクスプロイトには、さらに MPTCP リスナーが必要である。

ファイル

ファイルroot が必要目的
cve-audit.shいいえ読み取り専用の露出状況およびパッチ適用可否レポート
cve-mitigate.sh適用/元に戻すIP オプション付き SYN を nft でドロップ、任意で MPTCP を無効化
nft-rules.txt—ルールセット単体(nft -f nft-rules.txt)
cve-detect.shキャプチャモードエクスプロイトのパケット形状を検知する tcpdump センサー
kpatch-el-build.shビルド/インストールEL 系向けの検証済み kpatch/livepatch ビルダー
klp-handcraft-build.shビルド/ロードkpatch-build が実行できない IBT カーネル(EL10)向けの手書き klp モジュール
patches/CVE-2026-98432.patch—上流の修正、kpatch-build 用に準備済み
tests/run-tests.shいいえハーネス(netns ルールセットのロード + スタブ化ビルダーの e2e)

インシデント対応クイックスタート

./cve-audit.sh                                # where do I stand?
./cve-mitigate.sh apply --with-mptcp-off      # closes trigger + claimed root path
./cve-detect.sh count 30                      # anyone probing with IP options?
sudo ./kpatch-el-build.sh --name CVE-2026-98432 \
     --expect inet_sock_destruct,tcp_v4_reqsk_destructor \
     [--sign priv.pem cert.pem] [--install] \
     patches/CVE-2026-98432.patch
# verify: cat /sys/kernel/livepatch/CVE-2026-98432/enabled  -> 1
./cve-mitigate.sh status                      # keep until 100% patched, then:
./cve-mitigate.sh undo

EL マトリクス

ターゲット備考
EL7 (3.10)脆弱ではない(トリガーコードは 4.4 で登場)。ビルダーは他のパッチ向けには引き続き動作する
EL7h/EL8 (4.18)脆弱。kernel-debuginfo が /usr/src/debug/kernel-*/linux-* を提供。kpatch-build は EPEL から
EL9 (5.14)脆弱。カーネルは gcc-toolset でビルドされており、ビルダーは一致する /opt/rh/gcc-toolset-* を自動的に先頭に付加する
EL10 (6.12)IBT: kpatch-build 0.9.11 は CONFIG_X86_KERNEL_IBT=y のカーネルを拒否する(dynup/kpatch#1320)。klp-handcraft-build.sh を使用すること。Secure Boot/lockdown 下ではモジュール署名が強制される
CloudLinux 8/9/10ディストロ ID が kpatch-build のサポートリストにないため、ビルダーは常に -s/-c/-v を明示的に渡す。debuginfo は rpm -qf /boot/vmlinuz-$(uname -r) に一致する AlmaLinux/CentOS の kernel-debuginfo から取得する

RHEL での debuginfo にはリポジトリを有効化する必要がある。例: dnf --enablerepo='*debug*' debuginfo-install -y $(rpm -qf /boot/vmlinuz-$(uname -r)) (未請求のホストでは subscription-manager repos --enable=rhel-9-appstream-rpms など)。

何かをロードする前にビルダーが検証する内容

  1. 実行中の設定に CONFIG_LIVEPATCH=y と CONFIG_KALLSYMS=y があること。
  2. ターゲットカーネル == 実行中カーネル(vermagic の壁)、kernel-devel/debuginfo/vmlinux が存在すること。
  3. パッチが順方向に適用されること。もし逆方向に適用された場合は、カーネルに すでに修正が含まれていることが通知される(kpatch は後で「no functional changes」で失敗する)。
  4. コンパイラがカーネルのビルド gcc と一致すること(.comment レベルのチェックは kpatch-build に委譲され、ツールセットの検索はここで行われる)。
  5. ビルド後: vermagic、および変更された関数の厳格な双方向許可リスト (--expect)— 想定外の 3 つ目の変更オブジェクトはハードフェイルとなる。
  6. 任意で、あなたの鍵ペアによる sign-file + modinfo sig_type の再チェック。 Secure Boot 用に MOK 経由で証明書を登録すること。
  7. --install は /var/lib/kpatch/$(uname -r)/ に配置し、 kpatch/insmod 経由でロードし、再起動後の永続化のために kpatch.service を有効化する。

カナリアランブック(フリート展開前にこれを行うこと)

  1. カナリア VM を用意し、フリートと同じ uname -r にする。
  2. ./kpatch-el-build.sh ... --install を実行し、 /sys/kernel/livepatch/<name>/enabled == 1 を確認する。
  3. レースハンマー: 2 台目のマシンから hping3 -S -p <port> --tcp-opts ... で リスナーにフラッドをかけながら、カナリア上で net.ipv4.tcp_migrate_req=1 を切り替える。 ip_options_build() 内に人工的な udelay() を仕込んだ KASAN カーネル版は、 パッチなしで UAF を再現し、パッチありでは沈黙するはずである。
  4. uname -r が変わっていないこと(livepatch はこれを上げない)、kpatch list、 dmesg -w で taint と klp 遷移の停滞を監視する (/sys/kernel/livepatch/<name>/transition が 0 まで減ること)。
  5. フリートを展開し、100% カバレッジの 24〜48 時間後に nft ルールを剥がす。
  6. いずれにせよ次のメンテナンスウィンドウでベンダーカーネルに再起動すること — livepatch はカーネルのバージョンアップをまたぐとひどく積み重なる。

ステータス / 正直なところ

ハーネス: AlmaLinux 10.2 VM(カーネル 6.12.0-211.64.1.el10_2)上ですべてのチェックがパスする。 実際の nft ルールセットが新しい netns 内でロードされ一覧表示される。pcap フィルタは 稼働中の tcpdump に対してコンパイルされる。ビルダーパイプラインは、実際の .ko フィクスチャと 注入されたシンボルフィードを用いて、スタブ化された kpatch-build に対してエンドツーエンドで実行される。

その EL10 VM 上で実際に検証済み:

  • klp-handcraft-build.sh --load がライブパッチをビルドして有効化した: /sys/kernel/livepatch/klp_CVE_2026_98432/enabled=1、transition は drain 済み、 sysfs には inet_sock_destruct,1 + tcp_v4_reqsk_destructor,1 が表示され、通常の TCP (HTTP 200) は影響を受けなかった。署名なしの .ko はカーネルを taint する; Secure Boot lockdown では拒否される (VM は署名なしで実行された)。
  • 実際の kpatch-build (dynup 0.9.11、ソースからビルド) は EL10 上で "kernel option CONFIG_X86_KERNEL_IBT not supported" によりハードフェイルする — ビルダーは これを事前チェックし、handcraft ルートを指し示すようになった。実際のバイナリ差分による kpatch-build 実行は EL8/EL9 では未検証のままである。
  • 緩和策は稼働中: ネットワーク上の 20 個の scapy オプション付き SYN が ガードルールによってカウントされドロップされた; 3 個の通常 SYN は通過し、ssh は影響を受けなかった。
  • 現場での発見: EL10 6.12.0-211 では、IP オプション付きの細工された SYN は nft の prerouting raw フック (-300) に到達するが、INPUT フックには決して到達しない (オープンポート、lo、クリーンな netns のいずれでも再現; kfree_skb tracepoint イベントは 発生しないが、SELinux が perf/kprobes をブロックし、tcpdump も何もキャプチャしなかったため、 正確なドロップ関数は未解明のまま)。したがって緩和チェーンは prerouting priority raw にフックし、これがそれらを観測してドロップする; 知人のルールが prerouting priority -310 で機能するのも同じ理由である。 インシデントで信頼する前に、EL カナリア上でハッピーパスを一度実行すること。
ツールをダウンロード