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

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

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

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

ツールディレクトリ

カテゴリ

すべてのカテゴリを見る
Loading categories
drop-ipv4-opt — IPv4オプション(IHL > 5)を含むIPv4パケットをインターフェースでドロップし、CVE-2026-98432のTCPハンドシェイクにおけるuse-after-freeを緩和するXDP/eBPFプログラム。 | Kitploit
ツール/GitHubGitHub/jamilbk/drop-ipv4-opt
防御ツールパケットスニッフィングと分析脆弱性分析ネットワークセキュリティ
GitHubjamilbk/drop-ipv4-opt

drop-ipv4-opt

IPv4オプション(IHL > 5)を含むIPv4パケットをインターフェースでドロップし、CVE-2026-98432のTCPハンドシェイクにおけるuse-after-freeを緩和するXDP/eBPFプログラム。

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

人気

すべて見る →

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

すべてのツールを探索

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

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

drop-ipv4-opt

カーネルの TCP ハンドシェイクにおける IPv4 オプション処理に存在する use-after-free である CVE-2026-98432 を緩和するための小さな XDP プログラムです。ほとんどのホストでは、このバグは IP オプションを含む受信 SYN によってのみトリガーされます(以下の NetLabel/CIPSO の例外を参照)。そのため、このプログラムはオプション付きの IPv4 パケットを、ネットワークスタックを介してカーネルに渡される前にドロップします。

パケットの IHL(ヘッダ長)フィールドが 5 より大きい場合、つまり IPv4 ヘッダが 20 バイトより長い場合、そのパケットは IP オプションを持っています。

[!WARNING] これは NetLabel/CIPSO を使用するホストを保護できない可能性があります(CIPSOV4 マッピングを使用する SELinux または Smack)。そのようなホストではカーネル自身が IP オプションを付加できるため、通常の SYN でもこのバグに到達できる可能性があります。そのような環境では、パッチ適用済みのカーネルを使用する方が信頼性の高い修正方法です。 netlabelctl map list は、ホストが CIPSO を使用しているかどうかの判断に役立ちます。CIPSOV4 タイプのエントリがあれば、使用している可能性が高いです。

動作内容

パケットアクション
オプション付き IPv4 (IHL > 5)XDP_DROP
オプションなし IPv4XDP_PASS
それ以外 (IPv6、ARP など)XDP_PASS
切り詰められた / 不正なヘッダXDP_PASS

VLAN タグ付きフレームにも対応しています。このプログラムは IPv4 かどうかを確認する前に、最大 2 つの VLAN タグ(802.1Q および 802.1ad/QinQ)をスキップします。3 つ以上のタグを持つフレームはそのまま通過させます。

要件

Linux ホスト上で:

  • clang および llvm
  • libbpf-dev(bpf/bpf_helpers.h 用)
  • カーネルヘッダ(linux-headers-$(uname -r) または linux-libc-dev)
  • iproute2(ip link 用)、およびオプションで bpftool

Debian / Ubuntu:

sudo apt install clang llvm libbpf-dev linux-libc-dev iproute2 bpftool

Fedora:

sudo dnf install clang llvm libbpf-devel kernel-headers iproute bpftool

ビルド

make

これにより drop_ipv4_opt.o が生成されます。

インターフェースへのアタッチ

eth0 を実際のインターフェース名に置き換えてください(ip link で確認できます)。

最も高速なネイティブ(ドライバ)モード:

sudo ip link set dev eth0 xdpdrv obj drop_ipv4_opt.o sec xdp

どのインターフェースでも動作しますが低速な汎用(SKB)モード:

sudo ip link set dev eth0 xdpgeneric obj drop_ipv4_opt.o sec xdp

カーネルにモードを選択させる(サポートされていればネイティブ、そうでなければ汎用):

sudo ip link set dev eth0 xdp obj drop_ipv4_opt.o sec xdp

アタッチされていることの確認

ip link show dev eth0          # look for "xdp" / "prog/xdp id N"
sudo bpftool net show dev eth0

デタッチ

sudo ip link set dev eth0 xdp off

特定のモードでアタッチした場合は、xdpdrv off または xdpgeneric off を使用してください。

テスト

別のホストから、IP オプション付きのパケットを送信します。たとえば Record Route オプションを使用します:

ping -R <target-ip>

プログラムがアタッチされている場合、これらの ping には応答がありません。通常の ping <target-ip> は引き続き動作します。

ライセンス

MIT。LICENSE を参照してください。

ツールをダウンロード