栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Python

[护网杯 2018]easy

Python 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

[护网杯 2018]easy

前言

最近也是学了一点模板注入,就在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的博客-CSDN博客

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/987244.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号