CTFHub-JSON Web Token-无签名

首先进入环境,发现是一个登录界面。我们随便输入个admin和1试试:
在这里插入图片描述
说明我们必须要伪造admin的身份。这里进行抓包,发现了JWT:
在这里插入图片描述
我们对JWT进行解码看看,发现header是这样:
在这里插入图片描述
payload是这样:
在这里插入图片描述
如果解码的最后面不对,可以添加等于号。因为JWT采取的是base6url编码,如果有等于号会被省略。

根据题目的提示:一些JWT库也支持none算法,即不使用签名算法。当alg字段为空时,后端将不执行签名验证。尝试找到 flag。因此我们可以尝试使用none算法,然后将payload里面的guest改为admin。
token的构造如下:

token=eyJ0eXAiOiJKV1QiLCJhbGciOiJub25lIn0.eyJ1c2VybmFtZSI6ImFkbWluIiwicGFzc3dvcmQiOiIxIiwicm9sZSI6ImFkbWluIn0.

成功获得flag:
在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/rfrder/article/details/108619373