纯命令行工具信息收集的思路
看了一个youtube上信息收集的思路,发现和直接用fofa,hunter这些直接搜集子域名不太一样,因此记录了一下。
https://www.youtube.com/watch?v=evyxNUzl-HA
01. 侦查机环境搭建 (VPS & Tools Setup)
一个干净、稳定的云服务器(VPS,推荐 Ubuntu 系统)是自动化侦查的基石。
基础环境初始化
- 更新系统并配置基础依赖:安装 Go 语言环境及常用编译依赖工具。
- 包管理器安装(pdtm):Project Discovery 官方提供了包管理器
pdtm,可以实现“一键安装与更新”全套开源安全工具链。 - 第三方工具补齐:安装并配置
nmap、massdns等后续爆破与解析所需的底层原生依赖。
Tips:建议在 VPS 上配合
tmux或screen使用,防止长耗时任务因 SSH 中断而崩溃。
02. Recon 的两大核心支柱 (Core Pillars)
整个 Recon 流程可以划分为两个由浅入深的阶段:
+-----------------------------------------------------------------------+
| Recon 核心流程 |
+-----------------------------------------------------------------------+
| [阶段一] 资产发现 (Asset Discovery) |
| └── 寻找所有可能的物理入口:域名、子域名、存活 IP、开放端口 |
+-----------------------------------------------------------------------+
| │ |
| ▼ |
+-----------------------------------------------------------------------+
| [阶段二] 内容发现 (Content Discovery) |
| └── 挖掘应用内部的逻辑细节:敏感接口、JS 路由、参数、后台/组件 |
+-----------------------------------------------------------------------+
03. 阶段一:资产发现工作流 (Asset Discovery Workflow)
资产发现的目标是不遗漏任何潜在攻击面,从被动收集到主动变体爆破,层层递进。
1. 子域名枚举 (subfinder)
- 核心点:不要只运行默认的
subfinder -d target.com! - 深度优化:一定要在
provider-config.yaml中配置各大 API Provider 的 Key(如 SecurityTrails、Censys、Shodan 等),并加上-all参数,才能拉满枚举深度。
2. 子域名爆破 (shuffleDNS)
- 适用场景:补全未公开、无 SSL 证书的泛域名或深层子域名。
- 做法:结合优质的 Resolver 列表与词表(Wordlist),底层借助
massdns进行高速 DNS 暴力破解。
3. 排列组合与环境变体 (alterx)
- 机制:根据已有子域名,自动生成如
qa-,dev-,staging-,api-等开发测试环境的词组变体。 - 价值:很多漏洞往往就藏在防护薄弱的 Dev 或 Staging 环境中。
4. DNS 解析过滤 (dnsx)
- 作用:对被动收集 + 爆破 + 排列组合生成庞大域名列表进行高速解析,秒级剔除无效域名,精准筛选出存活的目标列表。
5. 端口扫描 (naabu)
- 作用:对解析出的 IP/域名进行非标准端口扫描(如
3000,8443,8888,9999等)。 - 价值:绕过 80/443 的常规 Web 防火墙,直接抓取边缘服务或内部测试端口。
04. 阶段二:信息收集与内容发现 (Information Gathering & Content Discovery)
拿到存活资产后,进入深入的应用层分析。
┌──► 灰产/未授权后台 (phpMyAdmin/Grafana/Jenkins)
│
httpx / Katana / ───► ├──► JS 深度挖掘 (前端 API 接口 / 敏感 Hardcoded Key)
URLFinder │
└──► 缝隙漏洞 (历史 URL 参数 / Open Redirect / SSRF)
1. HTTP 协议探测与识别 (httpx)
- 能力:批量提取网页 Title、Status Code、Content-Type、Content-Length 以及重定向路径。
- 重点关注:指纹识别出的第三方组件或管理后台(如
phpMyAdmin、Grafana、Jenkins、Nacos等),这类服务极易存在已知 CVE 漏洞或弱口令。
2. 主动爬虫与 JS 深度解析 (katana)
- 参数推荐:开启
-jc(JavaScript Crawling) 和-jsl参数。 - 价值:能够深度解析前端打包代码(如 Webpack/Vite),挖掘隐藏在 JS 脚本中的未授权 API 路由。
3. 认证后爬取 (Authenticated Crawling)
- 高级用法:传入登录后的 Cookie/Header(
-h),结合-xhr及自动填表(-aff)。 - 价值:突破登录墙,深度爬取鉴权后的内部逻辑页面与高危敏感接口。
4. 被动链接收集 (urlfinder)
- 原理:利用第三方历史索引库(如 Wayback Machine、Common Crawling)被动获取目标的历史 URL。
- 价值:非常适合寻找特定参数(SQLi/XSS/SSRF)、开放重定向(Open Redirect)等遗留缝隙漏洞。
05. 工作流构建 (Chaining Workflow)
Project Discovery 系列工具最高明的地方在于其原生支持 Unix 管道符 (|) 链式调用。我们可以直接写成一行化的自动化 Recon 脚本:
Bash
# 一键式完整 Recon 链条示例
subfinder -d target.com -all | \
alterx | \
dnsx -silent | \
naabu -top-ports 1000 -silent | \
httpx -title -tech-detect -status-code | \
katana -jc -jsl -o endpoints.txt
总结心得
- 深度依赖配置文件与 API:无 Key 的工具效率会折半,Recon 的上限很大程度上取决于数据源的丰富度。
- 变体与解析是精髓:
AlterX + dnsx能帮你发现绝大多数对手看不到的“隐秘资产”。 - 重视 JS 挖掘:现代 Web 架构高度 API 化,
Katana对前端 JS 的提取常常能带来意外的未授权/接管惊喜。

浙公网安备 33010602011771号