题目:http://88099f53-12b6-470a-9993-b73e4155940e.node3.buuoj.cn/

1首先看三个文件的内容


2简单分析


如果出题人没整一些花里胡哨的,那么flag就在fllllllllllg文件里面

http://88099f53-12b6-470a-9993-b73e4155940e.node3.buuoj.cn/file?filename=/hints.txt&filehash=87baac9388cda0f56b3a1fd3b4985d67(网址之一)

从这几个文件的网址看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)的更多相关文章

  1. Buuctf刷题:部分

    get_started_3dsctf_2016 关键词:ROP链.栈溢出.mprotect()函数 可参考文章(优质): https://www.cnblogs.com/lyxf/p/12113401 ...

  2. BUUCTF刷题记录(Web方面)

    WarmUp 首先查看源码,发现有source.php,跟进看看,发现了一堆代码 这个原本是phpmyadmin任意文件包含漏洞,这里面只不过是换汤不换药. 有兴趣的可以看一下之前我做的分析,http ...

  3. BUUCTF刷题系列(2)5.27日记

    CTF-Bugku-安卓篇1signin Writeup Bugku安卓部分第一题,第七届山东省大学生网络安全技能大赛的题目,属于Android逆向分析.(常用工具:安卓模拟器.JEB.Cyberch ...

  4. buuctf刷题之旅—web—EasySQL

    打开环境,发现依旧是sql注入 GitHub上有源码(https://github.com/team-su/SUCTF-2019/tree/master/Web/easy_sql) index.php ...

  5. buuctf刷题之旅—web—随便注

    打开环境 根据提示应该是sql注入 查看数据库名,和数据表 1';show databases;# 1';show tables;# 查看表内字段(1';desc `1919810931114514` ...

  6. buuctf刷题之旅—web—WarmUp

    启动靶机 查看源码发现source.php 代码审计,发现hint.php文件 查看hint.php文件(http://7ab330c8-616e-4fc3-9caa-99d9dd66e191.nod ...

  7. BUUCTF刷题系列(1)5.25日记

    前面的题目都不太难,就直接从SQL注入开始了. 这个样子的话,明显就是注入,我们先拿出SQL语句:http://fb415201-6634-4fc3-a6bc-a67b84ea1ed2.node3.b ...

  8. BUUCTF刷题记录(更新中...)

    极客大挑战 2019]EasySQL-1 直接通过输入万能密码:' or 1=1#实现注入: 思考:服务端sql语句应该为:select * from users where username='xx ...

  9. buuctf刷题记录

    极客大挑战 2019]EasySQL-1 直接通过输入万能密码:' or 1=1#实现注入: 思考:服务端sql语句应该为:select * from users where username='xx ...

随机推荐

  1. centos7 shell 计算器 bc 命令

    2021-08-03 1. 安装 yum -y install bc 2. 简介 bc 命令是任意精度计算器语言,通常在 linux 下当计算器使用 类似基本的计算器, 使用这个计算器可以做基本的数学 ...

  2. JavaWeb使用Filter进行字符编码过滤 预防web服务中文乱码

    JavaWeb使用Filter进行字符编码过滤 预防web服务中文乱码 准备条件:一个创建好的 JavaWeb 项目 步骤: 1.创建一个类并实现 Filter 接口 import javax.ser ...

  3. tomcat配置启动不了

    关于ideatomcat配置问题 1.第一步配置tomcat启动器 2.配置启动的网址 3.配置启动器的启动 ---更多java学习,请见本人小博客:https://zhangjzm.gitee.io ...

  4. 七、Abp vNext 基础篇丨文章聚合功能下

    介绍 不好意思这篇文章应该早点更新的,这几天在忙CICD的东西没顾得上,等后面整好了CICD我也发2篇文章讲讲,咱们进入正题,这一章来补全剩下的 2个接口和将文章聚合进行完善. 开工 上一章大部分业务 ...

  5. 对 RESTful 的理解

    REST 全称 Representation State Transfor (资源表现层状态改变) 实际上是指客户端通过http/https协议手段来改变URI的状态转化,达到请求不同的资源的目的. ...

  6. Junit5快速入门指南-3

    Fixtures 是测试中非常重要的一部分.他们的主要目的是建立一个固定/已知的环境状态以确保 测试可重复并且按照预期的方式运行.比如在app测试中 基类@BeforeClass 配置初始化,初始化d ...

  7. GridControl常用操作

    显示分组面板 gridView1.OptionsView.ShowGroupPanel = true; 是否开启多选 gridView1.OptionsSelection.MultiSelect = ...

  8. Nacos注册中心之概要设计

    本文已收录 https://github.com/lkxiaolou/lkxiaolou 欢迎star. 前言 在之前的文章中分析了Nacos配置中心,配置中心的核心是配置的创建.读取.推送. 注册中 ...

  9. vscode快速添加引号 批量增加引号(用于批量格式化代码)

    一.在浏览器中将Params复制到pycharm的py文件中 二.选中需要添加引号的部分,Ctrl+H 调出替换工具栏 三.填写正则表达式 (.*?): (.*) '$1':'$2', 右侧注意点击使 ...

  10. dubbo微服务架构

    架构 节点角色说明 调用关系说明 服务容器负责启动,加载,运行服务提供者. 服务提供者在启动时,向注册中心注册自己提供的服务. 服务消费者在启动时,向注册中心订阅自己所需的服务. 注册中心返回服务提供 ...