第三届360GeekGame部分Writeup

encrypt10

没什么好说的,低头看键盘~~~

encrypt20

是一个木马文件,本地搭建环境,先经过解base64+gzinflate压缩编码,得到颜表情,echo颜表情,报错返回flag

web10

打开连接是一个类似Apple的图片,果断下载下来看看有没有隐写,Bomb!得到路径,然后想到的是模拟Apple系统访问页面会不会有hint,然后。。。。。就没有然后了。。。

换了思路XXOO后,得到媛姐提示,没有Apple文件下都有的。。。。。Bingo!.DS_store文件,访问之。。。。顿时一阵寒风扑面而来

仔细回想媛姐的话,DC???改成.DC_store,最后访问web1/CTF_360_flag/.DS_store,得到flag

web20

姿势不对,当时没做出来,一直局限于抓包问题,方向走错了。

打开题目链接,先找hint,源码处发现一行注释关于check.php,果断访问,悲剧了。。。。尝试访问文件备份.swap/.bak未果,一时顿卡了,尝试check.php.swp!!!~~Get check.php  的源码,发现问题,传入方法是Get,而前台是POST,在地址栏网址后,添加参数实现Get方法,然后我就陷入了无线抓包流(QAQ)。然而真正的姿势是在于check.php源码处!db->关于数据库的操作,应当选取Get方法注入。。。。获取flag

web40

还是一张图,看图查隐写!尾部得到一段摩斯密码,解密+各种脑补得到源码。

关键是字段

$a="0.1";

$b=$_GET["b"] ;

if(is_array($b))

{

                  echo "no key";}

                 else if(is_numeric($b))

              {

                  $c=(int)(($a+$b)*10);

                  if($c=="8"&&$b[10]==false)}

                {

                       echo "flag";

                }

           }

}

大体代码是这样了,

Key Point在于is_numeric()函数,检测变量是否为数字或数字字符串,而且要让$b[10]为假

构造b=0.79999999d

得到flag

更详细的writeup请点这里


评论

热度(1)

©TroubleM3 | Powered by LOFTER