使用BurpSuite Authz插件快速探测越权访问漏洞
- 发表于
- 安全工具
Authz插件介绍
我们平时做测试的时候发现越权问题都是基于修改ID的方式:A的ID改成B的ID然后进行请求查看是否可以越权获取到信息,或当ID的规律已知情况下基于BurpSuite Intruder模块直接去遍历ID。而基于Authz的检测是不一样的,其是将用户认证的HTTP请求头进行修改(Cookie之类的),然后通过响应长度、响应状态码判断是否存在越权;从本质上来讲没有任何区别,只是换了一个角度,但这样的好处是一定程度上的减少了测试的时间(例如:一个商城的业务系统,你有A、B账户,A账户买了个商品获得一个订单信息请求,当你想测试是否能越权获取B账户订单时就需要使用B账户去再购买,然后判断测试。)
Authz插件下载
https://github.com/portswigger/authz
快速安装->在BurpSuite的BApp Store应用市场可以直接下载安装。
Authz插件使用
使用插件检测的前提条件:同个业务系统中两个测试账号
作用:A账户用于功能的操作,B账户用于提供凭证(Cookie或者其他的用户身份凭证请求头)
举例说明
一个业务系统,将A、B账户登入,同时获取B账户的Cookie或者其他的用户身份凭证请求头,填入到Authz的New Header里:
A账户去请求(Burp别忘了监听着),寻找读取类请求(该类请求要包含ID之类的特征)然后右键请求包将该请求发送到Authz插件内:
发送的请求会在Burp的Authz的Tab标签窗口内:
当收集的差不多了,点击run跑起来,结果会在Responses处显示:
当原响应内容长度、响应状态码和被修改后请求的响应内容长度、响应状态码一致则会绿。
也就代表着存在越权,单击选择一行即可在下面展示出请求、响应的报文:
这里经过进一步检验(理论上不需要检验,但出于对测试的严谨态度还是检验一下比较好~)顺利的发现了三枚越权访问漏洞。
一个业务系统测完之后就Clear掉所有的东西,接着下一个业务系统咯。
原文连接
的情况下转载,若非则不得使用我方内容。