danindiana/cve-2026-32746-mitigation
GitHub: danindiana/cve-2026-32746-mitigation
针对假设性漏洞 CVE-2026-32746 的教育型缓解工具,提供多防火墙后端支持和原子回滚能力。
Stars: 0 | Forks: 0
# CVE-2026-32746:高级 Linux 网络缓解工具
[](README.md)
[](README.md)
[](LICENSE)
## 🚨 技术免责声明
**CVE-2026-32746 是一个假设性的漏洞,仅用于教育演示。**
该工具旨在应对“完美风暴”场景:一个非内存安全的 Telnet daemon (`telnetd`) 结合权限提升中的竞态条件,导致远程 root 指令指针 (IP) 劫持。
## 🛠 功能特性 (v3.1 - 生产级)
该工具已发展为一个模块化安全框架,具备以下能力:
- **🔄 原子回滚系统**:
- **执行前状态捕获**:在任何修复之前,自动将当前系统状态(服务 & 防火墙规则)序列化为 JSON。
- **一键还原**:如果发生冲突,使用 `--rollback` 将系统恢复到原始状态。
- **🛡️ 多防火墙策略模式**:
- **异构支持**:自动检测并支持 **UFW、firewalld、nftables 和 iptables**。
- **🧱 纵深防御修复**:
- **服务屏蔽**:使用 `systemctl mask` 防止依赖项意外重启服务。
- **端口审计**:通过 `ss` 和 `netstat` 进行实时监听端口验证。
## 📐 系统架构
### 模块化组件设计
该工具采用策略模式 (Strategy pattern) 来处理异构的 Linux 环境。
```
classDiagram
class MitigationTool {
+args
+run() int
}
class StateManager {
+save_state()
+rollback()
}
class FirewallManager {
+backend: FirewallBackend
+block_port(port)
}
class FirewallBackend {
<>
+is_available() bool
+is_active() bool
+block_port(port)
}
MitigationTool *-- StateManager
MitigationTool *-- FirewallManager
FirewallManager o-- FirewallBackend
FirewallBackend <|-- UFWBackend
FirewallBackend <|-- FirewalldBackend
FirewallBackend <|-- IptablesBackend
FirewallBackend <|-- NftablesBackend
```
### 修复工作流
以下序列描述了原子化的“先捕获后修复”逻辑:
```
sequenceDiagram
participant User
participant Tool as MitigationTool
participant SM as StateManager
participant FM as FirewallManager
participant SV as ServiceManager
User->>Tool: --apply-fixes
Tool->>SM: save_state(POTENTIAL_SERVICES, firewall, port)
activate SM
SM->>SM: Capture systemd states
SM->>SM: Save to .cve_2026_32746_state.json
SM-->>Tool: State Captured
deactivate SM
Tool->>SV: remediate(active_services)
SV->>SV: stop / disable / mask
Tool->>FM: block_port(23)
FM->>FM: Apply Firewall Strategy (UFW/Firewalld/etc)
Tool-->>User: Success (Exit 0)
```
## 📋 前置条件
- Python 3.10+
- Root 权限 (`sudo`)
- Linux (建议支持 Systemd)
## 🚀 用法
### 1. 审计与修复
```
sudo ./telnet_mitigation_tool.py --apply-fixes
```
### 2. 回滚更改
从捕获的快照中即时恢复系统状态。
```
sudo ./telnet_mitigation_tool.py --rollback
```
### 3. 模拟回滚 (Dry-Run)
精确预览回滚将执行的操作。
```
sudo ./telnet_mitigation_tool.py --rollback --dry-run
```
## 🏗 项目结构
- `telnet_mitigation_tool.py`:核心模块化执行引擎。
- `test_v3_logic.py`:支持模块化防火墙后端的单元测试套件。
- `CHANGELOG.md`:历史版本记录。
- `.cve_2026_32746_state.json`:本地状态存储(在修复过程中创建)。
## ⚖ 许可证
本项目采用 MIT 许可证授权 - 详情请参阅 LICENSE 文件。
标签:CISA项目, CVE模拟, firewalld, iptables, nftables, PE 加载器, Python, Race Condition, Shell脚本, systemd, Telnet安全, UFW, Web报告查看器, 内存安全, 协议分析, 原子回滚, 无后门, 服务屏蔽, 权限提升, 漏洞缓解, 私有化部署, 端口审计, 策略模式, 系统加固, 纵深防御, 编程工具, 远程代码执行, 防御规避, 防火墙管理