PortSwigger靶场之盲 SSRF(服务器端请求伪造)漏洞通关秘籍

这个实验的核心是利用盲 SSRF(服务器端请求伪造)漏洞 ,通过应用程序的分析软件对Referer头的处理机制,向 Burp Collaborator 服务器发送请求,从而验证漏洞的存在。

原理分析

  1. 盲 SSRF 的特点:与普通 SSRF 不同,盲 SSRF 不会直接在响应中返回目标 URL 的内容,而是需要通过 "带外(Out-of-Band)" 方式(如外部服务器的交互记录)来验证攻击是否成功。

  2. 漏洞触发点 :实验中的分析软件会在加载产品页面时,自动请求Referer头中指定的 URL(由服务器端发起)Referer 头 是 HTTP 协议中的一个请求头字段,用于指示当前请求是从哪个页面跳转而来的

  3. 。由于未对Referer头的内容做严格限制,攻击者可以篡改该值,让服务器向任意地址(如 Burp Collaborator)发送请求,通过观察外部服务器是否收到请求来确认 SSRF 存在。

  4. Burp Collaborator 的作用:这是 Burp Suite 提供的公共服务器,用于检测带外交互。当服务器端请求了 Collaborator 生成的独特域名时,Collaborator 会记录 DNS 查询和 HTTP 请求,从而证明 SSRF 攻击成功。

具体解决步骤

1. 拦截产品页面请求
  • 访问实验室中的任意产品页面(触发分析软件的 URL 获取逻辑)。
  • 用 Burp Suite 的 Proxy 拦截该请求(此时请求中包含Referer头,指向当前产品页面的 URL)。
  • 将拦截的请求发送到 Burp Repeater(方便修改和重放)。
2. 插入 Burp Collaborator payload
  • 在 Burp Repeater 中,找到请求中的Referer
  • 右键点击Referer头的值,选择 **"Insert Collaborator Payload"**(插入协作者载荷),Burp 会自动生成一个唯一的域名(9s2c8ryz0der8htew5ztc3p4lvrmfj38.oastify.com),替换原有的Referer值。
3. 发送请求并验证带外交互
  • 点击 Burp Repeater 的 "Send" 按钮,向服务器发送修改后的请求。服务器的分析软件会读取Referer头,并让后端服务器向该 Collaborator 域名发起请求。
  • 切换到 Burp 的 "Collaborator" 选项卡,点击 **"Poll now"(立即轮询)**,查看是否有交互记录。
  • 若攻击成功,会看到 Collaborator 记录了来自目标服务器的DNS 查询 (解析该域名)和HTTP 请求 (访问该域名),证明服务器端执行了我们构造的Referer头中的 URL 请求。

总结

本实验通过篡改Referer头,利用应用程序对该头的自动请求机制,触发了盲 SSRF 漏洞。由于无法通过响应直接观察结果,因此借助 Burp Collaborator 的带外检测能力,通过外部交互记录验证了漏洞的存在。核心逻辑是:让服务器按攻击者的意图访问外部可控地址,通过外部地址的记录证明攻击成功

相关推荐
ZC跨境爬虫10 小时前
跟着 MDN 学 HTML day_9:(信件语义标记)
前端·css·笔记·ui·html
前端老石人10 小时前
HTML 字符引用完全指南
开发语言·前端·html
幼儿园技术家10 小时前
前端如何设计权限系统(RBAC / ABAC)?
前端
前端摸鱼匠12 小时前
Vue 3 的v-bind合并行为:讲解v-bind与普通属性合并的规则
前端·javascript·vue.js·前端框架·ecmascript
REDcker12 小时前
浏览器端Web程序性能分析与优化实战 DevTools指标与工程清单
开发语言·前端·javascript·vue·ecmascript·php·js
ACP广源盛1392462567313 小时前
IX8024与科学大模型的碰撞@ACP#筑牢科研 AI 算力高速枢纽分享
运维·服务器·网络·数据库·人工智能·嵌入式硬件·电脑
Empty-Filled13 小时前
AI生成测试用例功能怎么测:一个完整实战案例
网络·人工智能·测试用例
donecoding14 小时前
一个 sudo 引发的血案:npm 全局包权限错乱彻底修复
前端·node.js·前端工程化
BenSmith14 小时前
从零上手嵌入式 RTOS:以 Raspberry Pi Pico 2 WH 为例的烧录、定制构建与多系统对比指南
安全
风骏时光牛马14 小时前
Raku正则匹配与数据批量处理实操案例
前端