Recon-ng OSINT 开源情报收集框架
什么是 Recon-ng
Recon-ng 是一个开源的 OSINT(Open Source Intelligence)框架,通过 80+ 个功能模块将侦察阶段的数据采集流程标准化。它的设计思路和 Metasploit 类似(命令行框架、模块、数据库),但专注于被动信息收集——不直接碰目标主机,只从公开渠道抓取信息。
启动与初始化
recon-ng
首次启动会要求创建工作区(workspace),用于隔离不同目标的数据。所有收集到的数据会存入 SQLite 数据库。
模块类型
Recon-ng 的模块按侦察阶段分类:
| 类型 | 功能 | 示例 |
|---|---|---|
| Recon | 主动侦察模块(联网抓取) | google, bing, shodan, censys |
| Discovery | 被动数据聚合 | resolve-hosts, brute-srd |
| Reporting | 报告生成 | json, csv, html |
| Exploitation | 漏洞验证 | 很少,不是 Recon-ng 重点 |
| Import | 导入外部数据 | nmap, nessus |
基本工作流示例:子域名枚举
[recon-ng][default] > modules search recon/domains-hosts
[recon-ng][default] > modules load recon/domains-hosts/bing_domain_web
[recon-ng][default][bing_domain_web] > options set SOURCE example.com
[recon-ng][default][bing_domain_web] > run
[recon-ng][default] > modules load recon/domains-hosts/google_site_web
[recon-ng][default][google_site_web] > options set SOURCE example.com
[recon-ng][default][google_site_web] > run
# 查看收集到的所有子域名
[recon-ng][default] > hosts
[recon-ng][default] > show hosts
常用外部数据源 API
很多 Recon-ng 模块需要 API Key:
| 模块 | API Key | 获取位置 |
|---|---|---|
| shodan | 免费 API | Shodan 官方网站注册 |
| censys | 免费 API | Censys 注册 |
| hunter | 免费 API | Hunter(奇安信 FOFA 替代) |
| virustotal | 免费 API | VirusTotal 注册 |
| github | 免费 token | GitHub Personal Access Token |
配置方式:
[recon-ng][default] > keys add shodan
(粘贴 API Key)
收集数据的类型
Recon-ng 可以从公开网络收集:
- 主机和子域名:被动枚举不触发目标告警
- 邮箱地址:搜索引擎、LinkedIn、GitHub 公开页面抓取
- 社交账号:Username 反查 GitHub/Twitter/LinkedIn
- 网络基础设施:IP 归属、ASN、开放端口、服务版本(Shodan/Censys)
- 漏洞和泄露数据:Have I Been Pwned、VirusTotal、Public PGP Keys 等
输出报告
[recon-ng][default] > modules load reporting/html
[recon-ng][default][html] > options set CREATOR "渗透测试报告"
[recon-ng][default][html] > options set CUSTOMER "目标公司"
[recon-ng][default][html] > options set destination /tmp/report.html
[recon-ng][default][html] > run
与其他侦察工具配合
Recon-ng 是聚合器,不是万能的。实际工作中常配合:
| 工具 | 互补场景 |
|---|---|
| Amass | 更强大的子域名枚举(OWASP 出品) |
| theHarvester | 快速从搜索引擎抓邮箱 |
| Maltego | 实体关系图可视化 |
| FOFA/Hunter | 中国境内资产搜索 |
| Nmap | 对已发现的主机做端口扫描 |