0x01

进入网站,发现3个文件

逐一查看

flag.txt

url:?filename=/flag.txt&filehash=d3f3ff3f92c98f5f0ff4b8c423e1c588

welcome.txt

url:?filename=/welcome.txt&filehash=5eb47a32caebeb0573e9c7b4855ed21d

hints.txt

url:filename=/hints.txt&filehash=c29ae3750aeaa92cc6ee247785c661e7

0x02 分析

url为?filename=文件名&filehash=hash值构成

而hash值由md5(cookie_secret+md5(filename))构成

已知flag在/fllllllllllllag中

那么只要知道cookie_secret,便得出flag

存在服务器模板注入

使用handler.settings对象得到 cookie_secret

{'autoreload': True, 'compiled_template_cache': False, 'cookie_secret': 'd979c023-0408-4cfd-bbb3-adff7ab5e408'}

构造payload

cookie_secret:d979c023-0408-4cfd-bbb3-adff7ab5e408

md5(/fllllllllllllag):3bf9f6cf685a6dd8defadabfb41a03a1

md5(合并)

得到md5值:07d0fdc73eb7a22787adfe04f375bf2a

构造,得出flag

?filename=/fllllllllllllag&filehash=07d0fdc73eb7a22787adfe04f375bf2a

参考链接:

https://blog.csdn.net/zz_Caleb/article/details/101473013/

https://www.cnblogs.com/joker-vip/p/12511948.html

easytornado的更多相关文章

  1. 攻防世界 WEB 高手进阶区 easytornado Writeup

    攻防世界 WEB 高手进阶区 easytornado Writeup 题目介绍 题目考点 Python模板 tornado 模板注入 Writeup 进入题目, 目录遍历得到 /flag.txt /w ...

  2. 攻防世界 easytornado

    easytornado 进入环境就这样子 我们逐一访问看看 进入flag.txt提示flag in /fllllllllllllag我们访问fllllllllllllag看看 报了一个error,且在 ...

  3. 攻防世界 - Web(三)

    PHP2: 1.进入页面,进行抓包或后台扫描都没有什么发现,然后网上查一波wp,发现是关于.phps文件,进入index.phps,弹出一段代码,查看源代码, <?php if("ad ...

  4. SSTI

    最牛bypass:https://blog.csdn.net/solitudi/article/details/107752717 SSTI的奇怪绕过姿势:https://blog.csdn.net/ ...

随机推荐

  1. C#集合类型——Hashtable、Dictionary之浅谈

    Hashtable表 数组.数组集合.List集合都是通过索引来访问里面成员.哈希表则是通过键来访问成员值.键不可为空,值可为空. 比如: Hashtable  hash=new  Hashtable ...

  2. 基于 Python 的自动文本提取:抽象法和生成法的比较

    我们将现有的 提取方法(Extractive)(如LexRank,LSA,Luhn和Gensim现有的TextRank摘要模块)与含有51个文章摘要对的Opinosis数据集进行比较.我们还尝试使用T ...

  3. 聊一聊JSONP和图像Ping的区别

    JSONP 在讲 JSONP 之前需要再来回顾一下在页面上使用 script 引入外部的 js 文件时到底引入了什么? 先建立一个 index.js 文件. console.log(123) 再建立一 ...

  4. 大数据Hbase相关运维题

    1.启动先电大数据平台的 Hbase 数据库,其中要求使用 master 节点的RegionServer.在 Linux Shell 中启动 Hbase shell,查看 HBase 的版本信息.(相 ...

  5. php://input和parse_str()使用

    php://input可以读取没有处理过的POST数据,总结起来就是, 在用$_POST获取不到由APP或者一些接口的回调数据时,就用php://input试试 实例 index.php <fo ...

  6. CentOS 7.4 安装网易云音乐

    1.下包–>网易云音乐 Ubuntu14.04(推荐14.04依赖包网上能找到) 提示:16.04有部分依赖包还找不到,有兴趣可以自行打包RPM安装. 2.解包 (1)使用 ar -vx解压ub ...

  7. 用libevent写的海康摄像头rtsp客户端

    之前一直使用live555作为RTSP的客户端,但其框架臃肿,虽然支持各种格式,但实际中并没有这些需求,关键是其注重于格式的解析,却不注重网络IO,单线程下性能也不高,重新用libevent编写rts ...

  8. 使用SWIG将C++接口转换成Java接口

    PS:此文章仅作为个人记录使用,代码属于私密,故无法公开: 以C++类classifier为例,文件保存于百度网盘 https://pan.baidu.com/s/1c2AwhaS(需密码) 系统:U ...

  9. Codeforces Round #622 (Div. 2) 1313 C1

    C1. Skyscrapers (easy version) time limit per test1 second memory limit per test512 megabytes inputs ...

  10. CodeForces - 1058D D. Vasya and Triangle

    D. Vasya and Triangle time limit per test1 second memory limit per test256 megabytes inputstandard i ...