SUDARSHANCHAUDHARI/ShadowSurface

GitHub: SUDARSHANCHAUDHARI/ShadowSurface

ShadowSurface是一款用于攻击面监控的防御性侦察工具。

Stars: 1 | Forks: 0

# 阴影表面 [![Python](https://img.shields.io/badge/Python-3.10%2B-blue)](#requirements) [![状态](https://img.shields.io/badge/status-MVP-green)](#status) [![安全](https://img.shields.io/badge/security-defensive%20lab-purple)](#safe-use) [![许可证:MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT) 攻击面监控工具。扫描域名、子域名、SSL证书、开放端口、暴露的管理路径和安全头,以显示单个域名或一组域的外部风险。 ## 概述 ShadowSurface 是一款防御性侦察工具,为您的域名构建外部攻击面图像。它枚举子域名,检查SSL证书的有效性和到期日期,扫描已知端口,标记暴露的管理路径和开发端点,并审计安全头。输出包括优先级排序的风险评分清单以及分析师交接报告。 当前的最小可行产品是一个 Python CLI。在 `apps/` 目录下搭建了 FastAPI + React 网页仪表板,用于未来的开发。 ## 功能 - 从种子域名枚举子域名 - SSL证书检查(有效性、到期日期、发行者) - 常见端口扫描 - 暴露的管理和开发路径检测 - 安全头审计 - 每个发现和每个资产的风险评分 - 输出 JSON 发现、风险摘要、Markdown 报告和分类交接 ## 要求 - Python 3.10 或更高版本 - Linux、macOS 或 Windows - 无第三方 Python 包(仅标准库) - 可选:Docker 用于演示容器 - 网络访问用于实时扫描(离线模式可用) ## 安装 ``` git clone https://github.com/SUDARSHANCHAUDHARI/ShadowSurface.git cd ShadowSurface pip install . ``` 这将注册 `shadow-surface` CLI 命令。 要运行而不安装: ``` python3 main.py --help ``` ## 使用 审计包含的固定域名: ``` python3 main.py --fixture data/samples/domain-fixture.json --out-dir data/reports ``` 在 `data/reports/` 中生成的输出: - `findings.json` — 所有检测到的表面发现 - `subdomains.json` — 枚举的子域名 - `ssl.json` — SSL证书检查结果 - `ports.json` — 端口扫描结果 - `headers.json` — 安全头审计 - `summary.json` — 风险评分和严重性分解 - `report.md` — Markdown 攻击面报告 - `triage.md` — 分析师分类清单 ## 项目结构 ``` ShadowSurface/ ├── apps/ │ ├── api/ FastAPI app scaffold (planned) │ └── web/ React/Next.js dashboard scaffold (planned) ├── data/ │ ├── samples/ Safe sample domain fixtures │ └── reports/ Example generated output ├── docker/ Dockerfile + compose support ├── docs/ Architecture, security notes, demo ├── scripts/ Setup, seed, run helpers ├── tests/ Unit and integration tests ├── main.py CLI entrypoint ├── pyproject.toml Package metadata └── LICENSE ``` ## 测试 ``` python3 -m unittest discover -s tests -p 'test_*.py' ``` ## Docker 演示 ``` docker compose run --rm api ``` ## 安全使用 该项目是防御性和分析性的。仅用于您拥有或明确获得扫描许可的域名、子域名和IP范围。未经授权的扫描在许多司法管辖区是非法的。 ## 状态 正在工作的 Python CLI MVP。网页仪表板框架已搭建,但尚未实现。 ## 路线图 - 通过被动DNS源进行实时子域名枚举 - 每个扫描配置文件可配置的端口列表 - 定期执行的扫描和增量警报 - 网页仪表板用于资产清单和趋势 - GitHub 发布 `v0.1.0-mvp` ## 许可证 在 [MIT 许可证](LICENSE) 下发布。您有权使用、修改和分发此软件,并注明出处。 ## 作者 **Sudarshan Chaudhari** — [SudarshanTechLabs](https://github.com/SUDARSHANCHAUDHARI) 曼谷,泰国 查询:在 [GitHub](https://github.com/SUDARSHANCHAUDHARI/ShadowSurface/issues) 上提交问题。
标签:MVP, Python开发, SSL证书检查, Web仪表盘, 反取证, 子域名枚举, 安全头部审计, 安全报告, 安全评估, 攻击面监测, 数据统计, 文件查看, 端口扫描, 系统安全, 网络安全, 请求拦截, 逆向工具, 防御性侦察, 隐私保护, 风险分析, 风险评分