N0L0g1c/Epic-OSINT-Toolkit
GitHub: N0L0g1c/Epic-OSINT-Toolkit
集成了域名侦察、社交媒体搜索、网页爬取、暗网分析及泄露检测等功能的一体化命令行开源情报工具。
Stars: 2 | Forks: 0
# Epic OSINT 工具包 🔍
一款基于 CLI 的全面开源情报 (OSINT) 收集工具,它将多个 OSINT 工具的最佳功能整合到一个强大的统一工具包中。非常适合安全研究人员、漏洞赏金猎人、渗透测试人员和网络安全专业人士。
## 🚀 为何称之为 Epic?
此工具包集成了受流行的 OSINT 工具启发的各种功能,包括:
- **Scilla** - DNS/子域名枚举
- **OSGINT** - GitHub 情报
- **creepyCrawler** - 具备高级提取功能的全面网页抓取
- **urlhunter** - 针对 URLTeam 存档中暴露的缩短链接进行搜索
- **TorBot** - 针对 .onion 域名的暗网情报
- **EmploLeaks** - 员工发现与泄露凭证检查
- **Emora/Profil3r** - 社交媒体情报
所有功能都集中在一个统一的 CLI 界面中,并具备全面的报告功能。
## 功能
### 🌐 域名情报
- **DNS 枚举**:发现 A、AAAA、MX、NS、TXT、CNAME、SOA 和 PTR 记录
- **子域名发现**:暴力破解与证书透明度日志检查
- **WHOIS 查询**:提取域名注册信息
- **SSL 证书分析**:分析 SSL/TLS 证书以获取情报
### 👤 社交媒体情报
- **多平台搜索**:在 25+ 个社交媒体平台上搜索用户名
- **个人资料发现**:在 GitHub、Twitter、Instagram、Facebook、LinkedIn、Reddit 等平台上查找资料
- **电子邮件发现**:根据用户名生成潜在的电子邮件地址
- **关联账户**:查找与用户名关联的账户
### 💻 GitHub 情报
- **资料分析**:获取详细的 GitHub 用户资料信息
- **代码库分析**:分析用户的代码库、语言和贡献
- **电子邮件发现**:从 GitHub 资料和提交记录中查找电子邮件地址
- **账户元数据**:获取账户创建日期和组织成员身份
### 🕷️ 网页抓取 (受 creepyCrawler 启发)
- **全面抓取**:通过 href、robots.txt 和 sitemap.xml 自动发现 URL
- **高级信息提取**:
- 电子邮件和电话号码
- 社交媒体链接
- 子域名
- 云存储链接 (AWS S3、Azure Blob、GCP、Dropbox、Google Drive 等)
- 文件链接 (PDF、DOC、ZIP 等)
- 登录页面
- HTML 注释
- IP 地址
- 营销标签 (Google Analytics、GTM、Facebook Pixel 等)
- 有趣的发现 (JSON 响应、frame ancestors 等)
- **Robots.txt 解析**:从 robots.txt 中提取 URL
- **Sitemap 解析**:从 sitemap.xml 中提取 URL
- **目录枚举**:发现隐藏的目录和文件
- **技术检测**:识别使用的技术 (WordPress、Drupal、React 等)
### 📧 电子邮件情报
- **电子邮件发现**:使用多种方法发现电子邮件地址
- **电子邮件验证**:验证电子邮件地址 (格式、MX 记录)
- **来源追踪**:追踪电子邮件的发现来源 (WHOIS、网站、GitHub)
- **一次性邮箱检测**:识别临时邮箱地址
### 🔗 URL 狩猎 (受 urlhunter 启发)
- **URLTeam 存档搜索**:搜索 URLTeam 暴力破解的 URL 缩短器集合
- **基于关键字的搜索**:支持使用单个关键字、多个关键字 (AND 逻辑) 或正则表达式进行搜索
- **日期范围支持**:按日期搜索存档 (最新、特定日期、年份或日期范围)
- **缩短的 URL 发现**:查找与域名相关的缩短 URL
- **暴露的 URL 检测**:在 pastebin、代码库和文件共享中查找暴露的 URL
- **URL 扩展**:还原缩短的 URL 以显示完整目标地址
### 🔌 端口扫描
- **端口发现**:扫描目标上的开放端口
- **服务检测**:识别开放端口上运行的服务
- **Banner 抓取**:提取服务 banner 以获取情报
- **Nmap 集成**:使用 nmap 进行高级扫描 (如果可用)
### 👥 员工与企业情报 (受 EmploLeaks 启发)
- **员工发现**:从 GitHub、GitLab 和公司网站查找员工
- **个人邮箱发现**:生成并查找员工的个人电子邮件地址
- **泄露凭证检查**:使用 Have I Been Pwned API 检查泄露的凭证
- **代码库发现**:查找员工的个人代码库
- **企业分析**:全面的企业情报收集
- **密码泄露检测**:检查密码是否已经泄露
### 🌑 暗网情报 (受 TorBot 启发)
- **Onion 域名抓取**:抓取 .onion 域名并提取情报
- **链接映射**:映射 .onion 站点之间的链接关系
- **Tor 集成**:可选的 Tor 代理支持,用于访问暗网
- **Onion 链接发现**:查找从目标链接到的其他 .onion 域名
- **暗网分析**:分析 .onion 域名的可访问性、技术和内容
### 📊 报告
- **多种格式**:生成 JSON、TXT 和 HTML 格式的报告
- **全面报告**:包含所有发现的详细情报报告
- **摘要统计**:快速总结发现的信息
## 🎯 快速开始
```
# 安装依赖项
pip install -r requirements.txt
# 运行完整域名扫描
python osint_toolkit.py -t example.com --full
# 全面 Web 爬取
python osint_toolkit.py -t example.com --comprehensive-crawl
# 搜索 URLTeam 归档
python osint_toolkit.py -t example.com --urlteam --keywords-file keywords.txt
# 分析暗网
python osint_toolkit.py -t "example.onion" --type onion --dark-web --tor
```
## 📦 安装
### 前置条件
- Python 3.8 或更高版本
- pip (Python 包管理器)
### 设置
1. **克隆或导航到工具包目录:**
```
cd epic-osint-toolkit
```
2. **安装依赖项:**
```
pip install -r requirements.txt
```
3. **使脚本可执行 (Linux/Mac):**
```
chmod +x osint_toolkit.py
```
## 💻 用法
### 基本用法
**全面域名扫描:**
```
python osint_toolkit.py -t example.com --full
```
**社交媒体用户名搜索:**
```
python osint_toolkit.py -t username --type username --social
```
**GitHub 情报:**
```
python osint_toolkit.py -t githubuser --github
```
**公司员工发现与泄露检查:**
```
python osint_toolkit.py -t "Company Name" --type company --employees --leaks
```
**使用 HIBP API 密钥进行公司分析:**
```
python osint_toolkit.py -t "Company Name" --type company --full --hibp-api-key YOUR_API_KEY
```
**全面抓取 (creepyCrawler 风格):**
```
python osint_toolkit.py -t example.com --comprehensive-crawl --robots --sitemap
```
**URLTeam 存档搜索:**
```
python osint_toolkit.py -t example.com --urlteam --keywords-file keywords.txt --urlteam-date latest
```
**暗网 .onion 分析:**
```
python osint_toolkit.py -t "example.onion" --type onion --dark-web --tor
```
### 高级用法
**使用特定模块进行自定义扫描:**
```
python osint_toolkit.py -t example.com --dns --subdomains --ports --emails
```
**自定义范围的端口扫描:**
```
python osint_toolkit.py -t 192.168.1.1 --ports --ports-range "1-1000"
```
**自定义深度的网站抓取:**
```
python osint_toolkit.py -t example.com --crawl --depth 3
```
**生成 HTML 报告:**
```
python osint_toolkit.py -t example.com --full --format html
```
**静默模式 (最小化输出):**
```
python osint_toolkit.py -t example.com --full --quiet
```
### 命令行选项
```
Required:
-t, --target TARGET Target (domain, username, IP, etc.)
Optional:
--type {domain,username,ip,url}
Type of target (default: domain)
--full Run full comprehensive scan
Module Flags:
--dns DNS enumeration
--subdomains Subdomain discovery
--whois WHOIS lookup
--ssl SSL certificate analysis
--social Social media search
--github GitHub intelligence
--crawl Website crawling
--directories Directory enumeration
--emails Email discovery
--urls URL hunting
--ports Port scanning
--employees Discover company employees
--leaks Check for leaked credentials
--comprehensive-crawl Comprehensive crawl (creepyCrawler-style)
--robots Parse robots.txt
--sitemap Parse sitemap.xml
--urlteam Search URLTeam archives
--dark-web Analyze dark web .onion domain
--tor Use Tor proxy (requires Tor running)
Options:
--keywords-file FILE Keywords file for URLTeam search
--urlteam-date DATE URLTeam archive date (latest, YYYY-MM-DD, YYYY, or range)
--max-pages N Maximum pages to crawl (default: 500)
--hibp-api-key KEY Have I Been Pwned API key (for leak checking)
-o, --output DIR Output directory (default: reports)
-f, --format {json,txt,html}
Output format (default: json)
--ports-range RANGE Port range to scan (default: common)
--depth DEPTH Crawl depth (default: 2)
--quiet Quiet mode (minimal output)
```
## 示例
### 示例 1:全面域名情报
```
python osint_toolkit.py -t example.com --full
```
这将:
- 枚举 DNS 记录
- 发现子域名
- 获取 WHOIS 信息
- 分析 SSL 证书
- 抓取网站
- 发现电子邮件地址
- 狩猎缩短的 URL
- 扫描常见端口
### 示例 2:用户名调查
```
python osint_toolkit.py -t johndoe --type username --social --github
```
这将:
- 在 25+ 个社交平台上搜索用户名
- 获取 GitHub 资料和代码库信息
- 发现关联的电子邮件地址
### 示例 3:端口扫描
```
python osint_toolkit.py -t 192.168.1.100 --ports --ports-range "1-1000"
```
这将:
- 扫描 1-1000 端口
- 检测服务
- 抓取 banner
### 示例 4:电子邮件发现
```
python osint_toolkit.py -t example.com --emails
```
这将:
- 使用多种方法发现电子邮件地址
- 追踪发现电子邮件的来源
### 示例 5:公司员工情报
```
python osint_toolkit.py -t "Example Corp" --type company --employees --leaks
```
这将:
- 从 GitHub、GitLab 和公司网站发现员工
- 查找员工的个人电子邮件地址
- 使用 Have I Been Pwned 检查泄露的凭证
- 发现员工的代码库
### 示例 6:全面网站抓取
```
python osint_toolkit.py -t example.com --comprehensive-crawl --robots --sitemap
```
这将:
- 抓取网站并自动发现 URL
- 解析 robots.txt 和 sitemap.xml
- 提取云存储链接、文件、登录页面、HTML 注释、IP、营销标签
- 查找所有有趣的发现
### 示例 7:URLTeam 存档搜索
```
python osint_toolkit.py -t example.com --urlteam --keywords-file keywords.txt --urlteam-date 2024-11-30
```
这将:
- 在 URLTeam 存档中搜索暴露的缩短 URL
- 使用文件中的关键字 (支持单个关键字、多个关键字或正则表达式)
- 搜索特定日期或日期范围
### 示例 8:暗网分析
```
python osint_toolkit.py -t "example.onion" --type onion --dark-web --tor
```
这将:
- 分析 .onion 域名的可访问性
- 抓取 .onion 域名并提取链接
- 映射 .onion 站点之间的关系
- 提取电子邮件、IP 和有趣的内容
## 输出
报告保存在 `reports/` 目录中 (或使用 `-o` 指定的自定义目录)。
**文件命名格式:**
```
osint_YYYYMMDD_HHMMSS_target.format
```
**示例:**
```
osint_20241130_123456_example.com.json
osint_20241130_123456_example.com.html
osint_20241130_123456_example.com.txt
```
## 模块详情
### 域名情报模块
- 使用 `dnspython` 进行 DNS 查询
- 实现子域名暴力破解
- 通过 crt.sh 检查证书透明度日志
- 执行 WHOIS 查询
- 分析 SSL 证书
### 社交媒体情报模块
- 搜索 25+ 个平台,包括:
- GitHub、Twitter、Instagram、Facebook、LinkedIn
- Reddit、YouTube、TikTok、Pinterest、Snapchat
- 以及更多...
- 生成潜在的电子邮件地址
- 查找关联账户
### GitHub 情报模块
- 使用 GitHub API (公共数据无需 token)
- 分析用户资料和代码库
- 从提交记录中发现电子邮件地址
- 获取账户创建日期
### 网页抓取模块 (受 creepyCrawler 启发)
- 自动发现 URL 进行全面抓取
- 解析 robots.txt 和 sitemap.xml
- 提取全面的情报:
- 电子邮件、电话号码、社交链接
- 子域名
- 云存储链接 (AWS、Azure、GCP、Dropbox、Google Drive)
- 文件链接
- 登录页面
- HTML 注释
- IP 地址
- 营销标签 (GA、GTM、Facebook Pixel 等)
- 有趣的发现 (JSON 响应、frame ancestors)
- 使用字典进行目录枚举
- 检测技术 (WordPress、React 等)
### 电子邮件情报模块
- 从多个来源发现电子邮件
- 验证电子邮件格式和 MX 记录
- 追踪电子邮件来源
- 识别一次性邮箱
### URL 狩猎模块 (受 urlhunter 启发)
- 在 URLTeam 存档中搜索暴露的缩短 URL
- 支持基于关键字的搜索 (单个、具有 AND 逻辑的多个关键字、正则表达式)
- 日期范围支持 (最新、特定日期、年份、日期范围)
- 查找与域名相关的缩短 URL
- 搜索 pastebin 和代码库
- 还原缩短的 URL
### 端口扫描模块
- 多线程端口扫描
- 服务检测
- Banner 抓取
- 可选的 nmap 集成
### 员工情报模块 (受 EmploLeaks 启发)
- 从多个来源 (GitHub、GitLab、网站) 发现员工
- 生成和发现个人电子邮件地址
- 集成 Have I Been Pwned 进行泄露检查
- 发现员工的代码库
- 全公司范围的分析
- 密码泄露检测
### 暗网情报模块 (受 TorBot 启发)
- .onion 域名抓取与分析
- .onion 站点之间的链接关系映射
- Tor 代理集成 (可选)
- Onion 链接发现
- 暗网内容提取
## 法律与道德考量
⚠️ **重要提示**:此工具仅用于**授权的安全测试和合法的 OSINT 研究**。
- 仅对您拥有或获得明确授权的系统使用此工具
- 遵守平台的各种限制和服务条款
- 请勿用于骚扰、跟踪或非法活动
- 注意当地有关信息收集的法律法规
- 负责任地、符合道德规范地使用
## 限制
- 某些功能需要外部 API 或服务
- 频率限制可能会影响结果 (建议使用 HIBP API 密钥进行泄露检查)
- 某些平台可能会阻止自动化请求
- 结果取决于公开可用的信息
- 对于较大的范围,端口扫描可能会很慢
- LinkedIn 员工发现需要身份验证 Cookie (手动设置)
- 员工发现最适合在 GitHub/GitLab 上有公开存在的企业
- URLTeam 存档搜索需要下载存档 (可能非常大,超过 400GB)
- 暗网功能需要运行 Tor (127.0.0.1:9050) 才能访问 .onion 域名
- 某些 .onion 域名可能响应缓慢或无法访问## 🤝 贡献
欢迎各种贡献!您可以随时:
- 报告 bug
- 提出新功能建议
- 提交 pull request
- 改进文档
## 📄 许可证
本项目按“原样”提供,用于教育和授权的安全测试目的。
## 致谢
受各种 OSINT 工具启发,包括:
- Scilla
- OSGINT
- creepyCrawler (全面网页抓取)
- urlhunter (URLTeam 存档搜索)
- TorBot (暗网情报)
- Emora
- Profil3r
- EmploLeaks (员工和泄露检测)
- 以及 OSINT 社区中的许多其他贡献者
## 💬 支持
如有问题、疑问或建议,请在代码库中提交 issue。
## ⭐ Star 历史
如果您觉得此工具很有用,请考虑在 GitHub 上给它点个 ⭐!
如果您觉得此工具很有用,请考虑在 GitHub 上给它点个 ⭐!
## ⚠️ 法律与道德免责声明
**重要提示**:此工具仅用于**授权的安全测试和合法的 OSINT 研究**。
- 仅对您拥有或获得明确书面授权的系统使用此工具
- 尊重所有平台的速率限制和服务条款
- 请勿用于骚扰、跟踪或任何非法活动
- 了解并遵守当地有关信息收集的法律法规
- 负责任地、合乎道德地使用
- 作者不对滥用此工具的行为负责
**切记**:始终以负责任和符合道德的方式使用 OSINT 工具。仅对您已获得授权的目标收集情报。
标签:CTI, ESC4, OSINT, 动态插桩, 安全情报, 实时处理, 数据泄露, 文档结构分析, 逆向工具