WhoIsHalim/SPECTRE-Lite

GitHub: WhoIsHalim/SPECTRE-Lite

一个纯 Python 异步网络扫描器,内置协议感知 Banner 抓取、HTTP 标题检测和增量比较,无需外部依赖即可输出多格式报告。

Stars: 0 | Forks: 0

# SPECTRE-Lite **S**ervice & **P**ort **E**numeration with **C**overt **T**itle **R**econ **E**ngine ## 功能特点 - 纯 Python 异步扫描——无需外部工具 - 协议感知型 Banner 抓取(SSH、FTP、SMTP、Redis、HTTP……) - HTTP/HTTPS 标题提取,支持自动 SSL 绕过 - 重试逻辑:2 次重试(5 秒 → 10 秒)后才将主机标记为失效 - 增量扫描——检测自上次运行以来的变化(新增 / 关闭 / 变更端口) - 彩色终端输出,原子级按主机打印(无交错) - 报告导出为 TXT、JSON 和 HTML(深色主题) ## 运行环境 - Python 3.8+ - 无需外部二进制文件 安装依赖: ``` pip install -r requirements.txt ``` ## 输入文件 | 文件 | 描述 | |------|------| | `ip_ranges.txt` | 要扫描的 IP 或 CIDR 范围(每行一个) | | `ports.txt` | 要检查的端口(每行一个,逗号分隔,或范围如 `8080-8090`) | | `signatures.txt` | 用于匹配 Banner 和 HTTP 标题的关键字 | ## 使用方法 ``` python spectre.py ``` 启动后你将看到: ``` [?] Select scan mode: [1] Banner scan only — protocol-aware banner grabbing (fast) [2] HTTP Title only — grab page titles via HTTP/HTTPS [3] Full scan — banner + HTTP title + delta report [?] Concurrent workers: ``` ## 输出 所有报告保存在 `reports/` 文件夹中: | 文件 | 格式 | |------|------| | `spectre_.txt` | 人类可读的纯文本 | | `spectre_.json` | 机器可读的 JSON | | `spectre_.html` | 交互式深色主题 HTML 报告 | 增量比较存储在 `.spectre_last_scan.json` 中,每次运行后更新。 ## 增量报告 每次运行时,SPECTRE-Lite 会将结果与上一次扫描进行比较,并高亮显示: ``` + 10.0.0.5:8080 http Apache ← NEW x 10.0.0.3:22 ssh OpenSSH 7.4 ← CLOSED ~ 10.0.0.1:80 nginx 1.18 -> 1.24 ← CHANGED ``` *由 [WhoIsHalim](https://github.com/WhoIsHalim) 开发*
标签:banner抓取, Docker容器, Homebrew安装, HTTP标题识别, Python, 二进制发布, 占用监测, 变更检测, 基础架构审计, 增量扫描, 多格式报告, 多模态安全, 开源工具, 异步扫描, 插件系统, 攻击面发现, 数据统计, 无后门, 服务发现, 端口扫描, 网络安全, 网络审计, 计算机取证, 资产管理, 逆向工具, 重试机制, 隐私保护