专业的社区
使用Burp Repeater测试反射的XSS
最近更新时间:2022年4月6日
阅读时间:3分钟
当HTTP请求中的用户控制输入以不安全方式“反映”时,可能会出现XSS漏洞。Burp Repeater可让您直接操纵HTTP请求,而不会受到客户端控件干扰,并使您更容易测试反射输入是否已得到充分消毒或过滤服务器端。
在本教程中,您将学习如何:
- 使用Burp Repeater的搜索和自动滚动功能来快速识别响应中反映的输入。
- 识别并利用基本反映XSS脆弱性。
- 从您的浏览器中重新报道Burp Repeater的请求,以从受害者的角度查看您的攻击。
步骤1:找到一个有趣的请求
使用Burp的浏览器,访问以下实验室:
https://beplay官网可以赌portsbeplay体育能用吗wigger.net/web-security/cross-site-scripting/reflected/lab-html-context-nothing-soded
在故意脆弱的博客网站上,使用搜索栏搜索任意,独特的字符串。beplay体育能用吗这通常被称为“金丝雀”。
如您所见,我们的搜索词显示在结果页面上。我们将使用Burp Repeater测试服务器是否正确消毒了此反映的输入。
步骤2:将请求发送到Burp Repeater
当您一直在使用Burp的浏览器时,您可以查看与目标站点的HTTP交互历史代理> HTTP历史记录标签。
找出获取 /?搜索=金丝雀
已发送以提交您的搜索查询的请求。将此发送给Burp Repeater。
步骤3:搜索您的反射输入的响应
去中继器选项卡,您现在可以在编号子选项卡中查看请求。
点击发送按钮重新发送请求。服务器的结果响应将出现在回复控制板。
使用底部的搜索栏回复面板以在响应中搜索金丝雀字符串的任何出现。
步骤4:确定注射环境
在响应中,研究您的投入反映的周围环境。这会影响您可以用来构建攻击的潜在XSS向量。在这种情况下,我们可以看到我们的输入反映在HTML中元素。
步骤5:测试有缺陷的输入消毒
在请求中,添加一个开口标记为
搜索
范围。我们将使用它来测试是否<
和>
角色或整个标签正在正确过滤或消毒服务器。
在左下角回复面板,单击COG图标,然后选择当文本更改时自动滚动以匹配选项。
发送请求并观察到现在的面板现在会自动滚动到反射金丝雀字符串的线路。注意标签不会以任何方式被剥离或逃脱。
小费
您可以使用<和>按钮在中继器面板在请求之间来回一步。与自动滚动选项结合使用时,这特别有用。
步骤6:发送XSS概念验证
在请求中,将搜索参数的值更改为完整的XSS概念证明攻击,例如