Authentication Lab | Leaky JWT
关注这个靶场的其他相关笔记:Authentication Lab —— 靶场笔记合集-CSDN博客
0x01:Leaky JWT 前情提要
本关的考点是 JWT(Json Web Token)漏洞,JWT 是一个用于跨域认证的技术。如果你不了解 JWT,可以参考这篇文章:JWT 详解。
经过签名的 JWT 虽然看起来很像是一串经过复杂加密的数据,然而实际上,保存数据的部分(Payload)仅仅只经过了普通的 Base64URL 编码,很容易就被解密。
如果开发者将用户的敏感数据存储在其中,很容易就会被攻击者直接获取明文数据。
0x02:Leaky JWT Write UP
进入靶场,可以看到,它给了我们一个 JWT 的数据,还有一个登录框,盲猜就是要通过这个 JWT 解密出用户名和密码,来完成登录:
复制上面 JWT 的内容去 JWT 官网(http://jwt.io)进行解密:
我们成功获取了明文的用户名,但是密码似乎经过了加密,一眼定真为 MD5 加密。接下来,我们去 md5在线解密破解 进行 MD5 解密:
解密得到 Password 为 Password1
,现在我们成功获得了用户的用户名与密码: joe:Password1
,使用该用户名与密码去靶场登录,成功过关: