某个buuctf的题(easy_tornado)
题目:http://88099f53-12b6-470a-9993-b73e4155940e.node3.buuoj.cn/
1首先看三个文件的内容



2简单分析
如果出题人没整一些花里胡哨的,那么flag就在fllllllllllg文件里面
从这几个文件的网址看flag应该在/file?filename=/flllllllllllg&filehash=某个哈希值。
在从hints.txt可见这个哈希值=md5(cookie_secret+md5(flllllllllg)).
tip我在此时的想法
想办法破解出cookie_sercret(这是cookie的签名,解不出来,有兴趣可以网上查一查)
我们已知三个文件名进行以上运算的结果,我想这可能是个解密题。
经尝试后一脸懵逼,显然解不出来。
3需要经验的一步
经过上面的尝试后我又看了一遍题(easy_tornado),网上一搜,出来的都是这个题的解题方法,先不要管这些。我们在根据welcome.txt中的render字样(题目给的东西一般会有用),搜索render函数可以得到如下:

至于为什么搜py中的renger函数,你搜renger函数大多都是关于py的
可知renger是进行内容渲染的而且render会执行内部参数,如2*3回渲染出来6。
到这里只是猜测render有用。(有经验的人可能知道renger的用法)
4或许你尝试过
当我不知道下一步怎么做的时候我试着将别的文件带入网址中的hash值放在那个hash值的位置(显然不会的到结果)

网址这个东西在这种简单的网页里面是很重要的。(我们几乎只能在网址栏里进行操作)----------论网址的重要性
这里观察到网址中是将Error传递给msg(在想一想renger的作用),试一下随便传点啥。

可以看到我随便输的被渲染出来了,(这就很清楚了,是个注入的题)
5如何注入
我试了一下2*3,结果它输出ORZ,百度一下知道这是我的2x3是被它墙了(其实百度到的是“ ○| ̄|_ ”(看百度百科就知道我是被调侃了,不过没事最起码说明我注入的思路没问题))。
至于如何注入,我也是第一次见这种注入,直接看了教程。百度上搜题目很容易找到。
6重中之重
做到最后直接超答案显然不是我的风格。跟着答案我发现了一片新天地。
已经过了24点了,明天再写。
sayounana~~
某个buuctf的题(easy_tornado)的更多相关文章
- Buuctf刷题:部分
get_started_3dsctf_2016 关键词:ROP链.栈溢出.mprotect()函数 可参考文章(优质): https://www.cnblogs.com/lyxf/p/12113401 ...
- BUUCTF刷题记录(Web方面)
WarmUp 首先查看源码,发现有source.php,跟进看看,发现了一堆代码 这个原本是phpmyadmin任意文件包含漏洞,这里面只不过是换汤不换药. 有兴趣的可以看一下之前我做的分析,http ...
- BUUCTF刷题系列(2)5.27日记
CTF-Bugku-安卓篇1signin Writeup Bugku安卓部分第一题,第七届山东省大学生网络安全技能大赛的题目,属于Android逆向分析.(常用工具:安卓模拟器.JEB.Cyberch ...
- buuctf刷题之旅—web—EasySQL
打开环境,发现依旧是sql注入 GitHub上有源码(https://github.com/team-su/SUCTF-2019/tree/master/Web/easy_sql) index.php ...
- buuctf刷题之旅—web—随便注
打开环境 根据提示应该是sql注入 查看数据库名,和数据表 1';show databases;# 1';show tables;# 查看表内字段(1';desc `1919810931114514` ...
- buuctf刷题之旅—web—WarmUp
启动靶机 查看源码发现source.php 代码审计,发现hint.php文件 查看hint.php文件(http://7ab330c8-616e-4fc3-9caa-99d9dd66e191.nod ...
- BUUCTF刷题系列(1)5.25日记
前面的题目都不太难,就直接从SQL注入开始了. 这个样子的话,明显就是注入,我们先拿出SQL语句:http://fb415201-6634-4fc3-a6bc-a67b84ea1ed2.node3.b ...
- BUUCTF刷题记录(更新中...)
极客大挑战 2019]EasySQL-1 直接通过输入万能密码:' or 1=1#实现注入: 思考:服务端sql语句应该为:select * from users where username='xx ...
- buuctf刷题记录
极客大挑战 2019]EasySQL-1 直接通过输入万能密码:' or 1=1#实现注入: 思考:服务端sql语句应该为:select * from users where username='xx ...
随机推荐
- Linux的基础——虚拟机的克隆
1.虚拟机的安装 虚拟机的安装在另一个文档 安装jdk(在另外一个文档中) 2.虚拟机的克隆 准备工作:一台装有Linux系统的主机(已经配置好jdk) 选择主机进行克隆 注意:这里一定要选择创建完整 ...
- C# - 音乐小闹钟_BetaV1.0
时间:2017-11-20 作者:byzqy 介绍: 前段时间看到别人利用Timer控件实现了检查电脑本地时间,然后对时间进行比较,最终实现闹钟功能.感觉有点意思,于是自己也做了一个小闹钟! 先看一下 ...
- VS2017 提示找不到某个.dll库,或某个dll库丢失,原因
可能因为那个dll的确不存在 可能因为需要在环境变量->系统环境变量->添加该dll所在目录
- js调试之firbug
说下几种方法吧: 1.用alert 这个最最直观 把你想要的内容弹出来给你看,但是要看哪里 就要在哪里加,比较麻烦 2.用firefox 或者chrome浏览器 里面有debug工具的 3.如果想用i ...
- 求方程 p+q+r+s+t=pqrst 的全体自然数解(约定p<=q<=r<=s<=t)
解:方程左右的表达式分别记为u和v. 由题设有5t>=u. 0本来是不算入自然数的,现在的趋势是把0也算作自然数. 若p=0,则v=0,为使得u=0成立,q.r.s.t都必需为0. 这样就得到方 ...
- Linux常用命令(二)之权限管理、文件搜索、帮助、压缩命令及管道
在(一)中提到过rwx的含义,但是我们还需深入理解,明白其真正的含义和权限,对于文件和目录,rwx权限是不同的,尤其是目录的权限往往是被忽略的: 对于目录,其权限和对应的操作: r-ls w-touc ...
- Dockerfile优化——supervisor服务
一.理解supervisor(supervisor服务不仅在容器中可用,在宿主机中也适用) 1.Dockerfile中的CMD可以指定启动容器后执行的第一个命令,但是当有多个服务进程需要启动的时候,就 ...
- Echarts中Option属性设置
目录 一.title--标题组件 二.legend--图例组件 三.tooltip--提示框组件 四.grid--可用于调整图例在整个容器中的占位 五.xAxis--x 轴 六.yAxis-y 轴 七 ...
- Python - 导入的位置
导入的是什么 导入是将 Python 的一些功能函数放到当前的脚本中使用 不导入的功能无法直接在当前脚本使用(除了 python 自带的内置函数) Python 有很多第三方功能,假设想要使用,都必须 ...
- 2021 年 9 月 TIOBE 指数 C# 增长突破 1.2%
TIOBE 编程社区指数是编程语言流行程度的指标.该指数每月更新一次.评级基于全球熟练工程师.课程和第三方供应商的数量.谷歌.必应.雅虎.维基百科.亚马逊.YouTube 和百度等流行搜索引擎用于计算 ...