BurpSuite的基础使用,这个教程有“坑”_

BurpSuite简介

BurpSuite是一款辅助渗透的工具,可以给我们带来许多便利。Burp给我们提供了简单的HTTP抓包改包,数据枚举模块,以及各种安全漏洞的手动式扫描与爬虫式扫描,还有很多经常需要使用的小工具。

01介绍

BurpSuite社区版的官方下载地址:

https://portswigger.net/burp/communitydownload

Burp Suite版本介绍

BurpSuite的主要模块Proxy、Scanner、Spider等都设计了接口,可以很方便的使用Java、Python或者是Javascript进行编写扩展。

02Proxy 模块的使用

先来学习一下Burp Proxy模块的使用,Proxy是以代理的方式去获得所有通过代理的网络请求,比如客户端的请求数据、服务器端的返回信息等。

BurpSuite主要是拦截http和https这两个协议的流量,通过拦截,BurpSuite可以作为中间人,对客户端请求数据、服务端返回做出各种处理,这样便能够达到安全评估测试的目的。

在我们日常生活中,最常用的Web客户端也就是Web浏览器,我们设置好代理后,便能对Web浏览器的流量进行拦截,并且可以处理那些经过BurpSuite代理的流量数据。

BurpSuite代理到底要怎么配置?

注:本地地址127.0.0.1:8080

主流浏览器的设置方式:

Internet Explorer-工具→Internet选项→连接→局域网设置→代理服务器→勾选为LAN使用代理服务器,设置代理地址为:127.0.0.1,端口:8080,点击确定。

Chrome-安装S witchyOmega 扩展→点击选项→新建情景模式输入名称,勾选代理服务器→创建→代理协议:http,代理服务器:127.0.0.1,代理端口:8080。

Firefox-首选项→高级→网络→设置→手动配置代理→代理地址:127.0.0.1,端口:8080,勾选为所有协议使用相同代理→确定。

Safari-点击 safari →偏好设置→高级→更改设置→勾选 Web 代理,输入127.0.0.1:8080保存。

BurpSuite 默认监听为本地地址,也就是:127.0.0.1:8080,浏览器设置的代理地址也需要与 burp 的监听地址一样,如果需要修改监听端口可以点击 Edit

墙:安装SwitchyOmega扩展:

这里以谷歌浏览器为例,来学习如何设置代理。首先打开谷歌浏览器,并且安装SwitchyOmega扩展:

坑点:127.0.0.1所有电脑的本地服务器都默认为127.0.0.1

坑点:8080这些代理端口不能随意改动,因为其它端口可能被占用,可以改为没有被占用的端口。范围为1~65535。

注意:当你使用完BurpSuite ,将其关闭之后,需要切换浏览器的代理,否则无法上网。

在Chrome下:有插件,可以方便切换。

在火狐中你需要:首选项>>高级>>网络>>设置>>不使用代理。或者也可以使用foxyproxy插件来设置代理,具体方法可自行百度,在此不做赘述。

SSL证书的安装:

现在大多数网站为了数据传输的安全性,强制使用HTTPS进行通信,这时我们在使用了Burp代理后去访问将会出现证书错误的警告,需要安装Burp的CA证书,才能解密HTTPS的请求进行检测。

浏览器访问地址::8080

打开浏览器访问::8080 ,如果在设置代理时修改了端口则访问修改后的端口, 点击蓝色框内将会下载到Burp的CA证书。

这里的话,我已经下载过几次了,所以文件名后面跟了(4)。点击Chrome界面上的菜单项,然后点击「设置」。

①进入到设置页面后,拉到底部,点击「显示高级设置」。

②再往下拉,找到「HTTPS/SSL」项,点击「管理证书」的按钮。

③点击「受信任的根证书颁发机构」选项卡,再点击「导入」按钮。

④点击「下一步」,选择我们刚刚下载的证书。

证书存储这一步通常我们可以使用默认选项直接进入下一步,点击完成。

火狐浏览器下的导入方式:

选项→高级→证书→查看证书→证书机构→导入→确定

这时便导入成功,可以尝试访问 HTTPS 网站进行测试。

监听其他终端的流量:

这里需要使用Burp测试手机或者其它终端的HTTP请求,做如下配置可以使BurpSuite代理监听除了本地以外的请求:方法和配置Burp代理相似,点击Edit,选择All interfaces,再点击OK ,便完成设置了。

查看主机地址的命令:

win:ipconfig

其他:ip addr

在其它终端将IP设置为这台主机的地址,Windows下使用ipconfig查看主机地址,其它的使用ip addr命令。如果是HTTPS的请求则需要在该终端上安装上面提到的cacert.der证书。

拦截、修改HTTP请求:

注:火狐浏览器代理配置方式

在火狐浏览器下:选项→高级→网络→连接→设置→手动配置代理(M)→HTTP代理:127.0.0.1 端口:8080

选中SOCKS v5不使用代理N)localhost,127.0.0.1→确定

测试地址:

账号:admin 密码:password

我们实践下,如何拦截、修改HTTP请求。点击Proxy,在intercepter模块下,点击「 Intercepter is off 」按钮开启请求拦截。

打开Chrome ,将代理设置为BurpSuite。

设置好之后我们访问进行测试,可以看到Burp成功拦截到该请求。

在这可以直接在编辑框中修改这个HTTP请求消息,修改完之后点[Forward]或是[Interception is on]都可以放行修改后的请求消息。如果点击Drop则表示丢弃这条消息,Action是用来传递这条消息到其它模块的按钮,我们可以在编辑框中使用右键也能得到与Action按钮同样的效果。

需要备注可以在Comment field中填写,或是点击彩色图标为这条HTTP消息标记一种颜色,查看所有被代理的HTTP请求:

查看所有被代理的HTTP请求。进入Proxy模块的HTTP histor。如果需要操作其中某一条可以点击选中后右键打开菜单,可以发送到其它模块。

03Repeater模块的使用

Burp Repeater是一个HTTP发包模块,通常我们使用它来重放Proxy的请求,可以更加方便的修改包内容以及进行测试。

使用Repeater发送我们的第一个请求。打开Repeater模块我们会发现两边的文本框都是空的,这是因为它没有初始的HTTP发包模版。我们可以随便在哪复制一个我们想要请求的URL,然后右击文本框打开菜单,选择「Paste URL as Request」。

使用Burp的过程中最经常做的就是修改请求参数、验证输入的漏洞、验证逻辑越权,那么就可以在Proxy 的 HTTP history中看到所有经过Burp的请求。首先选中某一条,右键选择「Send to Repeater」就可以发送到Repeater模块了。打开Repeter模块可以看到我们刚刚发送过来的HTTP消息,到这之后我们便可以到这里进行修改 发包进行测试。

04Intruder模块的使用

测试站点:

账号:admin 密码:password

Intruder模块,我们要知道Burp Intruder是一个HTTP迭代重放器,当然也包括了常见的payload生成器。通常用于密码的暴力破解、数据遍历等情景。在我们使用 Repeater 模块的时候每次只发送一个请求,而 Intruder 则会 一次性 将payload 字典进行迭代发送请求,我们可以通过请求列表里的响应包长度和状态对出异常的HTTP请求,这个HTTP请求通常会是我们想要得到的结果。

开启Burp的代理,刷新这个页面 ,在Proxy的History中可以看到这个请求,我们将这个请求发送到Intruder。

在Intruder中找到它,橘色部分是Burp自动识别的重放变量,这里自动标记的username中的§admin§就是我们需要遍历的值,如果不是我们所需要的则可以点击右侧的「Clear $」清楚掉这些标记。

以上是今天与大家分享的内容,你学会了吗?