acidboonrs/cve-2025-26466-openssh-poc
GitHub: acidboonrs/cve-2025-26466-openssh-poc
该工具是针对 OpenSSH CVE-2025-26466 预认证拒绝服务漏洞的 Python PoC,用于在授权环境下复现和验证该漏洞的 DoS 影响。
Stars: 0 | Forks: 0
# CVE-2025-26466 OpenSSH SSH2_MSG_PING DoS PoC
## 漏洞描述
CVE-2025-26466 是 OpenSSH 中的一个预认证拒绝服务(DoS)漏洞,它允许在 Key Exchange 完成之前使 SSH 服务器过载。
### 技术细节
- **受影响版本:** OpenSSH 9.9p2 之前的版本
- **类型:** 预认证 DoS / 内存泄漏
- **利用方式:** SSH2_MSG_PING 数据包在加密连接建立之前就会被处理
服务器在初始握手阶段就会接受 SSH2_MSG_PING 数据包(Message Type 192),而无需建立经过认证的连接。这会导致:
- 内存泄漏
- CPU 过载
- 拒绝服务 (DoS)
## 安装说明
### 前置条件
- Python 3.6+
- 带有 Python3 的 Linux/macOS/Windows 系统
```
# 克隆仓库
git clone https://github.com/acidboonrs/cve-2025-26466-openssh-poc.git
cd cve-2025-26466-openssh-poc
# 执行权限(可选)
chmod +x poc.py
```
无需任何额外的依赖(仅使用标准库)。
## 使用方法
### 基础示例
```
python3 poc.py 192.168.1.10
```
### 使用自定义参数
```
python3 poc.py [port] [threads] [pings]
```
**参数说明:**
- `<目标主机>` - 目标 IP 或主机名(必填)
- `[端口]` - SSH 端口(默认:22)
- `[线程数]` - 并行连接的数量(默认:10)
- `[Ping次数]` - 每个连接发送的 PING 数量(默认:500)
### 示例
```
# 默认:localhost,端口 22,10 个 Threads,500 个 PING
python3 poc.py localhost
# 增加负载:50 个 Threads,1000 个 PING
python3 poc.py 192.168.1.10 22 50 1000
# Custom Port
python3 poc.py example.com 2222 20 800
```
## 原理说明
1. 建立到 SSH 服务器的 TCP 连接
2. 交换 SSH Banner(客户端/服务器)
3. 发送 SSH_MSG_KEXINIT(Key Exchange 初始化)
4. **关键点:** 无需等待服务器响应,立即缓冲并发送 SSH2_MSG_PING 数据包
5. 多线程允许并行连接以制造更高的负载
6. 服务器被置于不稳定状态 → DoS
## 修复方案
- **升级到 OpenSSH 9.9p2 或更新版本**
- 针对 SSH 端口实施网络过滤
- 在防火墙层面实施 Rate-Limiting
- 监控异常的 SSH 连接模式
## 更多信息
- [CVE-2025-26466 详情](https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2025-26466)
- [博客文章 (德语)](https://blog.voidcall.dev/posts/cve-2025-26466-openssh-ping-dos/)
- [OpenSSH 安全公告](https://www.openssh.com/)
## 开源许可
MIT License - 详情请参阅 [LICENSE](LICENSE)
## 负责任的漏洞披露
发布此 PoC 的原因在于:
- 该 CVE 已被公开记录
- 相关补丁已发布
- 完整的漏洞细节已公开
**请仅在以下情况使用此代码:**
- 用于教育目的
- 在您自己的系统上进行测试
- 获得系统所有者的明确书面授权
- 在授权的安全审计 / 渗透测试中使用
**未经授权的 DoS 攻击是违法行为!**
**作者:** Vollassiliz (voidcall.dev)
**创建日期:** 2025-01-29
标签:Maven, PoC, Python, 拒绝服务攻击, 无后门, 暴力破解, 漏洞验证, 网络安全, 逆向工具, 隐私保护