[护网杯 2018]easy_tornado 1

考点:
1、SSTI(务器端模板注入)
2、模板中的Handler

做之前先全点一遍看看里面有啥
flag.txt:

[护网杯 2018]easy_tornado 1_第1张图片
看到一个fllllllllllllag,正好有个filename参数,带进去看看:
[护网杯 2018]easy_tornado 1_第2张图片
好吧,我想多了。。
再看一下第二个文件:welcome.txt
[护网杯 2018]easy_tornado 1_第3张图片
它提示了一个单词:render,题目中也告诉了我们是tornado,所以想到SSTI,但想到了是一回事,会不会做又是另一回事,=_=,咱先不着急,先把第三个文件看完:hints.txt
[护网杯 2018]easy_tornado 1_第4张图片
这玩意应该就是filehash的参数了,filename知道,但里面这个cookie_secret是个啥,应该需要我们找出来。
第一步先找一下注入点在哪?
回想一下我们在flag.txt中有一个报错页面,在里面试试有没有注入点
[护网杯 2018]easy_tornado 1_第5张图片
我们传了个2,它返回了个2,说明这边应该有注入点。

但这cookie_secret在哪呢,不清楚那就上网查查呗:cookie.、Tornado小记 – 模板中的Handler.

最后一连串下来大概就是cookie_secret在项目的Application中,而handler 指向RequestHandler

且RequestHandler.settings又指向self.application.settings
所有handler.settings就指向RequestHandler.application.settings了,
在这里插入图片描述
我们在handler.settings中就能找到cookie_secret了。
在把他们加密一下:

md5(cookie_secret+md5(filename))

参考:
wow小华
Tornado小记 – 模板中的Handler

你可能感兴趣的:(BUUCTF,tornado,python,安全)