JohannesLks/CVE-2026-23398

GitHub: JohannesLks/CVE-2026-23398

针对Linux内核icmp_tag_validation()函数的空指针解引用漏洞的概念验证工具,可发送特制ICMP数据包导致内核崩溃。

Stars: 0 | Forks: 0

# CVE-2026-23398 Linux Kernel `icmp_tag_validation()` 空指针解引用(远程拒绝服务) ## 描述 `net/ipv4/icmp.c` 中的 `icmp_tag_validation()` 函数在解引用 `inet_protos[proto]` 时未进行 NULL 检查。远程攻击者可以发送一个精心构造的带有未注册内部协议号的 ICMP 片段必需(Fragmentation Needed)数据包,从而在内核 softirq 上下文中导致内核崩溃。 受影响版本:Linux kernel 614aefe56af8(主线) / d938dd5a0ad7(stable 6.12)之前的版本 ## 使用方法 ``` sudo python3 poc.py --target # single packet, proto 253 sudo python3 poc.py --target --proto 252 # alternate unregistered proto sudo python3 poc.py --target --count 5 # repeat ``` ## 需求条件 - 与目标的网络层3邻接关系(支持伪造源IP) - 目标:`net.ipv4.ip_no_pmtu_disc = 3`(非默认值;需要此设置才能到达 `icmp_tag_validation()`) - 攻击者:root 权限、Python 3、Scapy ## 参考资料 - https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?id=d938dd5a0ad780c891ea3bc94cae7405f11e618a - https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=614aefe56af8 ## 法律声明 本项目基于 GNU GPLv3 发布。 本项目仅供防御性安全研究、教育和授权测试使用。未经所有者明确许可,请勿将此代码用于任何系统或服务。 未经授权的使用可能违反适用法律。作者不允许对第三方系统进行测试,且不对任何滥用行为负责。 请参阅 LICENSE 文件了解保修和责任条款。
标签:0day挖掘, CVE-2026-23398, C语言漏洞, DoS攻击, ICMP协议, Linux内核漏洞, NULL指针解引用, Python安全工具, Scapy, 内核安全, 内核提权, 安全渗透, 漏洞 Poc, 网络协议栈漏洞, 网络攻防, 远程拒绝服务, 配置错误