Tyrion404
面向 Bug Bounty 猎人的高级侦察与情报工具
由 Tyrion 提供
一款基于 bash 的综合高级侦察工具,专为 Bug Bounty 狩猎和安全评估而设计 — 内置**情报层**,可将原始侦察数据转化为**可执行的攻击路径**。
## v1.1 新特性
- **扫描配置** — 只需一个参数 (`-profile passive|fast|deep|api|infra|continuous`) 即可替代十几个参数。
- **单工具超时控制** — 每个外部工具都有硬性超时上限 (`-timeout`,默认 `20m`);卡死的工具不会再阻塞整个扫描进程。
- **真实的检查点** — 超时或失败的步骤**不会**被标记为已完成,因此重新运行时只会重试未完成的部分(而不是静默跳过)。
- **配置感知依赖检查** — `-doctor` 风格的输出现在只会报告所选配置实际使用的工具。
- **集中式日志** — 每个工具的启动/结束/超时都会被记录到 `tyrion.log` 中。
- **运行指标** — 运行结束时会汇总展示持续时间、已完成/已跳过/已失败的步骤、超时次数以及运行的各项工具。
- **输入验证** — 目标域名在进入 shell 之前会先经过验证。
## 功能
### 子域名枚举
- **多源被动枚举** — Subfinder, Assetfinder, crt.sh, Shrewdeye, HackerTarget, RapidDNS, Anubis-DB
- **Git 来源** — github-subdomains, gitlab-subdomains
- **Chaos API** — ProjectDiscovery 被动数据集
- **Crobat** — Certspotter/Sonar 数据集
- **TLS 证书** — tlsx SAN/CN 提取
- **并行模式** — 使用 `-parallel` 同时运行所有工具
- **暴破 + 排列组合** — dnsx + SecLists 20k + 使用 puredns 解析的 alterx/dnsgen 排列引擎
### 基础设施映射 (`-asn`)
- ASN 发现与 CIDR 提取
- IP 范围枚举
- 云资产检测 (AWS/Azure/GCP/Firebase)
- CDN 与源站检测
### 存活主机分析
- httpx 单次扫描 — 状态码、标题、服务器、content-length
- 技术指纹识别
- 单主机 WAF 检测 (`-waf` 通过 wafw00f)
- 虚拟主机发现 (`-vhost` 通过 ffuf)
### URL 与参数情报
- **爬虫** — Gospider, Katana, Cariddi
- **历史档案** — Waybackurls, GAU, Hakrawler (`-moreurls`)
- **URL 去重** — uro 智能去重
- **URL 结构** — 使用 unfurl 提取路径/键名/域名
- **ParamSpider** — 自动化参数发现
- **Arjun** (`-arjun`) — 深度主动参数挖掘
- **统一参数列表** — 所有参数按出现频率排名并存入 `all_parameters.txt`
### JavaScript 情报 (`-jsdeep`)
- 在本地下载所有 JS 文件
- **jsluice** — 结构化提取 endpoint 与敏感信息
- 正则提取:路径、绝对 URL、API 密钥、token、Firebase 配置
- 从 JS 源码中挖掘参数
- 利用 JS 路径 × 存活主机重构完整 endpoint
### 攻击分析 (常态开启)
- **攻击面排名** — HIGH / MEDIUM / LOW 级别的 endpoint 分类
- **Bug 狩猎候选目标** — 预先筛选出 IDOR / SSRF / XSS / Open Redirect / LFI / SQLi 目标
- **认证面检测** — 登录/OAuth/SAML/SSO endpoint + 提供商指纹识别
- **BIGRAC** — 自动检测 Swagger, OpenAPI, GraphQL, .env, 配置文件和凭证
### 漏洞狩猎
- **GF 模式** (`-gf`) — XSS, SQLi, SSRF, LFI, RCE, IDOR, SSTI, CORS, S3 buckets
- **Grep 敏感信息** (`-grep`) — 配置文件、备份、机密信息、管理后台、API、云端资产、认证、日志
- **Nuclei 全面扫描** (`-nuclei`) — 信息暴露 + 错误配置 + CVE + 接管漏洞
- **子域名接管** (`-takeover`) — nuclei 接管模板
- **SecretFinder** (`-secret`) — 查找 JS 文件中的机密信息
- **Dirsearch** (`-dir`) — 支持自定义字典的目录暴破
### 主动扫描
- **端口扫描** (`-port`) — Naabu 快速发现 + Nmap 服务检测
- **屏幕截图** (`-gowitness`) — Gowitness 截图并生成 HTML 报告
### 可靠性
- **扫描配置** — `-profile passive|fast|deep|api|infra|continuous`
- **单工具超时控制** — `-timeout` 为每个外部工具设置硬性超时上限 (默认 `20m`)
- **ENTER 跳过** — 可跳过任何长时间运行的工具,并保留部分结果
- **P 暂停 / C 恢复** — 基于 SIGSTOP/SIGCONT 控制
- **检查点 / 恢复** — 自动从最后完成的步骤恢复;失败或超时的步骤会被重试,而不是跳过
- **集中式日志 + 运行指标** — `tyrion.log` 和运行结束时的指标汇总
## 用法
```
./Tyrion404.sh
[flags]
```
### 配置 (v1.1)
只需选择一个配置,无需手动拼凑各种参数:
| 配置 | 展开为 |
|---------|-----------|
| `-profile passive` | 仅基础 — 被动枚举 + DNS + HTTP + URL + JS + 情报 (默认) |
| `-profile fast` | passive + `-moreurls -jsdeep -gf -grep` |
| `-profile deep` | 全面启用 — 主动扫描 + 完整网络情报 |
| `-profile api` | Swagger/OpenAPI + JS API + `-validate -apidisc -cors -methods -verify` |
| `-profile infra` | `-parallel -asn -port -waf -takeover -vhost` |
| `-profile continuous` | 精简、可重复运行的监控组合 (依赖检查点 + 历史差异对比) |
### 执行控制 (v1.1)
| 参数 | 描述 |
|------|-------------|
| `-timeout ` | 单工具硬性超时时间 (默认 `20m`,例如 `30m`, `600s`) |
| `-concurrency ` | 工作池并行度 (默认 `50`) |
`TOOL_TIMEOUT`, `KILL_AFTER` 和 `CONCURRENCY` 也可以通过环境变量进行设置。
### 参数列表
| 参数 | 描述 |
|------|-------------|
| `-parallel` | 并行运行子域名工具 |
| `-bruteforce` | 主动暴破 + alterx/dnsgen 排列组合 |
| `-asn` | ASN 与 CIDR 映射,云资产检测 |
| `-vhost` | 虚拟主机发现 |
| `-waf` | WAF 检测 |
| `-moreurls` | 启用 GAU + Hakrawler 额外 URL 来源 |
| `-arjun` | 深度参数发现 |
| `-jsdeep` | 下载 JS 并提取 endpoint/参数/机密信息 |
| `-secret` | 对 JS 文件运行 SecretFinder |
| `-gf` | GF 漏洞模式分类 |
| `-grep` | 按类别 Grep 查找敏感 URL |
| `-nuclei` | 全面 Nuclei 扫描 (信息暴露 + 错误配置 + CVE) |
| `-takeover` | 子域名接管检测 |
| `-dir [wordlist]` | Dirsearch 目录暴破 |
| `-port` | 端口扫描 (Naabu + Nmap) |
| `-gowitness` | 对存活主机进行截图 |
### 示例
```
# 基础 recon (passive profile)
./Tyrion404.sh target.com
# Profiles — 简单方式
./Tyrion404.sh target.com -profile fast
./Tyrion404.sh target.com -profile api -timeout 30m
./Tyrion404.sh target.com -profile deep
# 快速 parallel + bruteforce + ASN
./Tyrion404.sh target.com -parallel -bruteforce -asn
# 深度 URL + JS 分析
./Tyrion404.sh target.com -moreurls -jsdeep -gf -grep -arjun
# 聚焦 Infrastructure
./Tyrion404.sh target.com -asn -vhost -waf -port
# 全面 everything
./Tyrion404.sh target.com -parallel -moreurls -jsdeep -dir -secret -gf -grep -gowitness -nuclei -asn -vhost -waf -arjun
```
## 输出结构
```
target.com/
├── all_subs.txt # All unique subdomains
├── live_hosts.txt # Live hosts (clean URLs)
├── live_hosts_detailed.txt # Status + title + server + size
├── tech_detect.txt # Technology fingerprints
├── cdncheck_results.txt # CDN / origin detection
├── tyrion_waf.txt # WAF detection
├── asn.txt / cidrs.txt # ASN & IP ranges
├── cloud_assets.txt # Cloud assets
├── allurls.txt # All URLs (deduplicated)
├── url_paths.txt # Unique paths (unfurl)
├── url_param_keys.txt # Unique param keys (unfurl)
├── params.txt # Parameters (ParamSpider)
├── arjun_params.txt # Parameters (Arjun)
├── all_parameters.txt # All params ranked by frequency
├── javascript.txt # JavaScript URLs
├── BIGRAC.txt # API/sensitive endpoints
├── js_files/ # Downloaded JS files
├── js_analysis/ # jsluice + regex extractions
├── reconstructed_endpoints/ # JS paths × live hosts
├── attack_surface/ # HIGH / MEDIUM / LOW ranked
├── bug_hunt/ # IDOR / SSRF / XSS / LFI / SQLi
├── auth_surface/ # Auth endpoints & providers
├── grep_results/ # Juicy URLs by category
├── gf/ # GF pattern results
├── vhost_results/ # Virtual host findings
├── gowitness_output/ # Screenshots + HTML report
├── tyrion_dirsearch.txt # Dirsearch results
├── tyrion_nuclei.txt # Nuclei findings
├── takeover_results.txt # Takeover vulnerabilities
├── secrets_found.txt # JS secrets
├── open_ports.txt # Open ports (Naabu)
├── ports_detailed.txt # Service details (Nmap)
├── tyrion.log # Central run log (tool start/end/timeout)
├── .checkpoint # Resume state (removed on a clean finish)
└── .cache/ # dns/ http/ js/ swagger/ nuclei/ cache dirs
```
## 作者
**Tyrion**