一、sql注入基础
sql注入就是指Web应用程序对用户输入数据的合法性没有判断,前端传入后端的参数是攻击可控的,并且参数带入数据库查询,攻击者可以通过构造不同的sql语句来实现对数据库的任意操作。
sql注入漏洞的产生需要满足两个条件
(1)参数用户可控:前端传给后端的参数内容是用户可以控制的
(2)参数带入数据库查询:传入参数拼接到sql语句,且带入数据库查询
二、sql注入之union注入实战-dvwa
1.先判断是数字型还是字符型
(1)如果是数字型
1 and 1=1 #正常回显
1 and 1=2 #无显示或者页面报错
(2)如果是字符型
1’ and ‘1’=‘1 #正常显示
1’ and ‘1’='2 #无显示或者页面报错
如下:无论是1=2还是1=1都是正常回显,说明不是数字型,是字符型
2.使用order by查询出表的字段数量
1' order by 2#
查询成功