字符型会把1等等数字当成字符,此时数字型注入会不起作用,之后需要使用英文状态下单引号闭合前面字符,后面需要注释避免报错
-
判断是否存在漏洞
当输入1’时报错,当输入1"时正常显示 ,可以判断问题参数为id,漏洞类型为字符型 -
验证判断
先用单引号闭合,语法后方在注释避免报错,之后用and 1=1和and 1=2来验证判断,如:
http://www.xxx.com/sqli/01.php?id=1' and 1=1 -- a
命令中a可随意填写,只是注释需要空格,防止浏览器过滤
返回数据,说明执行成功
http://www.xxx.com/sqli/01.php?id=1' and 1=2 -- a
不返回数据,说明数据库后台报错了
- 用排序间接查找出所有字段
用order by 来根据字段所在列排序间接查找出有多少个字段,如:
http://www.xxx.com/sqli/01.php?id=1' order by 4 -- a
剩下的过程与数字型一样