0xAlshalahi/SecurityTellers

GitHub: 0xAlshalahi/SecurityTellers

一款面向域名与 IP 的智能情报收集框架,集成历史记录、子域名枚举、反向 IP 与 Cloudflare 绕过能力。

Stars: 0 | Forks: 0

SecurityTellers

域名与 IP 智能收集框架

IP 历史 · 子域名枚举 · 反向 IP · Cloudflare 绕过 · 多 API

## 功能 **SecurityTellers** 在单个命令中从多个来源收集域名和 IP 的情报。它发现历史 IP、枚举子域名、查找关联站点,并尝试揭露隐藏在 Cloudflare 后的源 IP,所有结果按每个目标输出到独立文件夹。 ``` ┌─────────────────────────────────────────────────────────┐ │ SecurityTellers │ ├─────────────┬───────────────────────────────────────────┤ │ IP History │ Historical A records, DNS timeline │ │ Subdomains │ 7 sources: crt.sh, ST, VT, Shodan... │ │ Reverse IP │ Associated domains on same server │ │ CF Bypass │ 6 methods to find origin behind CDN │ └─────────────┴───────────────────────────────────────────┘ ``` ## 特性 ### IP 历史 - 当前 DNS 解析(A、MX、TXT、NS、CNAME) - 通过 SecurityTrails、ViewDNS、HackerTarget 获取历史 A 记录 - MX 记录 IP 泄露检测 - 通过 ip-api、Shodan、VirusTotal 获取地理位置与 ASN 数据 ### 子域名枚举 - **7 个数据源**:crt.sh、HackerTarget、AlienVault OTX、RapidDNS、SecurityTrails、VirusTotal、Shodan - 无需 API 密钥(crt.sh、HackerTarget、AlienVault、RapidDNS 均为免费) - 自动去重与排序 ### 反向 IP(关联站点) - 发现托管在同一 IP 上的所有域名 - 数据源:HackerTarget、SecurityTrails、VirusTotal、Shodan ### Cloudflare 绕过(6 种方法) | # | 方法 | 工作原理 | |---|--------|--------------| | 1 | 历史 DNS | 检查 Cloudflare 之前的 A 记录 | | 2 | MX 记录 | 邮件服务器常指向源站 | | 3 | SPF 记录 | SPF ip4: 条目泄露源 IP | | 4 | 子域名绕过 | 未通过 Cloudflare 代理的子域名 | | 5 | SecurityTrails | 历史 DNS 数据库 | | 6 | Censys 证书 | SSL 证书 → IP 映射 | 每个候选 IP 都会**自动验证**,通过向目标发送带有 Host 头的 HTTP 请求进行确认。 ## 安装 ``` git clone https://github.com/0xAlshalahi/SecurityTellers.git cd SecurityTellers pip install -r requirements.txt cp api_keys.yaml.example api_keys.yaml # 使用 API 密钥编辑 api_keys.yaml(可选) ``` ## 用法 ``` # 扫描域名(所有模块) python3 main.py -d example.com # 扫描 IP 地址 python3 main.py -ip 93.184.216.34 # 运行特定模块 python3 main.py -d example.com -m subs # Subdomains only python3 main.py -d example.com -m history # IP history only python3 main.py -d example.com -m reverse # Reverse IP only python3 main.py -d example.com -m cf-bypass # Cloudflare bypass only # Cloudflare 绕过重点 python3 main.py -d target.com --cf-bypass # 自定义输出目录 python3 main.py -d target.com -o /path/to/output # 详细模式 python3 main.py -d target.com -v # 使用特定配置文件 python3 main.py -d target.com --config my_keys.yaml # 使用环境变量代替配置文件 export ST_API_KEY="your_securitytrails_key" export SHODAN_API_KEY="your_shodan_key" export VT_API_KEY="your_virustotal_key" python3 main.py -d target.com ``` ## API 密钥 所有密钥均为**可选**。不提供任何密钥时,SecurityTellers 使用 4 个免费来源(crt.sh、HackerTarget、AlienVault、RapidDNS)。添加密钥可获得更广覆盖。 | 提供商 | 免费额度 | 获取密钥 | |----------|-----------|---------| | SecurityTrails | 每月 50 次请求 | [securitytrails.com](https://securitytrails.com/app/account) | | Shodan | 免费层级 | [shodan.io](https://account.shodan.io/) | | VirusTotal | 每分钟 4 次请求 | [virustotal.com](https://www.virustotal.com/gui/my-apikey) | | ViewDNS | 免费试用 | [viewdns.info](https://viewdns.info/api/) | | Censys | 每月 250 次请求 | [censys.io](https://search.censys.io/account/api) | 通过 `api_keys.yaml` 或环境变量(`ST_API_KEY`、`SHODAN_API_KEY`、`VT_API_KEY`、`VIEWDNS_API_KEY`、`CENSYS_API_ID`、`CENSYS_API_SECRET`)进行配置。 ## 输出结构 ``` results/ └── example.com/ ├── ip_history.json # Historical IP records ├── subdomains.json # All discovered subdomains ├── subdomains.txt # Plain text subdomain list ├── reverse_ip.json # Associated domains ├── cloudflare_bypass.json # CF bypass analysis ├── full_results.json # Combined results └── report.md # Markdown report ``` ## 示例输出 ``` ────────────────────────────────────────────────── CLOUDFLARE BYPASS ANALYSIS ────────────────────────────────────────────────── [!] target.com IS behind Cloudflare (IP: 104.21.xx.xx) [*] Attempting origin IP discovery... [*] [Method 1] Historical DNS records ↳ Pre-CF IP: 185.xx.xx.xx (ViewDNS) [*] [Method 2] MX record analysis ↳ MX leak: 185.xx.xx.xx (mail.target.com) [*] [Method 4] Subdomain direct resolution ↳ Direct sub: cpanel.target.com → 185.xx.xx.xx ↳ Direct sub: ftp.target.com → 185.xx.xx.xx [+] Found 2 origin IP candidates [*] Verifying candidates... ↳ 185.xx.xx.xx — CONFIRMED (via historical_dns) ``` ## 项目结构 ``` SecurityTellers/ ├── main.py # CLI entry point ├── core/ │ ├── banner.py # ASCII banner │ ├── config.py # API key loader │ └── logger.py # Colored logging ├── modules/ │ ├── ip_history.py # IP history module │ ├── subdomains.py # Subdomain enumeration │ ├── reverse_ip.py # Reverse IP / associated sites │ ├── cloudflare.py # Cloudflare bypass engine │ └── report.py # Report generator ├── api_keys.yaml.example # API key template ├── requirements.txt ├── LICENSE └── README.md ``` ## 作者 **Abdulelah Al-shalahi** — [@0xAlshalahi](https://github.com/0xAlshalahi) ## 免责声明 本工具仅用于**授权的安全测试与研究**。请始终在扫描非本人拥有的靶标前获得明确授权。作者不对滥用行为负责。 ## 许可证 MIT
标签:CDN绕过, Cloudflare绕过, DNS历史记录, ESC4, IP情报, OSINT, Python, SecurityTellers, 反查IP, 域名历史, 域名情报, 多API框架, 威胁情报, 子域名枚举, 安全侦察, 安全工具库, 开发者工具, 无后门, 源站暴露, 系统安全, 网络安全, 被动侦察, 逆向工具, 隐私保护