[护网杯 2018]easy_tornado

前言

最近也是学了一点模板注入,就在buu上做了一道相关的题目,在此记录一下。

题目

打开题目有三个txt,flag.txt中告诉了flag的文件名。

 welcome.txt中给了render,这是一个渲染函数。hints.txt给了本题的关键。

其实看url就会发现有两个参数,一个是filename,一个是filehash。这么这个md5加密的结果就是filehash参数的内容。filename是我们已知的,那么就需要知道cookie_secret的值,那这个东西是什么呢?百度搜索。

一搜就搜到payload了,但是还是要知道基本原理。在python shell中执行代码将生成个随机的cookie_secret。它是存在于settings中的,而settings又被作为参数传入到了Application构造函数中,所以是可以通过self.application.settings获取到cookie_secret的内容。但是,到目前为止还不知道模板注入的传参点在哪?直接访问/fllllllllllllag就会出现传参点啊,之前没找到看wp的,还得多尝试才会有惊喜。

那我们就把 self.application.settings传入,失败了,这里需要通过handler类来访问。其实self.application.settings也叫做RequestHandler.settings。

那么可以认为handler是指向ResquestHandler对象的,所以说,可以直接handler.settings来获取到cookie_secret的内容了。成功得到。

 

再根据提示两次md5加密传参得出最终的flag。 (md5加密网址:MD5在线加密 - MD5加密工具 - MD5在线生成

相关链接:模板注入STTI,获取cookie_secret - 码农教程 (manongjc.com)

                   初识tornado.web.RequestHandler_Simba_Scorpio的博客-优快云博客

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

XiLitter

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值