在分析网站的爬取结果以及测试表单可能的入参时,经常需要对用一个请求发送多次(每次改变其中的特定参数)。这篇文章里,我们讨论如何利用 Burp 的 repeater 来实现这一需求。
实施步骤
接下来的操作,都是紧跟着上一篇文章来的,此时的状态应该是,靶机开着,Burp开着,浏览器正确配置了代理。
首先我们进入Burp的Target标签页,然后定位到
(http://192.168.56.102/bodgeit/login.jsp)
the one that says username=test&password=test.
右键单击这个请求,选择Send to Repeater
接下来我们切换到Repeater标签页,点击Go,然后查看响应
在Request区域(上图左侧),我们可以看到发给Server的raw request。第一行给出的信息由:请求为POST方法,请求的URL和协议(HTTP 1.1)。第二行起一直到Cookie,是请求头参数。然后一行空行后接POST请求参数(之前在表单里提到的)。在Response区域有五个标签页:Raw, Headers, Hex, HTML, Render。这几个标签页用不同的格式展示了相同的响应信息。现在咱们点击Render,像在浏览器里那样查看页面:
我们可以在Request区域随意修改请求,然后再次点击Go,就会从发请求,返回新的响应。让我们试一下,把密码的值改为撇号('),然后重发请求:
总结
Burp的repeater可以测试不同输入和场景下重发同一个请求,并分析每次请求对应的响应。这共功能在测试漏洞的时候,非常好用,可以根据应用对不同输入的不同响应,进行后续操作,进而识别或利用可能存在的缺陷(来源于配置、编码、设计)。