Real-Fruit-Snacks/Deluge

GitHub: Real-Fruit-Snacks/Deluge

Nmap和RustScan输出的高级解析与格式化工具,提供彩色终端展示和多格式导出能力。

Stars: 1 | Forks: 0

Deluge ![Python](https://img.shields.io/badge/language-Python-3776AB.svg) ![Platform](https://img.shields.io/badge/platform-Linux%20%7C%20Windows%20%7C%20macOS-lightgrey) ![License](https://img.shields.io/badge/license-MIT-blue.svg) **Nmap 和 RustScan 输出的高级解析器和格式化工具。** 通过 Rich 和 Catppuccin Mocha 样式提供彩色终端报告。支持多格式导出(JSON、CSV、HTML、XML、TXT)。交互模式可自动检测 RustScan 管道输入,并生成并发定向 Nmap 扫描,配备实时进度条。
## 快速开始 ``` # pipx (推荐) pipx install git+https://github.com/Real-Fruit-Snacks/Deluge.git # 或标准 pip pip install git+https://github.com/Real-Fruit-Snacks/Deluge.git ``` ``` # 交互模式 (从 -sV 标志自动检测) rustscan -a 192.168.1.0/24 --ulimit 5000 | deluge -sV # 解析现有 Nmap XML 文件 deluge --file scan.xml # 导出到所有格式 rustscan -a targets.txt --ulimit 5000 | deluge -sV --export-format all ``` ## 功能 ### 交互模式 通过管道将 RustScan 输出与 Nmap 标志连接,Deluge 会为每个发现的端口生成定向 Nmap 扫描,并显示实时进度条。可配置的 worker 线程并行执行扫描,并在线程锁下合并结果。 ``` rustscan -a 10.0.0.1 --ulimit 5000 | deluge -A -T4 --threads 10 ``` ### 智能解析 通过工厂模式解析器注册表自动检测 Nmap XML、Nmap stdout 和 RustScan 输出格式。解析器在导入时自动注册,具有优先级顺序——第一个 `can_parse()` 返回 `True` 的解析器获胜。 ``` deluge --file scan.xml nmap -sV 192.168.1.1 -oX - | deluge ``` ### 多格式导出 从单次扫描生成 JSON、CSV、HTML、XML 和 TXT 报告。导出的文件保存在带时间戳的子目录中,以防止覆盖。 ``` deluge_exports/ scan_20260205_213245/ scan.json scan.csv scan.html scan.xml summary.txt ``` ### HackTricks 集成 对于每个发现的开放服务,Deluge 提供相关 HackTricks 枚举指南的直接链接,涵盖 40 多种服务,从 FTP 和 SSH 到 Redis 和 MongoDB。 ### Catppuccin 终端 UI 使用 Catppuccin Mocha 调色板的 Rich 驱动的表格、面板和进度条。彩色编码的端口、服务、操作系统检测、脚本结果和 traceroute 跃点。 ### 域名提取 自动从主机脚本和服务数据中提取域名、SSL 证书 CN/SAN、NetBIOS 名称和 AD 森林信息。 ### 安全检查 检测 Nmap 先决条件并提供特定操作系统的安装说明,对需要 root 权限的扫描发出权限警告,以及对 Nmap 标志进行输入验证。Rich 格式化的错误消息取代原始堆栈跟踪。 ### 操作系统和脚本输出 解析的操作系统检测结果显示匹配准确百分比。NSE 脚本输出按端口格式化,带有语法高亮。Traceroute 数据逐跃点渲染,包含 RTT 和主机名。 ## 架构 ``` deluge/ core/ engine.py # Scan orchestration, interactive mode, threading export.py # Multi-format export manager (thread-safe) models.py # Pydantic v2 data models utils.py # Prerequisite checks, privilege detection logger.py # Logging configuration parsers/ base.py # Abstract base parser (ABC) nmap_xml.py # Nmap XML parser (priority 1) nmap_stdout.py # Nmap stdout parser (priority 2) rustscan.py # RustScan output parser (priority 3) __init__.py # ParserFactory registry interface/ cli.py # Argument handling, mode detection formatter.py # Rich UI -- tables, panels, progress bars ``` 解析器工厂按优先级顺序尝试每个注册的解析器,直到有一个声明输入。所有解析器都生成共享的 `ScanResult` Pydantic 模型,该模型同时供 Rich 格式化程序和导出管理器使用。 | 层级 | 技术 | |-------|------------| | 语言 | Python 3.8+ | | 数据模型 | Pydantic v2 | | 终端 UI | Rich | | XML 解析 | lxml | | 主题 | Catppuccin Mocha | | 测试 | pytest | | 代码检查 | ruff | ## 命令参考 | 标志 | 描述 | 默认值 | |------|-------------|---------| | `--file ` | 解析现有扫描文件(`--file -` 用于强制 stdin) | -- | | `--threads ` | 交互模式中的并发 Nmap worker 数 | `3` | | `--export-format ` | `json csv html xml txt all` | -- | | `--export-dir ` | 导出目录(创建带时间戳的子目录) | `./deluge_exports` | | `--verbose`, `-v` | 启用调试日志 | `false` | | `--no-check` | 跳过先决条件和权限检查 | `false` | | `[nmap_args]` | Nmap 标志(例如 `-A`、`-sV`、`-T4`)——触发交互模式 | -- | ### 模式检测 | 条件 | 模式 | |-----------|------| | Stdin + Nmap 参数 | 交互模式(自动)| | Stdin + 无参数 | 简单解析 | | `--file ` | 文件解析 | | `--file -` | 强制简单 stdin 解析 | ### 退出码 | 代码 | 含义 | |------|---------| | `0` | 成功 | | `1` | 常规错误 | | `2` | 输入/解析错误 | | `3` | 导出错误 | | `4` | 缺少先决条件(未找到 Nmap)| ### 测试 ``` pytest # All tests pytest --cov=deluge # With coverage ruff check . # Lint (matches CI) ``` ## 平台支持 | 功能 | Linux | macOS | Windows | |------------|-------|-------|--------- | 文件解析 | 完整 | 完整 | 完整 | | 交互模式 | 完整 | 完整 | 完整 | | 多格式导出 | 完整 | 完整 | 完整 | | 彩色输出 | 完整 | 完整 | 完整(Windows Terminal)| | 权限检测 | `os.geteuid()` | `os.geteuid()` | Admin 检查 | ## 安全 通过 [SECURITY.md](SECURITY.md) 或 GitHub Security Advisories 报告漏洞。请勿就安全问题公开发布 issue。 Deluge 是一个**解析器和格式化工具**,而不是扫描器或利用工具。它**不会**: - 自行发现主机或端口 - 在没有用户提供的标志的情况下静默执行 Nmap 命令 - 生成载荷或利用漏洞 - 管理植入物或信标 ## 许可证 [MIT]( -- Copyright 2026 Real-Fruit-Snacks
标签:Catppuccin, HTML导出, JSON导出, Nmap, Python, Rich库, XML导出, 交互式扫描, 多格式导出, 安全规则引擎, 密码管理, 工具, 并发扫描, 插件系统, 数据泄露防护, 数据统计, 无后门, 端口扫描, 终端美化, 网络安全, 网络工具, 网络探测, 虚拟驱动器, 输出格式化, 进度条, 逆向工具, 隐私保护