AuthLab通关记录
一个在线的权限靶场:https://authlab.digi.ninja/
靶场内容比较简单,包括了JWT以及一些基本情况的权限Bypass
IP Based Auth Bypass
该关卡根据提示有一个ip在192.168.0.100-200范围里可以直接bypass

拦截请求包修改X-Forwarded-For爆破即可,最终知道ip为192.168.0.14

Timing Attacks
该关卡是判断用户名存不存在,直接字典爆破根据时间判断即可。一共存在四个用户

Client Side Auth
该关卡在前端JS做了认证校验,因为发包都拦截不到[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

如下clientside.js做了校验

看一下xorString (concat, secret)输出了什么

输出了一段类似username:password的字符串
sid:ThisIsLongSecurePassword
尝试登录,登录成功

Leaky JWT
该关卡给了一段JWT

对该段密文尝试解密,可手动base64解密或使用工具

在线解密

在JWT的payload部分存在username和password
其中password又进行了md5加密,对其进行解密

尝试joe:Password1登录,登录成功

CVE-2019-7644 - JWT Signature Disclosure
该关卡给了JWT让我们以管理员身份登录

给的JWT,更改level为admin

得到新的JWT

eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJsZXZlbCI6ImFkbWluIiwidXNlciI6InNpZCJ9.9BimtJvIH0zI1HY6bTEcgErftlYqtU5G4d021xVd8YA
带着新JWT登录报了异常,在异常中泄露了签名

替换泄露的签名
eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJsZXZlbCI6ImFkbWluIiwidXNlciI6InNpZCJ9.FO8ZDKSDNVnt_VB3f35_ofEMGFDTrv0dVo8hjGXDtn8
成功登录

JWT None Algorithm
该关卡需要用到bp的插件

在burp中发现存在JWT的url

发送重发器利用插件将算法改为none

none类型不被允许
换成None类型成功以admin身份登录

User Agents

修改User-Agent为authlab desktop app



















