【web | CTF】BUUCTF [护网杯 2018] easy_tornado

天命:这题是框架性的漏洞,Python的web服务器框架,应该已经比较古老了

开局先看一下三个文件

简单阅读后会发现,这里存在文件包含漏洞,可以直接读取文件,但是有一个哈希值校验

一开始我以为是扫描文件后得到的MD5值

哈哈哈,我想太多了,没这么高科技,只是文件名的MD5值罢了

那文件名我们得到了:/fllllllllllllag,参数加上MD5值就可以了

在hints.txt给出了MD5值的生成代码

但是有一个问题,cookie_secret 这个变量算是密钥了,里面的东西怎么来呢?

这时候我也要看WP才知道,原来是服务器框架的漏洞

来看看题目,再问问文心一言,巴拉巴拉一大堆,就是说Tornado框架中模板语法和一个配置参数,我们能通过模板语法把配置文件的参数打印出来,就能得到cookie_secret了

接着继续,只要你输错哈希值

你就能来到一个神奇的地方,这里就是存在模板语法漏洞的地方

套上模板语法就可以玩了,具体啥原理我也不太知道,这种老框架估计做完这题就不需要用了

输出的东西有点奇怪,但是能直接打印变量出来?

直接当成vue框架来玩,当成变量打印出来:msg={{handler.settings}}

得到钥匙拼接两层MD5即可

from hashlib import md5cookie_secret = '749b78e8-8946-40c3-a357-8927600a223f'
filename = '/fllllllllllllag'MD5文件名 = md5(filename.encode()).hexdigest()一半文件名 = cookie_secret + MD5文件名
payload = md5(一半文件名.encode()).hexdigest()print(payload)

搞掂

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/470973.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

房屋租赁系统的Java实战开发之旅

✍✍计算机编程指导师 ⭐⭐个人介绍:自己非常喜欢研究技术问题!专业做Java、Python、微信小程序、安卓、大数据、爬虫、Golang、大屏等实战项目。 ⛽⛽实战项目:有源码或者技术上的问题欢迎在评论区一起讨论交流! ⚡⚡ Java实战 |…

用HTML5实现动画

用HTML5实现动画 要在HTML5中实现动画&#xff0c;可以使用以下几种方法&#xff1a;CSS动画、使用<canvas>元素和JavaScript来实现动画、使用JavaScript动画库。重点介绍前两种。 一、CSS动画 CSS3 动画&#xff1a;使用CSS3的动画属性和关键帧&#xff08;keyframes&…

【实战】一、Jest 前端自动化测试框架基础入门(一) —— 前端要学的测试课 从Jest入门到TDD BDD双实战(一)

文章目录 一、前端要学的测试课1.前端要学的测试2.前端工程化的一部分3.前端自动化测试的例子4.前端为什么需要自动化测试&#xff1f;5.课程涵盖内容6.前置技能7.学习收获 二、Jest 前端自动化测试框架基础入门1. 自动化测试背景及原理前端自动化测试产生的背景及原理 2.前端自…

【题解】数的范围(二分模板)

笔记 if (check(mid)) L mid &#xff0c;则 mid L R 1 >> 1 if (check(mid)) R mid &#xff0c;则 mid L R >> 1 题目 #include<bits/stdc.h> using namespace std;int n, q; int a[100010]; int b[10010]; typedef pair<int, int> PII;v…

【十九】【C++】 priority_queue简单使用和仿函数

priority_queue文档介绍翻译 优先队列是一种容器适配器&#xff0c;专门设计成其中的第一个元素始终是根据某种严格的弱排序准则最大的元素。 这种上下文类似于堆&#xff0c;其中元素可以在任何时刻插入&#xff0c;而只能检索最大堆元素&#xff08;在优先队列中顶部的元素&a…

一周学会Django5 Python Web开发-项目配置settings.py文件-资源文件配置

锋哥原创的Python Web开发 Django5视频教程&#xff1a; 2024版 Django5 Python web开发 视频教程(无废话版) 玩命更新中~_哔哩哔哩_bilibili2024版 Django5 Python web开发 视频教程(无废话版) 玩命更新中~共计17条视频&#xff0c;包括&#xff1a;2024版 Django5 Python we…

(N-144)基于微信小程序在线订餐系统

开发工具&#xff1a;IDEA、微信小程序 服务器&#xff1a;Tomcat9.0&#xff0c; jdk1.8 项目构建&#xff1a;maven 数据库&#xff1a;mysql5.7 前端技术&#xff1a;vue、ElementUI、 Vant Weapp 服务端技术&#xff1a;springbootmybatisredis 本系统分微信小程序和…

搜索Agent方案

为啥需要整体方案&#xff0c;直接调用搜索接口取Top1返回不成嘛&#xff1f;要是果真如此Simple&Naive&#xff0c;New Bing岂不是很容易复刻->.-> 我们先来看个例子&#xff0c;前一阵火爆全网的常温超导技术&#xff0c;如果想回答LK99哪些板块会涨&#xff0c;你…

StarUML无法安装扩展的解决方案

StarUML无法安装扩展解决方案 版本&#xff1a;StarUML3.2.2 遇到问题 Unable to access the extension registry, Please try again later. 解决方案 第一步 https://docs.staruml.io/user-guide/managing-extensions#install-extension官网给了怎么手动安装扩展器的方法…

力扣1732. 找到最高海拔(前缀和)

Problem: 1732. 找到最高海拔 文章目录 题目描述思路及解法复杂度Code 题目描述 思路及解法 1.求取数组gain的大小 n n n; 2.定义一个大小为 n 1 n 1 n1的数组preSum; 3.先求取前 n n n个元素的前缀和&#xff0c;再最后单独处理preSum[n];其中preSum[n] preSum[n - 1] gai…

<代码整洁之道>精彩片段整理

最近在读这本<代码整洁之道>&#xff0c;感觉里面有很多内容都很有启发。整理下来&#xff0c;大家一起看下&#xff0c;顺便看看作者说的有没有道理。这本书的作者是&#xff1a;罗伯特丶马丁&#xff0c;大家经常叫他鲍勃大叔。下面直接进入正题&#xff0c;先看一下目…