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. ViewDragHelper的点击事件处理

    在上一篇ViewDragHelper的介绍后,已经完成了自定义控件SwipeLayout的滑动,这一篇,我们来处理它的点击事件.之前提到过,它有两个子view,最开始显示的是surfaceLayout ...

  2. JavaScript之预编译

    javascript是一种解释性弱类型语言,在浏览器中执行时,浏览器会先预览某段代码进行语法分析,检查语法的正确与否,然后再进行预编译,到最后才会从上往下一句一句开始执行这段代码,简单得来说可以表示为 ...

  3. Java IO 流 -- 数据流和对象流 DataOutputStream ObjectOutputStream

    DataOutputStream 和 ObjectOutputStream的共同点是: 1.写出后读取 2.读取顺序和写出一致 数据流操作: // 写入 ByteArrayOutputStream b ...

  4. shell脚本:备份数据库、代码上线

    备份MySQL数据库场景:一台MySQL服务器,跑着5个数据库,在没有做主从的情况下,需要对这5个库进行备份 需求:1)每天备份一次,需要备份所有的库2)把备份数据存放到/data/backup/下3 ...

  5. css中的宽和高

    width width表示宽 height height表示高 max-width.min-width max-width表示最大宽度 min-width表示最小宽度 max-height.min-h ...

  6. php header() 常用content-type

    //定义编码 header( 'Content-Type:text/html;charset=utf-8 '); //Atom header('Content-type: application/at ...

  7. Nmap详细用法

    探测主机存活 (1)-sP :进行ping扫描 (2) -sn: ping探测扫描主机, 不进行端口扫描 (3)-sA     发送ACK探测存活 端口扫描 (1) -sS :半开放扫描 (2) sT ...

  8. 基于centos7搭建kvm

    其他的和安装一般的系统没有差别 安装完成后. 1]使用ping www.baidu.com 2]修改静态ip,也可以不修改 3]下载brctlyum -y install bridge-utils 4 ...

  9. [Qt] 打开Diskmgmt

    QProcess mOpenDiskMgmt; QString program = "cmd"; QStringList arguments; arguments << ...

  10. 使用IBM Blockchain Platform extension开发你的第一个fabric智能合约

    文章目录 安装IBM Blockchain Platform extension for VS Code 创建一个智能合约项目 理解智能合约 打包智能合约 Local Fabric Ops 安装智能合 ...