2025.2.8——一、[护网杯 2018]easy_tornado tornado模板注入

题目来源:BUUCTF [护网杯 2018]easy_tornado

目录

一、打开靶机,整理信息

二、解题思路

[step 1:分析已知信息](#step 1:分析已知信息)

[step 2:目标------找到cookie_secret](#step 2:目标——找到cookie_secret)

[step 3:构造payload](#step 3:构造payload)

三、小结


一、打开靶机,整理信息

直接给了三个文件,点进去看看

给了这三个信息,开始分析

二、解题思路

step 1:分析已知信息

1.告诉了我们flag in /fllllllllllllag

2.第二个文件重点render,是python中的一个渲染函数,url都是由filename和filehash组成,filehash即位他们filename的md5值

3.md5(cookie_secret+md5(filename)),给了我们加密方式,是将cookie_secret和md5(filename)拼接起来,再进行一次md5加密,所以我们需要找到cookie_secret,而第一条信息给我们的是flag在/fllllllllllllag文件中,所以猜测filename=/fllllllllllllag

But,url上面有点奇怪,可以一起看一下

/file?filename=/flag.txt&filehash=581a9759facbcc1a83a3b50cc99103dc
/file?filename=/welcome.txt&filehash=eb45ae2f382f05aa91e5f292edc6fcfd
/file?filename=/hints.txt&filehash=dbcd1e15de57d6753b7d62da938b58e6

发现三个文件都保存在filehash(文件名被哈希算法加密32位小写)

有一个师傅的wp解决了我的疑惑:122,【6】buuctf web [护网杯2018] easy_tornado-CSDN博客

注入点是这么来的

step 2:目标------找到cookie_secret

看了其他师傅的wp,说本题题目也提示了tornado,这是python的一个模块注入,联系第二个文件中的render方法

所以我们可以将代码放在双花括号里进行执行,其他大佬的wp中提到

step 3:构造payload

结合上面信息,我们可以构造payload如下

/error?msg={
  
  {handler.settings}}

得到了cookie_secret信息

将其与flag所在文件的文件名/fllllllllllllag进行md5加密以后得到

224efb29-b925-4b70-b53c-8e9a154688143bf9f6cf685a6dd8defadabfb41a03a1

将整体再进行md5加密得到

45288316089fdc7fd3770fde20322384

构造payload如下

/file?filename=/fllllllllllllag&filehash=45288316089fdc7fd3770fde20322384

url传参得到flag信息

三、小结

1.tornado模板注入

2.这里的注入点来源是修改了url,只传参file的话,url变化得到/error?msg=Error,修改Error,发现注入点的

相关推荐
金融OG13 分钟前
100.14 AI量化面试题:模型蒸馏(Model Distillation)和模型微调(Fine-tuning)的异同点
人工智能·python·机器学习·数学建模·金融
蹦蹦跳跳真可爱5891 小时前
Python----PyQt开发(PyQt高级:组件大小,界面位置,按钮,文本显示,文本输入,字体大小)
python·pyqt
游客5201 小时前
自动化办公|xlwings快速入门
linux·前端·python
佛州小李哥1 小时前
如何评估云原生GenAI应用开发中的安全风险(上)
人工智能·科技·安全·ai·开发·aws·亚马逊云科技
佛州小李哥1 小时前
如何评估云原生GenAI应用开发中的安全风险(下)
人工智能·科技·安全·ai·云计算·aws·亚马逊云科技
NoneCoder1 小时前
JavaScript系列(69)--安全编程技术详解
开发语言·javascript·安全
wtsolutions1 小时前
迅投QMT量化交易系统新手指南及常见问题
python
hshpy2 小时前
To convert a JSONArray to a List<Map<String, String>> in Java
java·python·list
Joyner20182 小时前
python-leetcode-搜索二维矩阵
python·leetcode·矩阵
吃熊的鱼2 小时前
【大模型技术】accelerate和deepspeed
python·大模型