Burp Suite Proxy是放在客户端和目标服务器中间的一个工具,它可以记录、拦截,也可以修改经过代理的那些HTTP和HTTPS请求。在做测试之前,要先确认一下目标系统是不是自己的,或者已经拿到了很明确的授权。抓包的时候,比较容易弄混的一件事是,“请求没有被拦截窗口停下来”和“请求根本就没有经过Burp”,这是两种不一样的情况,得从不同的地方去排查才行。
Burp Suite Repeater的使用方法,以及发送请求失败的时候应该怎样处理,在Web接口调试和授权安全测试当中,是会经常遇到的。Repeater这个工具能够对HTTP请求反复进行修改并且重新发送,用来比较参数、请求头、Cookie和请求体发生变化之后,响应结果出现了哪些不同。用的时候,最好先留下一条可以正常返回的原始请求,然后再一项一项地去修改。如果请求发不出去了,就需要把连接失败、身份认证失效、请求格式写错,还是被服务器主动拒绝这几种情况,给区分开来。
做接口测试时,很多人习惯把请求丢进BurpSuite的Repeater里反复修改参数,但这里容易产生一个误解:Repeater的主要作用,其实是让你编辑并重发请求,然后去观察服务器返回的响应,而不是一个可以“改动服务器返回内容再放行给浏览器”的工具。按照Burp官方文档的说明,Repeater专门用来反复修改、发送HTTP或WebSocket消息,从而分析应用程序给出的响应。如果真正需要去修改经过浏览器接收的响应数据,通常要用Proxy模块拦截响应,或者设置Match and Replace规则来搞定。