BurpSuite简介
https://bbs.ichunqiu.com/thread-54760-1-1.html
BurpSuite ,这是一个辅助渗透的工具,可以给我们带来许多便利。Burp 给我们提供了简单的 HTTP 的抓包改包,数据枚举模块,以及各种安全漏洞的手动式扫描与爬虫式扫描,还有很多经常需要使用的小工具。
1、介绍:
(教程仅用于信息防御技术教学 请勿用于其他用途)
好啦开始学习BurpSuite,这是一个辅助渗透的工具,可以给我们带来许多便利。
Burp Suite社区版 官方下载地址:
https://portswigger.net/burp/communitydownload
(Burp Suite版本介绍)
版本
|
付费说明
|
功能介绍
|
社区版
|
免费
适合业余爱好者及研究人员
|
提供基础的手动工具
|
专业版
(Professional)
|
$349每年
|
提供Web漏洞扫描器
提供高级的手动工具
提供基础的手动工具
|
Burp给我们提供了简单的HTTP的抓包改包,数据枚举模块,以及各种安全漏洞的手动式扫描与爬虫式扫描,还有很多经常需要使用的小工具。它的主要模块Proxy、Scanner、Spider等都设计了接口可以很方便的使用Java、Python或者是Javascript进行编写扩展。
Burpsuite2.1+汉化包
链接:https://pan.baidu.com/s/1rhV_o5vHcwm7ICuFKyn4Tw
提取码:4nq4
jdk下载地址:
2、Proxy 模块的使用
我们首先学习Burp Proxy模块的使用,Proxy是以代理的方式去获得所有通过代理的网络请求,比如客户端的请求数据、服务器端的返回信息等。
BurpSuite主要是拦截http和https这两个协议的流量,通过拦截,BurpSuite可以作为中间人,对客户端请求数据、服务端返回做出各种处理,这样便能够达到安全评估测试的目的。
在我们日常生活中,最常用的Web客户端也就是Web浏览器,我们设置好代理后,便能对Web浏览器的流量进行拦截,并且可以处理那些经过Burp Suite代理的流量数据。
BurpSuite代理到底要怎么配置
注:本地地址127.0.0.1:8080
<ignore_js_op>
主流浏览器的设置方式
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扩展:https://chrome.google.com/webstore/detail/proxy-switchysharp/dpplabbmogkhghncfbfdeeokoefdjegm
这里以谷歌浏览器为例,来学习如何设置代理。首先打开谷歌浏览器,并且安装SwitchyOmega扩展
<ignore_js_op>
坑点:127.0.0.1所有电脑的本地服务器都默认为127.0.0.1
坑点:8080这些代理端口不能随意改动,因为其它端口可能被占用,可以改为没有被占用的端口。范围为1~65535。
<ignore_js_op>
注意:停止使用 Burpsuite 的时候当你使用完 burpsuite ,将其关闭之后,需要切换浏览器的代理,否则无法上网。
在 chrome 下:有插件,可以方便切换。
在火狐中:你需要: 首选项>>高级>>网络>>设置>>不使用代理。或者也可以使用 foxyproxy 插件来设置代理,具体方法可自行百度,在此不做赘述。
SSL 证书的安装:
现在大多数网站为了数据传输的安全性,强制使用 HTTPS 进行通信,这时我们在使用 了Burp 代理后去访问将会出现证书错误的警告,需要安装Burp的CA证书,才能解密HTTPS的请求进行检测。
<ignore_js_op>
浏览器访问地址:http://127.0.0.1:8080
打开浏览器访问 http://127.0.0.1:8080 ,如果在设置代理时修改了端口则访问修改后的端口, 点击蓝色框内将会下载到 Burp 的 CA 证书。这里的话,我已经下载过几次了,所以文件名后面跟了(4)。点击 Chrome 界面上的菜单项,然后点击「设置」
<ignore_js_op>
1. 进入到设置页面后,拉到底部,点击「显示高级设置」。
2. 再往下拉,找到「HTTPS/SSL」项,点击「管理证书」的按钮。
3. 点击「受信任的根证书颁发机构」选项卡,再点击「导入」按钮。
4. 点击「下一步」,选择我们刚刚下载的证书。
证书存储这一步通常我们可以使用默认选项直接进入下一步。点击完成。
火狐浏览器下的导入方式
选项→高级→证书→查看证书→证书机构→导入→确定
这时便导入成功,可以尝试访问 HTTPS 网站进行测试。
监听其他终端的流量:
这里需要使用 Burp 测试手机或者其它终端的 HTTP 请求,做如下配置可以使 BurpSuite 代理监听除了本地以外的请求:方法和配置 Burp 代理相似,点击 Edit,选择 All interfaces,再点击 OK ,便完成设置了
<ignore_js_op>
查看主机地址的命令
win:ipconfig
其他:ip addr
在其它终端将 IP 设置为这台主机的地址,Windows 下使用 ipconfig 查看主机地址,其它的使用 ip addr 命令。如果是HTTPS 的请求则需要在该终端上安装上面提到的 cacert.der 证书。
拦截、修改 HTTP 请求:
<ignore_js_op>
注:火狐浏览器代理配置方式
在火狐浏览器下:选项→高级→网络→连接→设置→手动配置代理(M)→HTTP代理:127.0.0.1 端口:8080
选中SOCKS v5 不使用代理N)localhost,127.0.0.1→确定
测试地址:http://182.254.163.139/dvwa/login.php
账号admin密码password
我们实践下,如何拦截、修改HTTP请求。点击 Proxy ,在intercepter 模块下,点击「 Intercepter is off 」按钮开启请求拦截。
打开 Chrome ,将代理设置为 BurpSuite。设置好之后我们访问http://182.254.163.139/dvwa/index.php进行测试,可以看到 Burp 成功拦截到该请求。
在这可以直接在编辑框中修改这个 HTTP 请求消息,修改完之后点[Forward]或是[Interception is on]都可以放行修改后的请求消息。如果点击 Drop 则表示丢弃这条消息,Action 是用来传递这条消息到其它模块的按钮,我们可以在编辑框中使用右键也能得到与 Action 按钮同样的效果。需要备注可以在 Comment field 中填写,或是点击彩色图标为这条 HTTP 消息标记一种颜色
查看所有被代理的 HTTP 请求
<ignore_js_op>
<ignore_js_op>
查看所有被代理的HTTP请求。进入 Proxy 模块的 HTTP histor。如果需要操作其中某一条可以点击选中后右键打开菜单,可以发送到其它模块
3、Repeater 模块的使用
Burp Repeater 是一个HTTP 发包模块,通常我们使用它来重放 Proxy的请求,可以更加方便的修改包内容以及进行测试。
使用 Repeater 发送我们的第一个请求。打开 Repeater 模块我们会发现两边的文本框都是空的,这是因为它没有初始的HTTP发包模版。我们可以随便在哪复制一个我们想要请求的URL,然后右击文本框打开菜单,选择「Paste URL as Request」。
<ignore_js_op>
<ignore_js_op>
使用 Burp 的过程中最经常做的就是修改请求参数、验证输入的漏洞、验证逻辑越权,那么就可以在 Proxy 的 HTTP history 中看到所有经过 Burp 的请求。首先选中某一条,右键选择「Send to Repeater」就可以发送到 Repeater 模块了。打开 Repeter 模块可以看到我们刚刚发送过来的HTTP消息,到这之后我们便可以到这里进行修改 发包进行测试
<ignore_js_op>
4、Intruder 模块的使用
账号:admin 密码:password
Intruder模块,我们要知道Burp Intruder是一个HTTP迭代重放器,当然也包括了常见的payload生成器。通常用于密码的暴力破解、数据遍历等情景。在我们使用 Repeater 模块的时候每次只发送一个请求,而 Intruder 则会 一次性 将 payload 字典进行迭代发送请求,我们可以通过请求列表里的响应包长度和状态对出异常的HTTP请求,这个HTTP请求通常会是我们想要得到的结果。
<ignore_js_op>
开启 Burp 的代理,刷新这个页面 ,在 Proxy 的 History 中可以看到这个请求,我们将这个请求发送到 Intruder。
<ignore_js_op>
在 Intruder 中找到它,橘色部分是 Burp 自动识别的重放变量,这里自动标记的 username中的§admin§就是我们需要遍历的值,如果不是我们所需要的则可以点击右侧的「Clear $」清楚掉这些标记。
<ignore_js_op>
这里我们可以加载一些字典进行暴力破解!!(不演示)可以自己试试
<ignore_js_op>