当前位置: 首页 > news >正文

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

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

目录

一、打开靶机,整理信息

二、解题思路

step 1:分析已知信息

step 2:目标——找到cookie_secret

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,发现注入点的

相关文章:

  • Quartz定时任务
  • 支持直接升级到21c的 Oracle 数据库版本
  • QT中线程中使用信号和槽传数据
  • 阿里云一键部署DeepSeek-V3、DeepSeek-R1模型
  • Oracle DBA 诊断及统计工具-2
  • django中间件,中间件给下面传值
  • vue基础(八)
  • 2848、与车相交的点
  • 游戏引擎学习第103天
  • [FastAdmin] 上传图片并加水印,压缩图片
  • 重读《Java面试题,10万字208道Java经典面试题总结(附答案)》
  • 一种 SQL Server 数据库恢复方案:解密、恢复并导出 MDF/NDF/BAK文件
  • 【Elasticsearch】Mapping概述
  • 适用于iOS的应用商店优化(ASO)清单
  • Qt信号槽调用出错:Qt: Dead lock detected while activating a BlockingQueuedConnection
  • Anaconda 安装指南:Windows、macOS 和 Linux 的详细安装步骤
  • 轮子项目--消息队列的实现(3)
  • Redis初阶笔记
  • 【Linux】cron计划任务定时执行命令
  • 问界M8细节曝光,L3自动驾驶有了!
  • 印巴冲突升级,巴防长称已击落5架印度战机
  • 李云泽:房地产“白名单”贷款审批通过金额增至6.7万亿元
  • 线下无理由退货怎样操作?线上线下监管有何不同?市场监管总局回应
  • 巴基斯坦军方:印度向巴本土及巴控克什米尔发射导弹
  • 41年轮回,从洛杉矶奔向洛杉矶,李宁故地重游再出发
  • 第四轮伊美核问题谈判预计5月11日举行