当前位置:Gxlcms > 数据库问题 > sqlilab1-4关

sqlilab1-4关

时间:2021-07-01 10:21:17 帮助过:15人阅读

sql语句报错(不闭合),通过查看报错信息来查看一些语句的信息

技术图片

 

 

3.输入正确的sql语句,使其成功闭合--添加注释符#

技术图片

 

 

4.mysql数据库中存在information_schema库,这个库中保存着mysql数据库中的所有数据库和表的信息,我们需要记住这三个表schemata表(包含所有的数据库名字schema_name)、tables表(包含数据库中所有的表table_schematable_name),columns表(字段名称,table_schematable_namecolumn_name),通过mysql数据库中自带的这个数据库来进行操作。

技术图片

 

 

5. 使用联合查询语句union来进行sql语句的拼接。

1)首先判断下前边的sql语句查询的列数,枚举法,可以用任意的数字来进行占位,我们首先判断只有一列,在判断两列,三列

技术图片

 

 技术图片

 

 

2)利用mysql数据库中自带的库information_scheam来进行操作,找到所有的库,和正在使用的库

技术图片

 

 

3)找到security库中所有的表

技术图片

 

 

4)使用user表,查找表中所有字段

技术图片

 

 

5)知道字段之后,我们就可以获取到全部的usernamepassword

技术图片

 

 

less-1操作过程

1.输入?id=1看是否显示结果,在输入id=2查看是否显示不同的结果

技术图片

 

 技术图片

 

 

2.使输入的sql语句报错(不闭合),通过查看报错信息来查看一些语句的信息

技术图片

 

 

3.输入正确的sql语句,使其成功闭合--添加注释符--+#不知道为啥不行)

技术图片

 

 

4.使用联合查询语句union来进行sql语句的拼接。

1)使用order by确定列数(二分法查找,方便快捷,比直接一个一个测试来说效率更高)

技术图片

 

 技术图片

 

 

2)使用union拼接sql,找到正在使用的库

技术图片

 

 

3)找到库中的所有的表

技术图片

 

 

4)查询得到emails表中所有的字段

技术图片

 

 

5)得到表中数据

技术图片

 

 less-3操作过程

1.输入?id=1看是否显示结果,在输入id=2查看是否显示不同的结果

技术图片

 

 技术图片

 

 2..使输入的sql语句报错(不闭合),通过查看报错信息来查看一些语句的信息

技术图片

 

 3.输入正确的sql语句,使其闭合,添加)和注释符

技术图片

 

 4.使用order by 来确定有几列数据(通过以往经验我们知道有3列)

技术图片

 

 技术图片

 

 

5.使用联合查询union

1)确定正在使用的数据库

技术图片

 

 2)确定库中的表

技术图片

 

 

3)确定users表中的字段

技术图片

 

 4)知道表字段之后,获取我们想要的数据

技术图片

 

less-4操作过程


1.输入?id=1看是否显示结果,在输入id=2查看是否显示不同的结果

 技术图片

 

技术图片

 

 

2.使输入的sql语句报错(不闭合),通过查看报错信息来查看一些语句的信息

1)输入单引号发现没变化

技术图片

 

 2)输入双引号测试

技术图片

 

 3.输入能够闭合的sql语句

技术图片

 

 4.使用order by 来确定列数

技术图片

 

 5.使用union联合查询

1)确定正在使用的数据库

技术图片

 

 2)确定数据库中有哪些表

技术图片

 

 3)确定表中字段

技术图片

 

 4)查询想要的数据(这个表中没有任何数据)。。。。。。

技术图片

 

 技术图片

 

sqlilab1-4关

标签:字段   sql注入   结果   数字   数据   password   枚举法   包含   table   

人气教程排行