在上⼀遍⽂章《这份渗透神器Burp Suite使用指南,送给作为新手的你!》中,给⼤家介绍了Burp Suite的安装以及目标模块、代理模块、爬⾍模块。在这篇⽂章中,我们再介绍关于Burp Suite的其他模块以及使⽤⽅法。
1. 扫描功能
扫描模块⽤于⾃动检测漏洞,分为主动扫描和被动扫描。Burp Suite可以对某⼀个URL或者全站进⾏扫描。
如果只需要扫描某⼀个单⼀Web⻚⾯,我们可以通过Intercept将拦截到的请求执⾏"Do an active scan",具体操作如下图所示:
如果需要对全站进⾏扫描,我们可以先通过Spider爬取到站点地图,然后在Target的Site map⾥⾯选择需要扫描的⽬标,⿏标右键右击选择"Actively scan this host",具体操作如下图所示:
点击之后会弹出主动扫描向导,我们可以选择删除不需要扫描的⻚⾯,提升扫描速度。主要包括以下规则:
-
Remove duplicate items:删除重复选项
-
Remove items already scanned:删除已扫描选项
-
Remove out-of-scope items:删除不在scope的选项
-
Remove items with no parameters:删除没有参数的选项
-
Remove items with media responses:删除有media响应的选项
-
Remove items with the following extension:删除有以下扩展名的选项
具体如下图所示:
单击next会显示需要扫描的⻚⾯:
点击OK,则会开始主动扫描。在扫描过程中,如果扫描到登录表单,Burp Suite会提示你输⼊登录信息,可以选择登录,也可以选择放弃。
在Scanner模块,包括五个选项,分别是Issue activity、Scan queue、Live scanning、Issue definitions和Options。
Issue activity:显示扫描到的漏洞信息。
Scan queue:显示扫描任务,可以看到任务扫描状态,发现问题数⽬等信息。
Live scanning:可以看到当前扫描⽅式以及扫描范围。
Issue definitions:问题释义,⽤来对扫描到的问题或者漏洞进⾏描述。
Options:选项,⽤来对Scanner进⾏设置,主要包括五个模块:
Attack Insertion points:参数扫描选项,可以设置URL、cookie等参数。
Active Scanning Engine:主动扫描设置,可以设置主动扫描线程、超时和最⼤请求连接数。
Active Scanning Optimization:主动扫描优化,可以设置主动扫描速度和精准度。
Scan Issue:扫描问题设置,可以设置扫描类型,针对不同问题的扫描强度。
Static Code Analysis:设置可执⾏代码的静态分析的扫描类型。
2. ⼊侵功能
⼊侵模块根据检测到的可能存在的漏洞,调⽤攻击载荷,对⽬标进⾏攻击。⼊侵模块的原理是根据访问链接中存在的参数或者变量,调⽤本地词典、攻击载荷对⽬标进⾏攻击。
Intruder⼯作原理是在拦截到的请求包中,通过修改请求参数来获取不同的应答。在每⼀次请求中,Intruder通常会携带⼀个或多个有效payload,在不同位置进⾏攻击重放,通过对⽐应答来分析获得需要的信息。Intruder可以实现标识符枚举、模糊测试、SQL注⼊,⽬录遍历等。
接下来我们对OWASP靶机的DVWA登录界⾯通过Intruder实现爆破,字典我们使⽤Burp Suite⾃⽣成的字典。该演示只为了实验,⼤家请勿⽤于其他⾮法操作。具体实现过程如下:
第⼀步:将拦截到的DVWA的登录请求发送到Intruder,如下图所示:
第⼆步:配置Attack type选择攻击类型,分为四种攻击类型:
Sniper:对变量依次进⾏破解
Battering ram:对变量同时进⾏破解
Pitch fork:每个变量使⽤⼀个字典
Cluster bomb:每个变量使⽤⼀个字典,进⾏交集破解
在这⾥我们选择Cluster bomb,如下图所示:
第三步:清除已有参数,重新配置变量。我们先单击Clear按钮清除已有参数,再通过Add按钮重新设置变量,如下图所示:
第四步:设置字典。在Payloads设置⾥⾯,有四个区域:
Payload Sets:有以下两个选项。
-
Payload set:针对指定变量进⾏配置
-
Payload type:常⻅的有Simple list(简单列表)、Numbers(数字列表)、Dates(⽇期列表)、Runtime file(运⾏时读取⽂件)。
Payload Options:默认为Simple list,不同设置的Payload type,此字段不同。
Payload Processing:对字典每⾏的字符串进⾏处理,可以进⾏MD5加密,字符串截取,加⼊前缀、后缀等操作。
Payload Encoding:对字符进⾏URL转码。
在这⾥,我们Payload set选择2,Payload type选择Brute force(暴⼒破解),Payload Option设置如下图所示:
第五步:设置Option模块。在此模块中,可以配置请求线程、请求结果集格式等,在本实验中,我们Option使⽤默认配置即可,如下图所示:
第六步:配置完成之后,我们通过点击Start attack进⾏扫描,过程如下图所示:
只要⼤家花时间去等待Intruder扫描,最终是可以得到DVWA登录的⽤户名和密码的。
3. 重放功能
重放模块⽤于实现请求重放,通过修改参数进⾏⼿⼯请求回应的调试。Repeater属于HTTP请求编辑⼯具,可以随意更改HTTP请求进⾏测试。在这⾥我们仍然对登录DVWA的HTTP请求包通过Repeater进⾏修改,来查看修改后的回复内容,如下图所示:
我们对⽤户名和密码进⾏修改,修改完成之后通过点击go按钮,发送请求给靶机,然后查看回复内容,如下图所示:
4. 序列器功能
序列器模块是⼀种⽤于分析数据样本随机性质量的⼯具。可以⽤它测试应⽤程序的会话令牌,密码重置令牌是否可预测等场景,通过Sequencer的数据样本分析,能很好地降低这些关键数据被伪造的⻛险。我们仍然使⽤DVWA的登录⻚⾯进⾏测试,如下图所示:
点击Start live capture开始分析,分析过程如下图所示:
5. 拓展功能
拓展模块是burpsuite⾮常强悍的⼀个功能,也是它跟其他Web安全评估系统最⼤的差别。通过拓展模块,可以加载⾃⼰开发的、或者第三⽅模块,打造⾃⼰的burpsuite功能。通过burpsuite提供的API接⼝,⽬前可以⽀持Java、Python、Ruby三种语⾔的模块编写。我们在BApp Store⾥⾯找到CO2插件安装,然后就可以结合SQLmap来实现SQL注⼊了,这个案例我们后⾯在实战部分再给⼤家演示。
6. 解码功能
解码器模块⽤于实现对URL、HTML、Base64、ASCII、⼆/⼋/⼗六进制、哈希等编码转换,并⽀持多次编码解码操作。如下图所示:
7. 对⽐功能
对⽐模块⽤于对两次不同的请求和回应进⾏可视化对⽐,以此区分不同参数对结果造成的影响。我们使⽤两个相同的DVWA主⻚的请求包来做对⽐,给⼤家演示⼀下Comparer功能。先把请求包发送给Comparer模块,如下图所示:
然后在Comparer模块中,通过Word或者Bytes进⾏⽐较,如下图所示:
8. 选项功能
分为Project/User Options,主要对软件进⾏全局设置。这个可以根据需求⼤家⾃⾏设置,⼀般情况下使⽤默认设置即可。Burp Suite的所有模块我们就介绍完成了,下篇⽂章我们通过Burp Suite来进⾏SQL注⼊。
——END——
技术交流群1:
添加班主任微信 qiuzhiquanquan 或 qqls000
加入微信群
技术交流群2:
添加班主任QQ 1724698994 或 1752856301
加入QQ群(240920680)
文章来源: 拼客学院订阅号
- 还没有人评论,欢迎说说您的想法!