0xsvenx/scan7x

GitHub: 0xsvenx/scan7x

一款零依赖的 Go 命令行漏洞赏金侦察工具,自动拉取多平台项目范围并完成子域名枚举、存活探测、URL 收集与 JS endpoint 提取。

Stars: 1 | Forks: 0

# scan7x **获取漏洞赏金项目的范围,然后进行侦察 —— 只需一条命令。** 选择一个平台(HackerOne / Bugcrowd / Intigriti / YesWeHack),输入目标 (例如 `red bull`),选择要获取的内容(domains / APIs / wildcards / …), scan7x 将会下载范围、枚举子域名、探测存活主机、 收集 JavaScript、提取 endpoint,并生成一份清晰的报告 —— 所有这些都使用 Go 编写, 具有**零外部依赖**且**无需 API 密钥**。 ``` ███████╗ ██████╗ █████╗ ███╗ ██╗███████╗██╗ ██╗ ██╔════╝██╔════╝██╔══██╗████╗ ██║╚════██║╚██╗██╔╝ ███████╗██║ ███████║██╔██╗ ██║ ██╔╝ ╚███╔╝ ╚════██║██║ ██╔══██║██║╚██╗██║ ██╔╝ ██╔██╗ ███████║╚██████╗██║ ██║██║ ╚████║ ██║ ██╔╝ ██╗ ╚══════╝ ╚═════╝╚═╝ ╚═╝╚═╝ ╚═══╝ ╚═╝ ╚═╝ ╚═╝ bug-bounty recon & enumeration engine ``` ## 功能 - 🎯 **选择平台和目标**:HackerOne、Bugcrowd、Intigriti、YesWeHack。 - 🗂️ **自动范围分类**:domains、wildcards、APIs、mobile apps、CIDR、source 和 other —— 每种类型保存在各自的文件中。 - 🔎 从多个来源进行**被动子域名枚举**:certspotter、crt.sh、hackertarget、rapiddns、AlienVault OTX。 - 🌐 **存活主机探测**,包含状态码和页面标题。 - 🕸️ **Wayback URL 收集** + **JavaScript** 文件提取和下载。 - 🧩 从 JS 文件中**提取 Endpoint**(路径和 API 路由)。 - 📄 **清晰的最终报告**(`report.md` + `summary.json`)和井然有序的文件夹。 - 🧱 使用 **Go** 构建,零外部依赖,可在 Windows/Linux/macOS 上运行。 ## 要求与安装 你只需要 **Go 1.22+**。从 下载。 ``` git clone https://github.com/0xsvenx/scan7x.git cd scan7x go build -o scan7x ./... # on Windows: go build -o scan7x.exe ./... ``` 构建完成后,你会得到一个名为 `scan7x`(或 `scan7x.exe`)的可执行文件。 ## 快速开始 ### 1) 交互模式(最简单) 不加任何选项运行该工具,它会一步步引导你完成所有操作: ``` ./scan7x ``` ``` Select platform: 1) all 2) hackerone 3) bugcrowd 4) intigriti 5) yeswehack Choice [1]: 3 Enter target program name (e.g. red bull): red bull Scope found: - domains 12 - wildcards 4 - apis 2 What to pull? comma list (domains,apis,wildcards,...) or 'all' Choice [all]: all Recon depth: 1) scope — only download & categorize scope 2) passive — scope + passive subdomain enum + Wayback JS list 3) full — enum + live probe + crawl + download JS + endpoints Choice [3]: 3 ``` ### 2) Flags(用于自动化) ``` # 在所有平台搜索 "red bull" 并运行完整 recon ./scan7x -target "red bull" # 仅限 HackerOne,提取 domains 和 wildcards,被动 recon ./scan7x -platform hackerone -target uber -pull domains,wildcards -recon passive # 仅提取并分类 scope,不进行 recon ./scan7x -target shopify -recon scope # 跳过平台查找,直接对你已知的 domains 进行 recon ./scan7x -root example.com,api.example.com -recon full -o ./out/example ``` ## 工作原理(流程) ``` platform + target ─▶ scope (categorized) ─▶ enumeration ─▶ live probe │ ▼ report.md ◀─ endpoints ◀─ download JS ◀─ Wayback URLs + crawl ``` 1. **Scope**:从 `bounty-targets-data` 项目拉取项目数据(每日更新,无需密钥),并自动对资产进行分类。Scope 在本地缓存 24 小时(使用 `-refresh` 强制更新)。 2. **Enumeration**:仅从被动来源收集 **wildcard roots**(例如 `*.example.com`)的子域名。明确非通配符的主机绝不进行扩展,以保持在范围之内。 3. **Probe**(在 `full` 模式下):依次通过 HTTPS 和 HTTP 检查每个主机,并记录存活的主机。 4. **URLs + JS**:从 Wayback 收集 URL,并抓取存活主机页面上的 `