SuperAPI AI 工具集

exploiting-ssrf

通用与其它

查看项目

更新于 10-16 02:28

技能介绍

用途:在获得授权的前提下,发现并利用服务端请求伪造(SSRF),重点在于服务器能访问而测试者无法直接访问的目标,如云元数据端点、无认证内网服务与容器网络。仅限授权系统测试。

适用场景:任何会抓取 URL 的功能,如 webhook、导入、头像 URL、链接预览、PDF/截图生成、XML/SVG 处理、按 URI 取文件;参数含 URL、主机名、IP 或可演变为 URL 的路径;源码审查发现目标受用户影响的出站 HTTP 调用;测试回调到客户提供端点的集成。不适用于 CSRF、通用 Web 测试、以源码审计为主的任务、拿到云凭证后的后利用,以及超出约定范围的内网横向。

主要能力:先用带外监听确认盲 SSRF,如 interactsh-client -v,提交 http://<unique>.oast.example/ 观察 DNS 与 HTTP 命中;仅 DNS 解析通常说明存在 SSRF 但被过滤,应转向绕过。云元数据是重点:AWS IMDSv1 直接 GET http://169.254.169.254/latest/meta-data/iam/security-credentials/;IMDSv2 需先 PUT http://169.254.169.254/latest/api/token 并带 X-aws-ec2-metadata-token-ttl-seconds: 21600,再在 GET 带 X-aws-ec2-metadata-token。Azure 需 Metadata: true 头,GCP 需 Metadata-Flavor: Google 头。还可探测 localhost 管理口、Redis/Memcached、Elasticsearch 9200、Docker 2375、Kubernetes API 与 kubelet 10250。

绕过手法:169.254.169.254 的十进制、八进制、十六进制与 Unicode 数字编码;localhost 变体如 127.1、0.0.0.0、[::1]、[::ffff:127.0.0.1];DNS 指向内网;URL 解析歧义如 http://expected.com@169.254.169.254/;重定向链;协议走私 file://、gopher://、dict://;DNS 重绑定。重定向是最常见遗漏,验证器放行首个 URL 而客户端 follow_redirects=True 即完全绕过。

盲 SSRF:用带外确认、时间差做端口扫描、错误差异区分端口状态、二阶效应(渲染的 PDF 或缩略图可能含抓取内容)。渲染服务尤其值得关注,提交 HTML 中的 iframe 或 script 可让响应渲染进输出文档。

限制:需先确认授权范围,SSRF 可达范围常超出预期;IMDSv2 仅能挡住简单 URL 抓取,能代理完整请求(方法与头)的 SSRF 仍可到达;不要因无响应就判定不可利用;严重性取决于内网目标能做什么,应先枚举再定级。恢复的凭证交由 exploiting-cloud-platforms 处理。ATT&CK 覆盖 T1190 与 T1552.005。