攻防世界-web-easytornado

题目描述:Tornado 框架。打开链接是一个简单的界面

1. 思路分析

看到有个/flag.txt,我们点击进去看下

发现传入了两个参数,一个是filename,还有一个是filehash

看到里面的内容,提示我们真正的flag在 /fllllllllllllag中

因此,读取到 /fllllllllllllag就可以获取到真正的flag了,但是我们现在只知道文件名,并不知道对应的hash值,那么无法简单的通过请求进行处理

如何获取对应文件的hash值呢,看下其它两个文件

这里面提到的渲染还有计算hash值的方法,这里要如何利用呢?

由于对Tornado 框架了解较少,因此这里还是参考了网上资料才知道了漏洞原理。如果对该框架有一定了解的同学在看到上面的线索后应该很容易就能解出来了。该漏洞原理涉及到Tornado 框架本身 :

Tornado render是python中的一个渲染函数,也就是一种模板,如果用户对渲染的内容可控的话,那么可以通过render执行相应的代码,该框架中存在一些重要的配置对象可以被快速访问到,比如:handler.settings(参考:python SSTI tornado render模板注入_render tornado_multi4的博客-CSDN博客

ok。到了这里,题目就比较清晰了:

1.1 通过模板注入获取到关键信息cookie_secret

1.2 算出文件的hash值

1.3 获取文件内容

2. 解题过程

2.1 利用模板注入获取到cookie_secret

http://61.147.171.105:49529/error?msg={{handler.settings}}

我们获取到cookie_secret为64a44808-f4db-408c-8d56-b2b6adf380fa

2.2 计算 /fllllllllllllag 的文件hash值(这里计算的时候要用echo -n)

2.3 计算出文件hash值之后,然后传入filename和filehash获取文件内容即可

获取到flag为flag{3f39aea39db345769397ae895edb9c70}

总结: 这道题提示很清晰,但是需要一定的背景知识,关键点在于利用Tornado 框架进行模板注入获取关键信息cookie_secret,获取到之后就很容易解出来了

相关推荐
闲人编程3 小时前
Python在网络安全中的应用:编写一个简单的端口扫描器
网络·python·web安全·硬件·端口·codecapsule·扫描器
智驱力人工智能6 小时前
基于视觉分析的人脸联动使用手机检测系统 智能安全管理新突破 人脸与手机行为联动检测 多模态融合人脸与手机行为分析模型
算法·安全·目标检测·计算机视觉·智能手机·视觉检测·边缘计算
网安小白的进阶之路9 小时前
A模块 系统与网络安全 第四门课 弹性交换网络-5
网络·安全·web安全
sadandbad11 小时前
[vulhub靶机通关]DC-2(rbash绕过_git提权)
网络·sql·web安全·网络安全
民乐团扒谱机13 小时前
实验室安全教育与管理平台学习记录(七)网络安全
学习·安全·web安全
萤丰信息16 小时前
智慧园区系统:开启园区管理与运营的新时代
java·大数据·人工智能·安全·智慧城市·智慧园区
普普通通的南瓜16 小时前
共筑网络安全,守护绿色家园
安全·web安全·php
belldeep16 小时前
网络安全:WebShell
安全·web安全·webshell
記億揺晃着的那天16 小时前
解密 HTTPS:从握手到安全通信
网络协议·安全·https·ssl证书
一起学安全技术16 小时前
C11期作业23(08.30)
安全·web安全