Skip to content
KitploitKITPLOIT
工具漏洞利用博客
Log in
提交
工具漏洞利用博客
提交

黑客、渗透测试和网络安全工具,武装您的安全武器库!

Kitploit 是一个黑客、网络安全和渗透测试工具的目录。发现最新的项目更新,查找漏洞、分析系统、自动化测试并加强你的安全。

订阅源联系隐私© 2026 Kitploit

工具目录

分类

查看所有分类
Loading categories
工具/GitHubGitHub/jamilbk/drop-ipv4-opt
防御工具数据包嗅探与分析漏洞分析网络安全
GitHubjamilbk/drop-ipv4-opt

drop-ipv4-opt

XDP/eBPF 程序,在接口处丢弃携带 IP 选项(IHL > 5)的 IPv4 数据包,以缓解 CVE-2026-98432 TCP 握手释放后使用漏洞。

查看仓库
2113天前尚未审核

最受欢迎

查看全部 →

发现我们社区最常用的工具。

探索所有工具

浏览我们的工具集合

查看所有工具 →
分享

drop-ipv4-opt

一个用于缓解 CVE-2026-98432 的小型 XDP 程序,该漏洞是内核在处理 IPv4 选项的 TCP 握手时出现的释放后使用(use-after-free)问题。在大多数主机上,该缺陷只能由携带 IP 选项的入站 SYN 触发(参见下方的 NetLabel/CIPSO 例外情况),因此本程序会在带有选项的 IPv4 数据包被传递到内核网络栈之前将其丢弃。

当数据包的 IHL(首部长度)字段大于 5 时,即表示该数据包带有 IP 选项,这意味着 IPv4 首部长度超过 20 字节。

[!WARNING] 这可能无法保护使用 NetLabel/CIPSO 的主机(SELinux 或 Smack 配置了 CIPSOV4 映射)。在这些主机上,内核可以自行附加 IP 选项,因此该缺陷可能 通过普通 SYN 触发。在这些环境中,使用已修补的内核是更可靠的修复方式。 netlabelctl map list 可帮助判断主机是否使用 CIPSO:类型为 CIPSOV4 的条目表明其使用了 CIPSO。

功能说明

数据包动作
带选项的 IPv4(IHL > 5)XDP_DROP
不带选项的 IPv4XDP_PASS
其他任何内容(IPv6、ARP 等)XDP_PASS
截断或格式错误的首部XDP_PASS

VLAN 标记的帧也会被处理:程序在检查 IPv4 之前会跳过最多两个 VLAN 标签(802.1Q 和 802.1ad/QinQ)。带有两个以上标签的帧会被直接放行。

环境要求

在 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。

下载工具