为方便您的阅读,可点击下方蓝色字体,进行跳转↓↓↓
- 01 chunked-coding-converter-0.4.0
- (1)工具介绍
- (2)下载地址
- (3)使用说明
- 02 captcha-killer
- (1)工具介绍
- (2)下载地址
- (3)使用说明
- 03 fakeIP
- (1)工具介绍
- (2)下载地址
- (3)使用说明
- 04 Autorize
- (1)工具介绍
- (2)下载地址
- (3)使用说明
01 chunked-coding-converter-0.4.0
(1)工具介绍
一键分块传输编码,实现文件上传,命令执行,sql注入等漏洞的WAF绕过功能。
使用过程中的体会是,遇到网站存在WAF拦截的场景可以试着尝试通过分块传输的思路去实现文件上传,命令执行,sql注入等漏洞的验证。
这类chunked 编码主要可以绕过网络层WAF,应用层WAF绕不过。因为chunked是分块传输,是在传输过程中做文章,可以绕过网络层WAF。但应用层WAF接收到的数据已经是经过Nginx、Apache这类应用程序组包过的了,能看到完整的Payload进行检测。
个别情况能绕过应用层WAF,但都是WAF自身设计缺陷,比如应用层WAF认只Content-length。有些WAF看到Content-length=0,以为是没有数据的,就直接放行了,于是造成了绕过。
(2)下载地址
https://github.com/zxl2605/chunked-coding-converter
(3)使用说明
先说明chunked 编码绕过的原理,以如下数据包为例:
POST /1.php HTTP/1.1
Host: x
Content-Type: application/x-www-form-urlencoded
Transfer-Encoding: chunked
5
a=111
8
and sel
7 0
ect 1 f
0
攻击者利用上述的编码方式,将 select 危险关键字拆分,就可以在一定程度上绕过 WAF 查杀。
其中,倒数第三行的 7 0 是 chunked 编码中对于传递行的一种注释写法,这里的空白字符实际上是\t,根据 RFC,合法的注释符有;和\t 两个。后面的 0 可以替换为 0x00 等,造成部分WAF 解析失败。这里再对参数进行图示说明,如下图所示:
安装插件后,当我们遇到存在WAF的站点时,可以鼠标右键选择“chunked-coding-converter插件”,尝试使用chunked编码方式绕过WAF。
02 captcha-killer
(1)工具介绍
一款用于图片验证码识别,实现图片验证码绕过的burp插件。
使用过程中的体会是,但遇到较为简单的图片验证码时可以进行尝试使用,captcha-killer本身无法识别验证码,它主要是调用各种验证码识别接口来进行验证码的识别并自动传参至数据包指定参数中。
(2)下载地址
BurpSuite 2020及以上版本 https://github.com/Ta0ing/captcha-killer-java8
BurpSuite 2020先前版本 https://github.com/c0ny1/captcha-killer
该插件之所以会存在2个版本主要是因为,BurpSutie高版本Java版本环境下的不兼容性,以下为作者的说明。
(3)使用说明
在BurpSuite的Extender模块中加载下载的captcha-killer.jar文件
使用burp抓取获取验证码数据包,然后右键captcha-killer -> send to captcha panel发送数据包到插件的验证码请求面板。
然后到切换到插件面板,点击获取即可拿到要识别的验证码图片内容。
可以成功获取到验证码之后,就要设置接口来进行识别了,这里以需要收费的图鉴OCR识别软件举例。
注册地址:http://www.ttshitu.com/
接口 URL:http://api.ttshitu.com:80
请求包里的username,password处值为http://ttshitu.com注册账号信息
上述步骤完成后,点击识别即可识别出验证码,可以开始进行带有验证码的账号爆破了。
首先在登录接口输入账号密码验证码抓取请求包,发送到intruder模块,使用pitchfork攻击类型,设置密码和验证码为变量,如下图所示:
上述参数设置正确后,即可进行爆破。
03 fakeIP
(1)工具介绍
fakeIP可以用于非常便捷的新增各个伪造ip的header头。用来进行伪造指定IP、本地IP、随机IP并且可以进行IP爆破的用途。
使用过程中的体会是,在短信轰炸等高并发测试中可以作为绕过服务器校验的一种尝试。
(2)下载地址
https://github.com/TheKingOfDuck/burpFakeIP
(3)使用说明
在BurpSuite的Extender模块中加载下载的fakeIP文件
主要可以使用fakeIP进行伪造指定ip、伪造本地ip、伪造随机ip、随机ip爆破。
伪造指定IP:在Repeater模块右键选择fakeIp菜单,然后点击inputIP功能,然后输入指定的IP
伪造本地IP:在Repeater模块右键选择fakeIp菜单,然后点击127.0.0.1功能.
伪造随机IP :在Repeater模块右键选择fakeIp菜单,然后点击randomIP功能。
随机IP爆破:将数据包发送到Intruder模块,在Positions中切换Attack type为Pitchfork模式,选择好有效的伪造字段,以及需要爆破的字段。
按照箭头顺序将Payload来源设置为Extensin-generated,并设置负载伪fakeIpPayloads,然后设置第二个变量。
04 Autorize
(1)工具介绍
Autorize 是一个旨在帮助渗透测试人员检测授权漏洞的扩展,这是 Web 应用程序渗透测试中比较耗时的任务之一。
使用过程中的体会是,若渗透测试过程中具备系统的高低权限账号,可以在测试开始前使用该插件进行水平越权漏洞以及垂直越权漏洞辅助测试,可以大大节约越权漏洞的测试时间并且提高测试的准确性。并且借助此插件也能发现一些未授权访问的功能点。
(2)下载地址
https://github.com/portswigger/autorize
(3)使用说明
autorize插件配置环境是jython,为确保能正常使用我们先要在Burp安装jython环境,然后从BApp Store 安装 Autorize。
jython配置环境(下载地址https://www.jython.org/download.html,下载jython Standalone版本)
打开 burp -> Extender -> Options -> Python Environment -> Select File -> 选择 Jython standalone JAR,安装配置环境
接着在Burp的bappstone中下载autorize插件后,既可以进行Autorize的使用
使用方法也较为简单,点击 fetch cookies header,会从最近一次请求历史中提取cookie,一般这里会获取低权限账号Cookie。然后我们正常使用一个高权限的账户去点击页面功能,Authorize会自动在后台使用低权限Cookie也进行数据包请求,一段时间后我们可以根据模块内的颜色信息大概进行越权以及未授权功能的判断。
接下来以垂直越权为例,我们先把pikachu靶场账户的cookie信息复制到autorize中
然后登录admin用户,点击autorize is off打开该插件(autorize is on为开启状态),然后在点击所有可以点击的接口,关闭autorize,我们得到的结果如下图所示,首先看颜色 红色存在越权,黄色代表不确定,绿色代表ok。左边一列 红色代表存在越权可能;右边一列 红色代表存在未授权访问可能;
其中modified response指更改过cookie后的响应,original response指的是原始cookie的响应,最后通过对比回显来判断是否存在越权漏洞