时隔多年,重新拿起 Burp Suite。对以前使用 Burp 还有一些印象,但是具体操作起来,还是有一些出入。折腾了一阵子,终于在手机端和 PC 端都代理成功了。这一次直接记录下来,避免再折腾。
代理机制
这是一篇面向对于使用 Burp Suite 有一丁点了解的读者的总结,所以有些东西会根据我自己觉得是否关键作一些解释,尽量讲得很清楚。
代理机制不分什么端的设备,都是一样的。简单地讲就是,A 把本来要发送给 B 的流量先发送给 C,C 接收后,再发送给 B(或者做其它操作,包括不操作)。这个过程中,C 就是代理,它就是作了 A 与 B 的“代理”,当 A 发送流量给 B 时,C 就是 A 的“代理发送者”,同时是 B 的“代理接收者”,B 发送给 A 时同理。而 Burp Suite 就是实现这么一种代理机制的一个软件工具,它就是 C。
你会发现上边涉及到的是 A、B 和 C 一共三台机器,这跟咱们在使用 Burp 的情况不一样啊,我们不就是只有一台电脑+访问的网站的服务器那台机器吗?
确实是这样,但是你思考一下,当你不是用电脑访问网站,而是使用手机的情况呢?其实也就是代理手机流量。这种情况下是不是涉及到了三台机器了?手机+访问的网站服务器+运行 Burp 作代理的电脑。
这里的原因是在第一种情况下,咱们直接就把电脑既当作上网用的机器,又让它运行 Burp 直接作代理机器了,毕竟 Burp 实现代理功能只是一个软件层面的东西,而用一台机器专门只作代理而不上网的话只不过是把专一性做到极致而已,你完全可以找两台电脑,一台只运行 Burp 作代理机,一台只用来上网。
这其实只是个很简单的东西,但是明白了这个对于代理机制的理解是有不小帮助的。
好了,说说这个代理具体是怎么实现的。
现在假设我们使用 A 上网访问百度服务器 B,C 开了 Burp 在这中间代理流量。A 的网卡地址是 192.168.1.101,代理 C 与 A 处于同一个局域网,具体地址不重要,B 的地址也不重要。
那么我们就需要把 C 上