[护网杯 2018]easy_tornado 1
仅记录一下写提过程和思路(虽然思路没得用)
发现三个文件,挨个打开看看
打开/flag.txt知道flag在/fllllllllllllag文件中
由网址可知,想打开文件需要filename和filehash参数
其中filename参数是文件名:/fllllllllllllag
一开始不知道hints.txt是啥东西,查了一下hints的中文意思发现是‘提示’,那提示的不就是filehash(file哈希)咯
但是又出现问题,我们如何获取cookie_secret呢?
实在是想不出来,只能看看别的大佬的wp了
当我们把filehash的值改后,发现出现了error?msg=Error
并且页面就是输入msg的值
cookie_secret在Application对象settings的属性中 ,访问它的话就需要知道它的属性名字
根据wp和文档可知:self.application.settings有一个别名是RequestHandler.settings
其中handler又是指向处理当前这个页面的RequestHandler对象
RequestHandler.settings指向self.application.settings
因此handler.settings指向RequestHandler.application.settings
所以handler.settings带入msg中(仍然没有弄懂handler.settings如何获取的)
可以参考文献python-flask模块注入(SSTI) - ctrl_TT豆 - 博客园 (cnblogs.com)
就得到了cookie_secret
如何网页寻找一个md5加密网址或者编写一个md5加密脚本
然后得到filehash
得到flag