本文内容来自蚁景网安课程。
Burp Suite工作原理
前期配置
配置Burp Suite和设置浏览器代理。
在proxy-options中可以看到默认端口为8080,也可以点击"Add"添加其他端口。
在浏览器设置中搜索“代理”,开启使用代理服务器,按照Burp中的内容设置地址和端口。
在Burp中打开Intercept is on。
打开浏览器访问网站,Burp就会截获请求,再点击Forward把请求发送给服务器,并将响应记录下来。
了解Burp Suite基本功能
模块总览
Dashboard:用于显示Burp Suite的工作信息。
Target:显示目标目录结构。
Proxy:拦截HTTP/HTTPS的代理服务器,作为一个在浏览器和目标服务器之间的中间人,允许拦截,查看,修改两个方向上的原始数据流。
Intruder:一个定制的高度可配置的工具,对Web应用程序进行自动化攻击,如:枚举标识符,收集有用数据,以及使用fuzzing技术探测常规漏洞。
Repeater:用于重复发送相同的HTTP请求,并分析应用程序相应的工具。
Comparer:通过一些相关请求或响应得到两项数据的可视化差异。
Comparer模块
Comparer模块可以将不同的数据包进行比较,在截获的数据包右键Send to Comparer,这时Comparer模块中上下都出现了这条记录。
再将另一条Send to Comparer,在上下区域分别选择这两条,然后选择右下角的Words(Bytes指按照字节流来比对)。
Repeater模块
将截获的请求Send to Repeater,在Repeater模块中选择Send,右侧就会返回服务器的响应。(Send次数无限制。)
使用Repeater的目的是进行重放攻击测试,看服务器是否会对重放测试做出反应。
Intruder模块
Intruder模块包括四个选项卡:Target、Positions、Payloads、Options。
Target
用于设置暴力破解的host地址和端口号。
Positions
用于设置暴力破解的位置。默认情况下Burp会选中所有变量,如果要选择特定变量,则要选择clear$,然后再用鼠标选中需要暴力破解的变量值,并在右边选择add$添加爆破点,payload位置为两个$之间的部分。
Sniper
狙击手模式:对标记变量依次进行爆破。
特点:不管添加多少个标记位,只有一个字典。
Battering Ram
攻城锤模式:可对多个变量同时破解。
特点:一个字典对于多个标记位。
Pitchfork
草叉模式:每一个变量对应一个字典。
特点:爆破次数取决于变量少的字典。
Cluster Bomb
集束炸弹模式:组合爆破,每个变量对应一个字典,并交集爆破。
特点:爆破次数为字典1x字典2.
Payloads
用于选择字典或payload,视具体情况选择。如果有合适的字典,可以选择类型为simple list,然后load相应的字典文件。
Options
有关于其他细节的设置,包括攻击中使用的线程数、存储设置等等。
实际操作
想要截获HTTPS数据包需要安装Burp的证书。
打开127.0.0.1:[代理端口]
,下载CA证书,在浏览器设置中搜索“证书”,选择管理证书-受信任的根证书颁发机构-导入,即可顺利安装证书。
打开合天提供的网站,已知用户名为admin,密码随便填,选择“登陆”,并将Burp抓到的数据包Send to Intruder。
在Target中设置HOST和端口号。
在Positions中选择“password=”后面的内容为爆破点。
Payloads选择simple list并导入口令字典。
选择Start Attack,将结果按Length排序。
推测密码为“123456”。
成功,得到flag。