[WUSTCTF 2020]朴实无华

打开网页,就显示一个Hack me ,查看源码也是啥也没有,就用御剑扫一下

发现存在robots.txt文件

根据提示,打开/fAke_f1agggg.php

还真就一个错误的flag

仔细看了看,居然还有一个/fl4g.php,打开看看


又开始代码审计
第一关,需要get一个num,要满足intval($num) < 2020 && intval($num + 1) > 2021,那么intval()这个函数是什么:


那么可以选用科学计数法进行绕过,在例子里面可以知道intval('1e10')等于1,也就是只取底数,可以构造num=2e7进行绕过

第一关通过
第二关是一个MD5加密,需要满足$md5==md5($md5),让一个数MD5加密后还是和加密前相等,这也就在网上找到了这个的数0e215962017
num=2e7&md5=0e215962017

第二关通过
第三关就是要get进去一个get_flag,不能含有空格 ,而且cat会被wctf2020替代,那么还是ls一下
num=2e7&md5=0e215962017&get_flag=ls

这么长一个flag,一个应该就是它了,用tac来代替cat,用$IFS$9来代替空格
num=2e7&md5=0e215962017&get_flag=tac$IFS$9fllllllllllllllllllllllllllllllllllllllllaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaag


浙公网安备 33010602011771号