考点:
JWT编码解码
伪造session
启动环境:
提示登录查看内容,首先注册并登陆:
登陆成功后可以上传文件,并提示最大为1M:
尝试传入一句话木马等内容:
上传文件均显示服务器错误,可能不是文件上传漏洞,再次收集信息:
发现网站存在robots.txt:
访问得到:
给出了SECRET_KEY的值,猜测为session伪造,查看session:
发现Cookie中存在username=admin,并且其存在session,尝试构造admin的session
eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJ1c2VyIjoidGVzdCJ9.bDVu04cvIiwbY7K0ZoqzvPiIL2CKyF4loApBGUCflFo
首先解密session,其开头为eyJ,猜测其为JWT(JSON WEB TOKEN):参考资料
使用在线JWT编码解码,得到原内容:
将其中的"user": "test"修改为:"user": "admin",将刚刚得到的SECRET_KEY填入,重新生成jwt:
eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJ1c2VyIjoiYWRtaW4ifQ.g_lGU4qTO2VhNrZK9k460xz828GcqKBayZPcmLmhUqE
使用F12中的Application修改session的值:
刷新页面后,成功以admin用户身份登陆:
其中有一个:flag.png:
<img class="p-2" style="width:150px;height:150px" src="static/128e8ea7ce4a37b7100fb40b28c01280/flag.png" alt="flag.png">
1
新标签页访问:
查看源码得到flag:
原文来自CSDN博主「Senimo_」|侵删
原文始发于微信公众号(寰宇卫士):BUUCTF [RootersCTF2019] ImgXweb-解题步骤详解
- 左青龙
- 微信扫一扫
- 右白虎
- 微信扫一扫
评论