乔悟空-CTF-i春秋-Misc-爆破3
hehe,第一次用这个,开始CTF刷题之旅
2020.09.02
学习
题目分析
下边是题目给的php源码,意思就是进行源码审计,分析出能输出flag的条件。
这东西我是真小白,so,积累经验吧~
<?php
error_reporting(0);#报错不输出
session_start();#开始一个session会话
require('./flag.php');#引入flag.php文件
if(!isset($_SESSION['nums'])){#如果nums值没有被设置就如下赋值,相当于初始化
$_SESSION['nums'] = 0;
$_SESSION['time'] = time();
$_SESSION['whoami'] = 'ea';
}
if($_SESSION['time']+120<time()){#最长连接120s
session_destroy();
}
$value = $_REQUEST['value'];#从url中取value值
$str_rand = range('a', 'z');#包含a=》z之间的数组
$str_rands = $str_rand[mt_rand(0,25)].$str_rand[mt_rand(0,25)];#上一行数组中的随机两个字母拼接到一起
#第一个条件是whoami与输入的value值相同,第二个条件是value值从第五个开始截取4位弱等于0
#第一个条件通过初始值为ea,后续值有输出所以可以满足,
#第二个条件不好满足,所以通过md5输入数组返回null来满足弱等于0
if($_SESSION['whoami']==($value[0].$value[1]) && substr(md5($value),5,4)==0){
$_SESSION['nums']++;
$_SESSION['whoami'] = $str_rands;#每一次被访问都会生成一个新的随机值
echo $str_rands;
}
if($_SESSION['nums']>=10){#在被访问,并且满足上边条件累计10次后,输出flag
echo $flag;
}
show_source(__FILE__);#我们能看见这串代码的原因……
?>
解题步骤
python脚本来实现上述要求,当然手工输入也是可以的。
以前是半小时手工试,学会python后是半小时写代码
乔悟空-CTF-i春秋-Misc-爆破3的更多相关文章
- i春秋misc部分writeup
i春秋misc部分writeup 一.敲击 方方格格,然后看到下面的格式,猜测出是键盘上的布局,然后看这些字母形成的形状想那些字母,就是flag了 2.滴滴滴 放到ctfcack里解密,发现时栅栏密码 ...
- (i春秋 Misc)ReCreators - CryMisc
[i春秋 Misc] [题目链接] i春秋 Misc ReCreators CryMisc ReCreators 下载得到一个文件.老规矩,放入010文本编辑器中查看: 文件头是: KDMV 不清楚. ...
- 乔悟空-CTF-i春秋-Web-Not Found-🙋🏻♂️
2020.09.08 又是匆匆忙忙的一天- 做题 题目 题目地址 做题 做题??做个屁,啥也不知道,干瞪眼
- 乔悟空-CTF-i春秋-Web-GetFlag
2020.09.07 今天发生了一些事情,世事无常,哎.好好的享受当下,该吃吃该喝喝好吧.人活一辈子,到底为了啥? 做题 题目 题目地址 做题 这个题目还行,思路比较清晰,没那么多奇怪的脑洞
- 乔悟空-CTF-i春秋-Web-Backdoor
2020.09.05 每次遇到不会的,想两分钟就放弃了,直接奔wp,一看wp发现,wc,就这?我怎么没想到--心里想着下道题一定自己想,不看wp,然后周而复始
- 乔悟空-CTF-i春秋-Web-SQLi
2020.09.05 今天注定是高产的一天,这题真是坑,不看wp真的不会做,现在回头来复习一遍. 做题 题目 题目地址 做题 这题坑人的地方就在于重定向了两次,并且重要信息在第一次里藏着,第二次还给了 ...
- 乔悟空-CTF-i春秋-Web-SQL
2020.09.05 是不是有些题已经不能做了--费了半天,到最后发现做不出来,和网上大神的方法一样也不行,最搞笑的有个站好像是别人运营中的,bug好像被修复了-- 做题 题目 题目地址 做题 尝试简 ...
- 乔悟空-CTF-i春秋-Web-Upload
2020.09.03 ai 做过的题,两天不看就忘了-- 做题 题目 题目地址 thinking-- 打开网站 告诉了文件在flag.php中,所以写个php,把flag.php文件读取出来就行 盗来 ...
- 【CTF】XCTF Misc 心仪的公司 & 就在其中 writeup
前言 这两题都是Misc中数据包的题目,一直觉得对数据包比较陌生,不知道怎么处理. 这里放两道题的wp,第一题strings命令秒杀觉得非常优秀,另外一题有涉及RSA加密与解密(本文不具体讨论RSA非 ...
随机推荐
- .NET或.NET Core Web APi基于tus协议实现断点续传
前言 前两天我采用技巧式方案基本实现大文件分片上传,这里只是重点在于个人思路和亲身实践,若在实际生产环境要求比较高的话肯定不行,仍存在一些问题需要深入处理,本文继续在之前基础上给出基于tus协议的轮子 ...
- IntelliJ Idea如何解决Could not autowire. No beans of 'xxxx' type found的错误提示
问题描述 在idea中进行开发时,经常会遇见Could not autowire. No beans of 'xxxx' type found的错误提示,这样的是不影响程序编译和运行的,但是看起来会很 ...
- JDK1.8源码学习-LinkedList
JDK1.8源码学习-LinkedList 目录 一.LinkedList简介 LinkedList是一个继承于AbstractSequentialList的双向链表,是可以在任意位置进行插入和移除操 ...
- 8.hbase写入流程和读取流程
1 hbase写入流程 hbase中无论是新增数据还是修改已有行,其内部流程都是一样的,hbase执行写入时会写到两个地方,write-ahead log 简称wal 也叫hlog 预写式日志 和 M ...
- 第1章 RDD概念 弹性分布式数据集
第1章 RDD概念 弹性分布式数据集 1.1 RDD为什么会产生 RDD是Spark的基石,是实现Spark数据处理的核心抽象.那么RDD为什么会产生呢? Hadoop的MapReduce是一种基于 ...
- 启动tomcat出现闪退的原因
出现闪退的可能有几点: 1.没有安装jdk或者配置jdk是否配置成功 2.找不到jdk安装的路径 3.tomcat环境配置失败 如果是第二点原因(确保第一第三点配置都正确无误)找不到jdk路径的话,可 ...
- 从Vessel到二代裸金属容器,云原生的新一波技术浪潮涌向何处?
摘要:云原生大势,深度解读华为云四大容器解决方案如何加速技术产业融合. 云原生,可能是这两年云服务领域最火的词. 相较于传统的应用架构,云原生构建应用简便快捷,部署应用轻松自如.运行应用按需伸缩,是企 ...
- 建设开发者生态:6项华为API管理原则落地
摘要: 为了向开发者提供良好.一致.稳定的华为API的体验,华为通过明确“API管理六项原则”,来支持开发者生态建设. 一个不开放的组织,会慢慢成为一潭僵水,一个封闭的系统,能量最终会耗尽,在产品开发 ...
- Python全局变量的简单使用
对Pyhon实现静态变量全局变量的方法详解 python不能像C++一样直接定义一个static变量或者通过extern来导入别的库的变量而实现数据共享,但是python的思想是通过模块化来解决这个问 ...
- 力扣Leetcode 572. 另一个树的子树
另一个树的子树 给定两个非空二叉树 s 和 t,检验 s 中是否包含和 t 具有相同结构和节点值的子树.s 的一个子树包括 s 的一个节点和这个节点的所有子孙.s 也可以看做它自身的一棵子树. 示例 ...