命令注入
通配符?,*
在bash shell中,问号?表示通配符,可以替换任意的单个字符(非空),*表示通配符,可以匹配任意长度(包括空)。例如下面的命令与/usr/sbin/cat /etc/passwd是等价的。来自exploit-db上的一篇文章
/usr/s?in/?at /et?/pass?d
SQL注入
注释/**/
在SQL查询语句中加入注释,例如select/**/from,当WAF不摘除注释而去匹配正则表达式时,可能会匹配不上,从而绕过。
在bash shell中,问号?表示通配符,可以替换任意的单个字符(非空),*表示通配符,可以匹配任意长度(包括空)。例如下面的命令与/usr/sbin/cat /etc/passwd是等价的。来自exploit-db上的一篇文章
/usr/s?in/?at /et?/pass?d
在SQL查询语句中加入注释,例如select/**/from,当WAF不摘除注释而去匹配正则表达式时,可能会匹配不上,从而绕过。