鉴权场景的应用
1.工具准备
需要提前安装好Auth Analyzer插件,安装方法如图所示:
由于Burp代理需要设置系统代理和浏览器代理,为了方便起见,可以使用Burp Suite内置浏览器(已经开启了代理)。
注意,这个Open Browser旁边的旁边按钮最好设置为Intercept is off(否则Burp将会拦截所有请求,需要一个个请求手动点击Forward)。
2.环境准备
使用Burp内置的浏览器登录一个具有完全权限的账号,使用其他的浏览器登录一个不具有任何权限的账号,并获取这个无权限账号的Token,注意需要连同前面的"token: "一起复制。
在Burp Suite工具中找到之前安装的Auth Analyzer,点击New Session按钮,假设将其命名为new_session点击确定,并将复制的token粘贴到"Header(s) to Replace"框内:
点击右侧的“Analyzer Stopped”按钮直至其变成Analyzer running。
此时该插件会将内置浏览器(我们在上面登录了拥有完全权限的账号)的所有请求头的Token部分替换为刚刚粘贴的token值(即无权限账号的Token)。
然后我们只需要使用内置浏览器中运行的完全权限账号对页面进行相应的操作,所有请求和响应都会被Burp捕获并分析。
3.输出结果分析
该插件本质上是将token修改前以及修改后的两个请求分别发送,并比较对应的两条响应是否相同。对于需要鉴权的接口,有权限token和无权限token的响应本该是不同的。因此对应的结果应该为绿色的DIFFERENCE而不是红色的SAME。
点击分析结果最下方的Export Table Data可以导出为HTML/XML:
4.适用场景分析
BurpSuite安装了这个插件后,非常适合通过在UI界面上操作来捕获接口,但是对于无法通过UI访问的接口,还是得使用Swagger(需要在Burp内置浏览器中运行)来调用。
无法通过UI访问的接口,还是得使用Swagger(需要在Burp内置浏览器中运行)来调用。