[护网杯 2018]easy_tornado
打开之后看到几个文件夹分别提示
/flag.txt flag in /fllllllllllllag
/welcome.txt render
/hints.txt md5(cookie_secret+md5(filename))
尝试对file传参跳到
/error?msg=Error 显示Error
tornado、render、error=error,马上想到ssti。然后开始尝试,发现ban了很多符号
",‘,(,),_,%,*,+,-,/,=,[,],\,|
但是 /error?msg={{1.}} 确实可以执行,确定是SSTI,这个 ( ) [ ] _ 全给过滤了,看来只能想别的办法了。。
通过膜拜大佬博客发现cookie_secret在Application对象settings属性中,还发现self.application.settings有一个别名
handler指向的处理当前这个页面的RequestHandler对象,
RequestHandler.settings指向self.application.settings,
因此handler.settings指向RequestHandler.application.settings。
/error?msg={{handler.settings}}
=>
{‘autoreload‘: True, ‘compiled_template_cache‘: False, ‘cookie_secret‘: ‘d86e367b-ba3b-45ef-896c-9430132abe87‘}
然后根据md5(cookie_secret+md5(filename)),得到/fllllllllllllag访问的哈希,最后拿到flag,
原文地址:https://www.cnblogs.com/Rainsw0rd/p/12685772.html
时间: 2024-10-30 20:23:40