XannyAmx/ARCO
GitHub: XannyAmx/ARCO
ARCO 是一款基于免费公开数据源的域名侦察自动化工具,解决了安全研究中信息收集需要整合多个平台、避免依赖付费 API 的问题。
Stars: 3 | Forks: 1
# ARCO — 面向 OSINT 的高级侦察与收集
```
░█████╗░██████╗░░█████╗░░█████╗░
██╔══██╗██╔══██╗██╔══██╗██╔══██╗
███████║██████╔╝██║░░╚═╝██║░░██║
██╔══██║██╔══██╗██║░░██╗██║░░██║
██║░░██║██║░░██║╚█████╔╝╚█████╔╝
╚═╝░░╚═╝╚═╝░░╚═╝░╚════╝░░╚════╝
Advanced Recon & Collection for OSINT
```
## 功能简介
ARCO 结合多个免费公开资源,实现了对域名的被动和主动侦察自动化。每个模块既可以独立运行,也可以通过 `full` 命令组合运行。
## 安装说明
```
git clone https://github.com/XannyAmx/arco.git
cd arco
pip install -r requirements.txt
```
## 使用方法
```
# 域名 WHOIS
python arco.py whois -d example.com
# DNS 记录 + IP 地理定位 + 尝试 zona transfer
python arco.py dns -d example.com
# 子域名发现(被动:crt.sh + HackerTarget + WayBack)
python arco.py subdomains -d example.com
# 被动子域名 + 使用 wordlist 进行 brute force
python arco.py subdomains -d example.com --wordlist /usr/share/wordlists/subdomains.txt
# 暴露的文件和 WayBack Machine 中的历史记录(最近 5 年)
python arco.py wayback -d example.com --years 5
# 扩大从 CDX 下载的 URL 限制
python arco.py wayback -d example.com --limit 50000
# Security headers、fingerprinting、robots.txt 和 sitemap
python arco.py headers -d example.com
# Email 收集(活跃页面 + 存档页面)
python arco.py emails -d example.com
# 使用 JSON 报告进行全面扫描
python arco.py full -d example.com --out ./resultados
# 扩大 WayBack 限制的全面扫描
python arco.py full -d example.com --out ./resultados --limit 50000
# 从文件扫描多个域名(每行一个,# 用于注释)
python arco.py full -D dominios.txt --out ./resultados
```
## 模块详情
| 模块 | 描述 | 数据来源 |
|---|---|---|
| `whois` | 域名的 WHOIS 记录 | python-whois |
| `dns` | DNS 记录 + 区域传送 (zone transfer) + geoIP | dnspython, ip-api.com |
| `subdomains` | 被动发现 + 可选的暴力破解 | crt.sh, HackerTarget, WayBack CDX |
| `wayback` | 已索引的 URL、暴露的文件、网页快照 | WayBack Machine CDX API |
| `headers` | 安全标头、技术栈、robots.txt、站点地图 | 直接 HTTP 请求 |
| `emails` | 从网页和文件中收集邮箱 | HTTP + WayBack CDX |
| `full` | 包含所有模块并生成汇总的 JSON 报告 | 全部 |
## 命令选项
| 参数 | 适用模块 | 描述 |
|---|---|---|
| `-d / --domain` | 所有模块 | 目标域名 |
| `-D / --domain-list` | 所有模块 | 包含域名列表的文件(每行一个,`#` 表示注释) |
| `-o / --out` | 所有模块 | 输出目录(默认:`./<域名>/`) |
| `--years N` | `wayback`, `full` | 往前追溯的年数(默认:3) |
| `--limit N` | `wayback`, `full` | 从 CDX 下载的最大 URL 数量(默认:15000) |
| `--wordlist FILE` | `subdomains`, `full` | 用于暴力破解的字典文件(可选) |
| `--threads N` | `subdomains`, `full` | 暴力破解的线程数(默认:50) |
| `--no-files` | `wayback` | 跳过对暴露文件的搜索 |
| `--no-wayback` | `emails` | 不分析已归档的网页 |
## 输出结果
每个模块都会在输出目录中生成相应的文件:
```
example.com/
├── full_report.json ← reporte consolidado
├── whois.json
├── dns.json
├── subdomains.json
├── subdomains.txt ← un subdominio por línea
├── wayback.json
├── wayback_urls.txt ← todas las URLs indexadas
├── wayback_files.txt ← archivos de interés (pdf, xls, sql...)
├── headers.json
├── robots.txt
├── emails.json
└── emails.txt ← un email por línea
```
## WayBack 检测到的文件
ARCO 会在历史记录中自动搜索以下类型的文件:
`pdf` `xls` `xlsx` `doc` `docx` `ppt` `pptx` `sql` `log` `env` `config` `cfg` `bak` `backup` `zip` `tar` `gz` `rar` `json` `xml` `csv` `key` `pem` `p12`
## 数据来源
| 来源 | 适用模块 | 类型 |
|---|---|---|
| [crt.sh](https://crt.sh) | subdomains | 证书透明度 |
| [HackerTarget](https://hackertarget.com) | subdomains | 公共 DNS 查询 |
| [WayBack Machine CDX API](https://web.archive.org/cdx/) | subdomains, wayback, emails | 历史网页存档 |
| [ip-api.com](http://ip-api.com) | dns | IP 地理定位 |
| 直接 DNS 查询 | dns, subdomains | dnspython |
以上所有数据来源均**免费且无需注册**。
## 注意事项
- **请求标头模块时域名被拦截:** 如果服务器进行了 IP 过滤(例如地理封锁、WAF、防火墙),ARCO 会自动检测原因并将其作为诊断信息显示。
- **WayBack CDX 的速率限制:** 如果 API 返回带有 `x-rl: 0` 的 `503` 状态码,说明你的 IP 已达到请求限制上限。请等待约 15 分钟后重试。
- **含有 JavaScript 网站上的邮箱:** 许多网站会动态加载电子邮件。ARCO 仅从静态 HTML、`mailto:` 链接以及 WayBack 的归档页面中提取邮箱。
## 免责声明
## 开源协议
MIT — 可自由使用、修改和分发,但需保留对原作者的署名。
标签:GitHub, Python, 域名侦察, 无后门, 特征匹配, 逆向工具