BurpSuite--Proxy详解

BurpSuite--Proxy

目录

代理设置

浏览器代理设置

FoxyProxy插件使用

Burp Proxy基本使用方法

Intercept

HTTP history

WebSockets history

案例:使用Proxy截包改包


代理设置

Burp Suite用代理模式拦截通过代理的网络流量,主要拦截HTTP和HTTPS的流量,拦截时,Burp Suite以中间人方式对客户端请求数据、服务端返回做各种处理,以达到安全评估测试的目的。所以我们就需要对Web浏览器进行代理设置

首先,我们需要启动Burp Suite,设置代理

一般默认为 127.0.0.1:8080,但我的8080端口号有冲突,所以我改成了6666

BurpSuite--Proxy详解

浏览器代理设置

我使用的是火狐浏览器(其他浏览器方法相差无几,不过多赘述)

浏览器右上角打开菜单-->选项-->网络设置-->手动设置代理,将IP与端口设置的与Burp Proxy一样

BurpSuite--Proxy详解

FoxyProxy插件使用

当然,每次都这样难免有些麻烦,火狐中的FoxProxy插件就很值得推荐,浏览器右上角打开菜单-->附加组件-->搜索FoxyProxy

BurpSuite--Proxy详解

安装此插件即可,安装完成后首先要进行设置

BurpSuite--Proxy详解

选择Options-->Add,然后按之前的方法进行填写并保存

BurpSuite--Proxy详解

然后在使用时选中BurpSuite即可,结束使用时选中Turn Off即可

BurpSuite--Proxy详解

Burp Proxy基本使用方法

Intercept

首先,我们先把拦截功能打开。Interception is on 为打开状态

BurpSuite--Proxy详解

打开浏览器(代理模式下),搜索要访问的URL(以百度新闻为例),此时,Burp Proxy会抓取数据包并且暂停

浏览器一直无法打开百度新闻的页面,直到点击Forward,才会继续进行传输。也可以在修改数据之后在Forward发送。

BurpSuite--Proxy详解

如果点击了Drop,则会丢弃此数据包,同时不会再进行传输,浏览器将报错

BurpSuite--Proxy详解
我们再来特别看一下这一部分

BurpSuite--Proxy详解

以上四种是拦截下来的数据包信息的不同形式表现,均可以查看和修改

主要显示web请求的raw格式,包含请求地址、http协议版本、主机头、浏览器信息、Accept可接受的内容类型、字符集、编码方式、cookie等。在最底下有一个搜索框,你输入后,会在文本中进行高亮显示,便于寻找信息

BurpSuite--Proxy详解

Params显示客户端请求的参数信息、包括GET或者POST请求的参数、Cookie参数

Headers显示的信息和Raw的信息类似,但会转换成名称/值的方式,更利于观察

Hex是二进制形式的信息

在下图所示位置可以对请求消息进行备注

BurpSuite--Proxy详解

最后,再说一下Action

BurpSuite--Proxy详解

HTTP history

就是已经记录下来的历史信息记录,可随时查看,但是不能进行修改

BurpSuite--Proxy详解

在上图过滤条件处单击可以打开Filter进行过滤

BurpSuite--Proxy详解

鼠标单击任意一条历史记录,在下方会出现该信息的详细情况

单击每条历史纪录前的数字,会出现不同的颜色,可以选择做区别显示

BurpSuite--Proxy详解

鼠标双击一条历史纪录,会出现一个新的对话框,下方是详细信息,上方可以进行三种操作

Previous上一条记录

Next下一条记录

Action即执行相应操作

BurpSuite--Proxy详解

WebSockets history

此模块与HTTP history大同小异

主要用于记录WebSockets的数据包

Options

BurpSuite--Proxy详解

监视和拦截所有的请求和响应,默认监听127.0.0.1地址,8080端口

但因为我的8080端口冲突,所以我改成了6666,也是没有问题的

客户端请求消息拦截

BurpSuite--Proxy详解

选中intercept requesys······following rules 拦截所有符合勾选按钮下方列表中的请求规则的消息,也可以增加、编辑、移除

如果Automatically fix missing的checkbox被选中,则表示在一次消息传输中,Burp Suite会自动修复丢失或多余的新行,此项功能在手工修改请求消息时,为了防止错误,有很好的保护效果。

如果Automatically update Content-Length的checkbox被选中,则当请求的消息被修改后,Content-Length消息头部也会自动被修改,替换为与之相对应的值。

服务器端返回消息拦截

BurpSuite--Proxy详解

功能与客户端请求消息拦截功能相对应

服务器返回消息修改

BurpSuite--Proxy详解

正则表达式

BurpSuite--Proxy详解

自动替换请求消息和服务器端返回消息中的某些值和文本,支持正则表达式语句

案例:使用Proxy截包改包

把BurpSuite的拦截功能打开,在浏览器输入HelloWorld并回车,BurpSuite拦截到数据包

BurpSuite--Proxy详解

把抓到的包中“HelloWorld”改为“Mizuhara Kiko”

BurpSuite--Proxy详解

  • 可以自己在Raw中寻找关键字并修改
  • 也可以在最底下的搜索框中搜索关键字并修改(前文有述)
  • 还可以在Params中找关键字并修改
  • 总之,很多地方都能修改···

更改完毕后,点击Forward让请求继续,然后就可以看到浏览器搜索的不是“HelloWorld”,而被改为搜索“MizuharaKiko”

BurpSuite--Proxy详解