涨姿势之python Tornado 框架的注入

开篇名义:今日遇到一题,无输入框与之输入,无url以进行参数传递。唯有三文本:

一曰:

二曰:

三曰:

开宗明义,唯有视其url寻求线索:

http://111.200.241.244:52104/file?filename=/flag.txt&filehash=cfab8f31ead1b4ec6fd5d2894f159d94

可见:参数其一为文件名,参数其二为文件名之hash函数

见其hash函数遂寻至图三方得加密方式:

md5(cookie_secret+md5(filename))

如一图之见解可知flag竟在fllllllg文档之中,则需构造playbode:

http://111.200.241.244:52104/file?=/fllllllllllllag&filehash=****************

则须知其cooike供已加密,方可拨开云雾见月明。

有图二之提示尚未用之遂看之:

见其renden但让百思不得其解。

彼时见得题目描述发现了该题借与tornado渲染之。遂查资料:

资料曰:

这两个{{}}和这个字典对象也许大家就看出来了,没错就是这个handler.settings对象
handler 指向RequestHandler

而RequestHandler.settings又指向self.application.settings

所有handler.settings就指向RequestHandler.application.settings了!

大概就是说,这里面就是我们一下环境变量,我们正是从这里获取的cookie_secret

看题目的错误页面

意为:借msg传递参数,进行信息回传如果我们想要获得所有的变量那我们便需要使用{{handerlel.settings}}借此传递该参数进行环境变量的回显。

则便可以进行cookie信息的获取。

实验如下:

成功那接下来就不用多说了。

在这里想分享一句看来的话:web安全就是不要相信用户在文本框中输入的所有东西。

 

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 4
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值