打开后得到三个文件目录
这个提醒了flag的位置:在fllllllllllllag之中
hint.txt中出现了ookie_secret,结合分析应该是解题切入点。
由于是初步接触tornado上百度搜了一下
发现其是python的web框架,并且存在可以读取配置文件的漏洞(文件配置漏洞参考: Web漏洞-任意文件读取漏洞_任意文件读取属于什么漏洞_Ays.Ie的博客-CSDN博客)
welcome.txt则提醒了render函数,百度一下发现是一个渲染函数,涉及SSTI(可参考之前所发SSTI专题)
任意的改变filehash的值,发现报错
验证确实为tornado模板注入漏洞,于是百度查找资料构造pyload:
在tornado模板中,存在一些可以访问的快速对象,这里用到的是handler.settings,handler
指向RequestHandler,而RequestHandler.settings又指向self.application.settings,所以handler.settings就指向RequestHandler.application.settings了,这里面就是我们的一些环境变量
msg={{handler.settings}}
得到cookie_secret值为 093f86c7-dcc5-4301-902c-527f91f46844
再按照题目所描述的写一个python的脚本解密即可得到flag