首页 > 其他分享 >[WUSTCTF 2020]朴实无华

[WUSTCTF 2020]朴实无华

时间:2024-08-06 16:26:21浏览次数:15  
标签:get die GET else flag 2020 朴实无华 WUSTCTF md5

[WUSTCTF 2020]朴实无华

打开环境看一下

怎么直接就让我黑他

源代码也没什么提示,那就扫一扫

用御剑扫一下

有两个看一下robots.txt

果然访问一下

假的flag,不过还是要试一下的 万一呢 是吧

不过假的就是假的

用bp抓包看一看

原来内藏玄机呀

有了看一下

接下来代码审计一下

<?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>";
   else
       die("我赶紧喊来我的酒肉朋友, 他打了个电话, 把他一家安排到了非洲");
}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("去非洲吧");
}
?>

有三个机关,一个一个来

第一个要让一个变量在整数的情况下

<2000有>2000的正常的数就没有

百度一下,在php代码中出现数值跟字母同时出现的时候

会去带字母前的数字

如1937hjklj137

就只会识别到1937

那么用科学计数法就可以绕过了 1e5

第二步

要让一个变量跟经过md5加密后一样

这个百度查到就是0e215962017就可以

那么接下来就还有最后一步

绕过空格了  用$IFS$09 <> 等就也都行

还有把cat会替换   用tac nl  ca’’t  什么的都可以绕过

那直接换一种不就行了

先看一下都有什么

果然看看那个长的

这不就出来么

标签:get,die,GET,else,flag,2020,朴实无华,WUSTCTF,md5
From: https://blog.csdn.net/2301_81866263/article/details/140959223

相关文章

  • AISING2020E 题解
    blog。没题解就来写一篇捏。显然\(L_i>R_i\)的人都想去左边(记为LFT人),\(L_i<R_i\)的人都想去右边(记为RHT人),\(L_i=R_i\)的人可以摆烂。(LFT人与RHT人互相干扰,很难刻画。于是找性质。)存在最优方案,使得所有LFT人都在RHT人的左边。证明:如果有RHT人在LFT人的左边,......
  • 2020 China Collegiate Programming Contest, Weihai Site
    Preface难得没有发疯的一场,但只能说是症状减轻了,感觉离痊愈还有一定距离这场基本就跟着榜慢慢开题,中期下机的时候才发现J我把题意读假了然后让队友推了快3h的假结论,还好最后把J过了不然铁战犯A.GoldenSpirit签到分讨题,但也需要一些细心大致思路就是在\(2nt\)那个......
  • [BJDCTF2020]The mystery of ip
    [BJDCTF2020]Themysteryofip、参考:PHP的模板注入(Smarty模板)Step根据提示,尝试伪造ipX-Forwarded-For:1发现回显也是1所以可能是模板注入,尝试X-Forwarded-For:{config}回显::Uncaught-->SmartyCompiler:Syntaxerrorintemplate"string:{config}"online1"{c......
  • [MRCTF2020]你传你呢
    [MRCTF2020]你传你......
  • 【IEEE出版 | ICBASE 2020-2023 均已被 EI , Scopus检索 | 温州理工学院、加拿大圭尔
    第五届大数据、人工智能与软件工程国际研讨会(ICBASE2024)将于2024年09月20-22日在中国温州隆重举行。会议主要围绕大数据、人工智能与软件工程等研究领域展开讨论。会议旨在为从事大数据、人工智能与软件工程研究的专家学者、工程技术人员、技术研发人员提供一个共享科研成果和......
  • [BSidesCF 2020]Had a bad day
    [BSidesCF2020]Hadabadday参考:文件包含漏洞Step点一下按钮,发现URL发生改变:url/index.php?category=woofers修改尝试发现回显:​Sorry,wecurrentlyonlysupportwoofersandmeowers.继续尝试修改:url/index.php?category=woofers.php;flag回显:Warn......
  • P7215 [JOISC2020] 首都]
    P7215[JOISC2020]首都考虑对于颜色\(c_i\),若在此颜色集合内所有节点之间的路径上出现了其他颜色(如\(c_j\)),那我们则不得不将这两种颜色合并在一起,操作数加一。即对于颜色\(c_i\),若设其为首都,其答案(操作数)为所有颜色为\(c_i\)的节点之间的路径上的颜色种类......
  • [JOI 2020 Final] 火事 题解
    给一篇题解。(下面这张图是从luogu上粘贴的,因为不太会画图)其中纵坐标为\(t\),横坐标为\(a_i\)。发现同颜色块只有平行四边形和直角梯形(等腰直角三角形)两种情况。可以将直角梯形削去左下角,分成两部分考虑。等直可以直接暴力插入区间,总个数\(O(n)\)。平行四边形可以看作上......
  • [GYCTF2020]FlaskApp (pin码,jinja2绕过注入)
    题目就是flask下面是判断模版注入的方法a{*comment*}b和{{7*'7'}}base64编码后解码都报错no,无法判断模版引擎直接用下jinja2的试一试,把编码后的密文拿去解码,payload:{{"".__class__mro(2)__subclasses__()}}报错是jinja2后面就整不会了,看别人的wp整理一下:由于不......
  • Leetcode每日一题 202040726 2740.找出分区值
    题目描述给你一个正整数数组nums。将nums分成两个数组:nums1和nums2,并满足下述条件:数组nums中的每个元素都属于数组nums1或数组nums2。两个数组都非空。分区值最小。分区值的计算方法是|max(nums1)-min(nums2)|。其中,max(nums1)表示数组nums1......