0xhacksty/OriginFinder
GitHub: 0xhacksty/OriginFinder
OriginFinder 是一款聚合多源情报、利用置信度评分与主动验证技术,精准识别 CDN 及反向代理背后真实源站 IP 的侦察工具。
Stars: 0 | Forks: 0
# Origin IP Finder
Origin IP Finder 是一款专业的多源侦察与验证工具,旨在识别反向代理和 CDN 层背后的可能的源站主机。
它将被动情报、置信度评分、主动响应验证和视觉捕获整合到一个工作流中,以生成可靠且可操作的结果。
## 核心功能
- 从 DNS、CT 日志、Shodan、Censys 以及 RDAP/ASN 丰富信息中发现多源候选
- 带有清晰原因输出的加权置信度评分
- 使用响应相似性和 Header 指纹进行可选的主动验证
- 为发现的候选者自动捕获全页截图
- 用于发现、验证和截图步骤的并行处理
- 按目标存储的结构化 JSON 输出,便于项目组织
- 针对截图模式的自动 Playwright 浏览器安装回退机制
## 工作原理
1. 从多个情报源收集候选 IP。
2. 使用 ASN 和提供商上下文丰富每个候选者。
3. 使用加权证据和置信度阈值对候选者进行评分。
4. 可选地验证与目标主机的内容相似性。
5. 可选地捕获候选端点的全页截图。
6. 将结构化结果保存到 JSON 输出目录。
## 系统要求
- Python 3.9+
- 互联网访问
## 安装说明
1. 安装依赖:
```
pip install dnspython requests playwright
```
2. 安装用于截图的浏览器引擎:
```
python -m playwright install chromium
```
## 配置
该仓库包含一个带有空键值的已追踪 config.yaml,以便用户可以克隆、编辑并快速开始。
编辑 config.yaml 并粘贴您的凭证:
```
shodan_api_key: ""
censys_api_id: ""
censys_api_secret: ""
dnsdb_api_key: ""
passivetotal_api_key: ""
securitytrails_api_key: ""
```
注意事项:
- 将字段留空以仅使用免费/公共源运行。
- 私有设置也支持环境变量和 .env 文件。
## 快速开始
基础扫描:
```
python origin_finder.py example.com
```
带截图的扫描:
```
python origin_finder.py example.com --screenshot
```
带主动验证的扫描:
```
python origin_finder.py example.com --verify
```
完整工作流:
```
python origin_finder.py example.com --verify --screenshot --screenshot-parallel 5 --verbose
```
## 命令选项
- domain: 要调查的目标域名
- --config, -c: 配置文件路径
- --min-score: 在终端输出中打印的最低分数
- --output, -o: 自定义输出 JSON 文件路径
- --verbose, -v: 在终端打印详细证据
- --ipv6: 包含 IPv6 候选者
- --screenshot, -s: 为候选者捕获截图
- --screenshot-dir: 截图基础目录
- --screenshot-parallel: 截图并发值
- --verify: 启用主动响应验证
- --levenshtein-threshold: 验证的相似度阈值
- -h, --help, -help: 显示命令帮助
## 输出结构
JSON 结果保存在:
- json/target_domain_slug/target_domain_slug_YYYYMMDD_HHMMSS.json
截图保存在:
- screenshots/target_domain_slug/
每个 JSON 报告包含:
- scan_metadata
- summary
- high_confidence_ips
- probable_origin_ips
- low_confidence_ips
- scoring_explanation
- verification_explanation
## 置信度模型
评分管道对多个独立信号进行加权,包括:
- 直接源站风格的 DNS 记录
- DNS 证据的时效性
- 证书 SAN 关联性
- ASN 上下文和 CDN 惩罚处理
- 威胁情报存在
默认置信度区间:
- 高置信度:分数 >= 85
- 可能的源站:分数 >= 75 且 < 85
- 低置信度:分数 < 75
## 专业使用建议
- 从默认评分和启用的验证开始,以获得高信号质量。
- 使用截图进行快速视觉筛选和报告。
- 当您需要证据级透明度时使用详细模式。
- 妥善保管 API 凭证并定期轮换。
## 安全与仓库维护
- config.yaml 被故意追踪并使用空值,以便于上手。
- .env 中的本地机密信息会被 git 忽略。
- 运行时产物(json 输出、截图、本地数据库)会被 git 忽略。
## 法律与负责任使用
仅在您拥有或已获得明确授权进行评估的系统上使用此工具。
标签:ASN查询, C2日志可视化, CDN绕过, CT日志, DNS侦查, ESC4, OSINT, Playwright, Snort++, 主动验证, 侦察工具, 信心评分, 反代理探测, 字符串匹配, 指纹识别, 源站发现, 特征检测, 真实IP查找, 网络安全, 网络调试, 网页截图, 自动化, 被动扫描, 资产测绘, 逆向工具, 隐私保护