| category | web |
| name | pentest-recon |
| description | 信息收集入口 - 目标类型判断、CDN检测、WAF识别、端口扫描 |
| when_to_use | 拿到目标URL/IP/域名后第一步 |
信息收集
文件组织
所有工具输出写入 tmp/<时间戳>/raw/:
tmp/<时间戳>/raw/
├── target_type.txt
├── cdn_result/
├── waf_result/
├── honeypot/
├── port_scan/
├── fingerprint/ → fingerprint.md
└── dir_scan/ → dir-scan.md
项目根目录禁止存放任何扫描结果。
阶段1:目标类型判断
域名必须先 nslookup 解析再判断:
| 目标类型 | CDN | WAF |
|---|
| 内网IP(10.x/172.16-31.x/192.168.x/127.x) | 跳过 | 跳过 |
| 内网域名(解析后IP为内网) | 跳过 | 跳过 |
| 外网IP | httpx -cdn | httpx -waf + Payload触发 |
| 外网域名 | cdnChecker 完整检测 | httpx -waf + Payload触发 |
阶段2:CDN检测
外网IP → httpx 快速:
"{{AITOOLS_DIR}}/httpx_1.9.0_windows_amd64/httpx.exe" -u <target> -cdn -silent -json -o <项目tmp>/cdn_result/httpx.json
外网域名 → cdnChecker 完整:
echo <domain> > <项目tmp>/cdn_result/target_domains.txt
"{{AITOOLS_DIR}}/cdnChecker_1.0.0_windows_amd64/cdnChecker.exe" \
-df <项目tmp>/cdn_result/target_domains.txt \
-cf "{{AITOOLS_DIR}}/cdnChecker_1.0.0_windows_amd64/cdn_cname.txt" \
-r "{{AITOOLS_DIR}}/cdnChecker_1.0.0_windows_amd64/resolvers.txt" \
-o <项目tmp>/cdn_result/non_cdn.txt \
-oc <项目tmp>/cdn_result/use_cdn.txt \
-od <项目tmp>/cdn_result/domain_info.txt \
-oi <项目tmp>/cdn_result/non_cdn_ips.txt
有CDN → 用真实IP扫描和直连测试,同时保留域名测试。
阶段3:WAF识别
内网跳过。外网执行:
- httpx:
httpx -u <target> -waf -cdn -silent -json
- Payload触发:SQL注入/XSS/路径穿越payload → 被拦截(403/503/302)=有WAF
- 响应头分析:Cloudflare(
cf-ray)、加速乐(__jsl_clearance_s)、知道创宇(acw_tc)、SafeLine(safeline)、阿里云(X-Cache)、腾讯云(AZTEC)
绕过优先级:真实IP直连 > 获取JS Cookie(Playwright) > 降速+伪造头
有WAF时:目录扫描降速(-t 10 -rate 5)、端口扫描用真实IP、指纹识别优先Playwright。
阶段4:蜜罐检测
检测到蜜罐→立即停止所有测试(见 pentest-rules)。
AI 综合分析判断(不依赖单一工具):
| 特征 | 可疑点 |
|---|
| 端口 | 异常多的开放端口、所有端口统一响应 |
| Banner | 版本号与实际行为不匹配、多服务同时"在线" |
| 页面 | 伪造的登录表单(无真实后端)、404页面统一风格 |
| 行为 | 任意路径返回200、无实际交互功能 |
| 已知产品 | HFish/T-Pot/Conpot/Dionaea/Cowrie等蜜罐特征 |
综合多个异常才判定蜜罐。不确定时询问用户。
阶段5:端口扫描
用真实IP(如CDN绕过有结果):
"{{AITOOLS_DIR}}/TscanClient_windows_amd64_v2.9.5/TscanClient_windows_amd64_v2.9.5.exe" \
-h <ip> -m port -p Top1000 -t 600 -o <项目tmp>/port_scan/tscan_port.txt
存活端口用 httpx 探测指纹:
"{{AITOOLS_DIR}}/httpx_1.9.0_windows_amd64/httpx.exe" \
-l <项目tmp>/port_scan/alive_ports.txt \
-title -status-code -tech-detect -web-server -o <项目tmp>/port_scan/port_fingerprints.txt
后续
→ fingerprint.md 指纹与架构识别
→ dir-scan.md 目录与敏感文件扫描