ctfshow jwt(web345-350)已完结
web345
打开题目,只有一个where is flag?
用bp抓包一个,发现cookie有一串特别长的东西
eyJhbGciOiJOb25lIiwidHlwIjoiand0In0.W3siaXNzIjoiYWRtaW4iLCJpYXQiOjE3NTY1NDEyMzcsImV4cCI6MTc1NjU0ODQzNywibmJmIjoxNzU2NTQxMjM3LCJzdWIiOiJ1c2VyIiwianRpIjoiZjEwYzg5ZWY1MjdkNTE2YmYwZWM4ZDAzODE1YTgyZjMifV0 |
用base64解码一下,发现
{"alg":"None","typ":"jwt"}.[{"iss":"admin","iat":1756541237,"exp":1756548437,"nbf":1756541237,"sub":"user","jti":"f10c89ef527d516bf0ec8d03815a82f3"}] |
将user修改为admin,重新编码,发送回cookie,得到flag
web346-347
跟上一题一样抓包,用base64解码一下
发现这次后面多了很多乱码,这是说明进行过加密
放入在线jwt解析网址,对称加密123456,将user修改为admin,重新加密回去
发回cookie,得到flag
web348
题目提示爆破,我们使用c-jwt-cracker工具进行爆破
./jwtcrack eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJhZG1pbiIsImlhdCI6MTc1NjU0Mjg1MywiZXhwIjoxNzU2NTUwMDUzLCJuYmYiOjE3NTY1NDI4NTMsInN1YiI6InVzZXIiLCJqdGkiOiJiNmU3Y2FkNTg2NzU3ZjU1YTI0NGZmMTIxNjI3ODUwMSJ9.hdMlqVnQEhQmqB2UdwPL4-Hr8iKqb0AMaTT16rLWRcA |
显示密码aaab,用在线jwt网站,对称加密,发回cookie,得到flag
web349
题目给了附件
/* GET home page. */ |
发现有公钥和私钥的泄露,下载得到公钥和私钥
将公钥和私钥填入,修改user,发回cookie,得到flag
web350
这里能得到公钥,但找不到私钥
应该是对称密码,附上exp,将RS256加密改为HS256
import jwt |
得到jwt,发回cookie。post请求,得到flag
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来源 REZEのblog!