therealcoiffeur/GhostReconRev
GitHub: therealcoiffeur/GhostReconRev
一款面向安全评估的侦察流水线工具,将域名发现、资产丰富、DAST 漏洞扫描与 AI 报告增强整合在统一的 Web UI 中。
Stars: 1 | Forks: 0
# GhostReconRev
GhostReconRev 是一个用于安全评估的侦察 UI。它运行一个确定性的
流水线,用于基于范围种子的域名发现和丰富,通过
溯源存储证据,并实时流式传输运行进度。
## Web API 映射图
```
flowchart LR
client[Operator / Browser] --> ws[FastAPI Web Server]
ws --> home[Runs and History]
ws --> job[Job timeline and snapshot APIs]
ws --> targets[Targets and open-port actions]
ws --> dast[DAST workspace and Acunetix APIs]
ws --> evidence[Evidences and downloads]
ws --> report[Report view and generation]
job --> sse[SSE event stream]
```
## 流水线组件交互图
```
flowchart LR
operator[Operator] --> runs["POST /runs
root_domain + csrf_token"] runs --> scope[Scope policy] runs --> orch[Orchestrator] orch --> recon[Recon collectors and enrichment] recon --> artifacts[Collector artifacts] artifacts --> ingest[Ingestion and scope gate] ingest --> db[(SQLite DB)] db --> ui[UI pages] ui --> targets[Targets page] ui --> dastpage[DAST page] ui --> report[Report page] targets --> dastsvc[Dast discovery service] targets --> acworkflow[Acunetix workflow service] dastpage --> acworkflow dastsvc --> localdast[Local DAST binaries] dastsvc -->|health and tools discovery| mcpserver[Acunetix MCP server] acworkflow -->|workflow calls
optional Bearer auth| mcpserver mcpserver --> acunetixapi[Acunetix Scanner API] acworkflow --> dasttask[DAST stage and task state] acworkflow --> liveevidence[Recurring vulnerability evidence] acworkflow --> reports[Acunetix reports] dasttask --> db liveevidence --> db reports --> db report -. optional enrichment .-> openai[OpenAI Responses API] ``` ## Docker 集成拓扑图 ``` flowchart LR browser[Operator browser] -->|http://127.0.0.1:8000| ghost[ghostreconrev-app] subgraph dockerhost["Docker host"] subgraph dreamland["Shared bridge network: dreamland"] ghost mcp end end ghost -->|HTTP MCP calls
optional Bearer auth| mcp mcp -->|https://:3443/api/v1| acunetix[Acunetix Scanner API]
```
## 前置条件
将以下二进制文件安装在 `PATH` 中,或放置在 `tools/bin/` 目录下:
- `amass`
- `assetfinder`
- `subfinder`
- `gau`
- `host`
- `dnsx`
- `naabu`
- `nerva`
- `httpx`
如果缺少某个收集器或其运行失败,其任务将被标记为 `FAILED`,并且运行可能
以 `FAILED` 状态结束。
要进行 Acunetix 集成,请确保满足以下条件。
- 运行一个可达的 [`MCPwnetix`](https://github.com/therealcoiffeur/MCPwnetix)
服务器。
- 将 `ACUNETIX_MCP_URL` 和 `ACUNETIX_MCP_HEALTH_URL` 指向该服务器。
在启动前可能需要设置以下环境变量。
- 如果 `APP_REQUIRE_AUTH=true`,则需要设置 `APP_AUTH_USERNAME` 和 `APP_AUTH_PASSWORD`。
- 仅在您使用报告丰富功能时需要 `OPENAI_API_KEY`。
- 仅在 `TELEGRAM_TIMELINE_ENABLED=true` 时需要 `TELEGRAM_BOT_TOKEN` 和 `TELEGRAM_CHAT_ID`。
- 如果您在 `127.0.0.1`、`localhost`、`::1`、`ghostreconrev-app` 或 `ghostreconrev` 以外的主机名或 IP 上公开此应用,则需要设置 `ALLOWED_HOSTS`。
- 如果您启用可选的 Acunetix 集成,则需要设置 `ACUNETIX_MCP_URL` 和 `ACUNETIX_MCP_HEALTH_URL`。
对于容器化运行,请确保按照下文所述准备好工具。
- 在执行 `docker compose build` 之前,将可执行的收集器二进制文件放置在 `tools/bin/` 中。
- 至少,如果您想要完整的流水线功能,请提供:
- `amass`
- `assetfinder`
- `subfinder`
- `gau`
- `dnsx`
- `naabu`
- `httpx`
- 如果您想要可选的主动服务分析任务,还需添加 `nerva`。
- 镜像已提供 `host` 和 `libpcap.so`(某些工具需要)。
## Docker
构建并启动技术栈。
```
cp .env.example .env
docker compose build --no-cache
docker compose up
```
在以下地址打开 UI。
`http://127.0.0.1:8000`
对于连接到 `ghostreconrev-net` 的另一个容器,请使用以下
地址。
## DAST 工作流说明
从目标手动启动 Acunetix 遵循以下流程。
1. 打开 `Targets`。
2. 打开主机的 `Open Ports` 模态框。
3. 点击相应端口旁的 `dast`。
4. 在 DAST 模态框中选择 `Acunetix`。
当启动扫描时,GhostReconRev 的行为如下。
- 如果需要,将创建一个 DAST 阶段和任务。
- 已完成的作业可以重新打开,状态变为 `RERUNNING`。
- 工作流轮询驱动 DAST 任务状态。
- 在运行期间会反复拉取漏洞内容并将其存储为
证据。
- 如果扫描未在 4 小时内完成,工作流将失败。
DAST 页面支持以下操作。
- 实时工作流跟踪。
- 下载已完成工作流的 Acunetix 报告。
- 导入外部 `scan_id`,以便在流水线外部启动的扫描所获取的漏洞内容依然可以附加到此作业中。
## 文档
- [SECURITY.md](SECURITY.md) 说明了漏洞报告和部署强化。
- [docs/ARCHITECTURE.md](docs/ARCHITECTURE.md) 提供了执行和数据流的概述。
root_domain + csrf_token"] runs --> scope[Scope policy] runs --> orch[Orchestrator] orch --> recon[Recon collectors and enrichment] recon --> artifacts[Collector artifacts] artifacts --> ingest[Ingestion and scope gate] ingest --> db[(SQLite DB)] db --> ui[UI pages] ui --> targets[Targets page] ui --> dastpage[DAST page] ui --> report[Report page] targets --> dastsvc[Dast discovery service] targets --> acworkflow[Acunetix workflow service] dastpage --> acworkflow dastsvc --> localdast[Local DAST binaries] dastsvc -->|health and tools discovery| mcpserver[Acunetix MCP server] acworkflow -->|workflow calls
optional Bearer auth| mcpserver mcpserver --> acunetixapi[Acunetix Scanner API] acworkflow --> dasttask[DAST stage and task state] acworkflow --> liveevidence[Recurring vulnerability evidence] acworkflow --> reports[Acunetix reports] dasttask --> db liveevidence --> db reports --> db report -. optional enrichment .-> openai[OpenAI Responses API] ``` ## Docker 集成拓扑图 ``` flowchart LR browser[Operator browser] -->|http://127.0.0.1:8000| ghost[ghostreconrev-app] subgraph dockerhost["Docker host"] subgraph dreamland["Shared bridge network: dreamland"] ghost mcp end end ghost -->|HTTP MCP calls
optional Bearer auth| mcp mcp -->|https://
标签:Acunetix, AI赋能, AV绕过, DAST, Docker, FastAPI, FrontRecon, GhostRecon, GitHub, MCP, OpenAI, Petitpotam, Python, SQLite, UI界面, 侦察工具, 内存规避, 反取证, 域名发现, 子域名枚举, 安全合规, 安全评估, 安全防御评估, 实时处理, 实时流, 密码管理, 恶意软件分析, 插件系统, 数据展示, 数据统计, 无后门, 溯源, 端口扫描, 系统安全, 红队, 网络代理, 网络安全, 自动化管道, 证据固定, 请求拦截, 资产梳理, 逆向工具, 通用签名格式, 隐私保护