在上一章中我们介绍了一下浏览器代理,而今天我们要介绍的Burp Proxy则是一个用来调试web应用程序的交互式的HTTP(s)的代理服务器,可以把它看做浏览器和目标服务器之间的一个中间人,它允许我们拦截、查看甚至是修改两个方向上的原始数据,查找和探索应用程序的漏洞。
在上一章Target中小编也介绍了关于设置浏览器代理和Burp Suite监听代理一致这一点,那么这里我们不再讲解设置浏览器代理,而是将关于Burp设置这一块,首先我们打开Burp Suite,切换标签到Proxy,接下来我们点击Option选项,我们可以看到下面有很多项的设置:
这些设置分别为Proxy Listeners(代理监听)、Intercept Client Request(拦截客户端请求)、Intercept WebSockets Messages(拦截web socket消息)、Repsonse Modification(响应修改)、Match and Replace(匹配和替换)、SSL Pass Though、Miscellaneous(其他设置)。
从这里我们也能看到Burp的默认大力监听为127.0.0.1:8080,Burp的代理需与浏览器的代理一致,才能拦截到信息,之前的一章的讲解中小编是说修改浏览器代理,那么如果这里有一些实际情况我们也能对Burp的代理监听进行修改。
切换标签至Intercept,这里我们开启拦截功能(Intercept is on),返回浏览器,随便点击浏览器的一个链接,会发现页面并没有浏览我们点击的链接,因为请求信息被Burp拦截了,此时Burp Proxy会捕捉到浏览器提交的请求信息:
拦截到请求信息之后,单机Forward按钮,可以将我们拦截到的请求信息再次发送出去,在此之前,我们可以对这些请求信息进行一些修改。如果不想发送这次请求信息我们可以点击Drop,将拦截到的信息丢弃。在下方,我们可以看到信息可以使用Raw(纯文本)、Params(参数)、Header(头信息)和Hex(十六进制)等方式呈现。在请求信息的任意地方右键或者单击上方的Action按钮,我们可以对请求进行一些操作:
在上方的HTTP history选项中记录了我们通过Burp Proxy的所有HTTP信息。在这些历史记录中每条信息包括编号、Host(主机)、Method(请求方法)、URL(请求地址)、Params(参数)、Edited(是否编辑过)、Status(状态响应码)、Length(消息长度)、MIME type(响应的MLME类型)、Extension(地址文件扩展名)、Title(页面标题)、Comment(注释)、SSL、IP(目标IP地址)、Cookies、Time(发出请求的时间)、Listener port(监听端口)等等。单击某条信息,下方将显示该信息的Request和Response。选中某条或者一些信息右键,可以对信息精细一些操作。还可以对选中的信息进行高亮显示或者添加注释:
和上一章讲到的Target一样,这里同样也可以通过Filter选项进行过滤。
以上便是Proxy基础功能的简单介绍,大家一起学习一起进步吧(^v^)。