【SQL注入漏洞-04】布尔盲注靶场实战_oracle布尔盲注-程序员宅基地

技术标签: Web漏洞  Powered by 金山文档  数据库  网络安全  sql  

布尔盲注

当我们改变前端页面传输给后台sql参数时,页面没有显示相应内容也没有显示报错信息时,不能使用联合查询注入和报错注入,这时我们可以考虑是否为基于布尔的盲注。

布尔盲注原理:

利用页面返回的布尔类型状态,正常或者不正常;

我们输入的语句让页面呈现出两种状态,相当于true和false,根据这两种状态可以判断我们输入的语句是否查询成功。布尔盲注就是根据这两种状态,来反推我们输入的条件是真还是假。以sqli-labs-masterless-8关为例

  • 当我们输入id=1时,页面正常显示

  • 当我们输入id=1'或者id=-1时,页面什么都不显示

这就是基于布尔的盲注,只有两种状态

使用布尔盲注时,如果直接采用猜测的方式的话,时间成本大还很难,为了降低时间成本和难度,我们可以判断数据库名、表名、字段名、字段内容的长度,然后一位一位去测试

注入步骤

判断当前数据类型

MySQL数据库表 information_schema.tables
access msysobjects
SQLServer sysobjects
?id=1' and exists(select*from information_schema.tables) --+
?id=1' and exists(select*from msysobjects) --+
?id=1' and exists(select*from sysobjects) --+

所以当前数据库名为mysql数据库

判断当前数据库名

判断当前数据库名的长度,利用两边夹准则

当我们输入?id=1' and length(database())>10 --+,页面不显示任何数据

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/2301_76334474/article/details/128865772

智能推荐

固态硬盘简介-程序员宅基地

文章浏览阅读228次。固态硬盘的存储介质分为两种,一种是采用闪存也就是FLASH芯片作为存储介质,另外一种是采用DRAM作为存储介质。小康先说说使用DRAM的固态硬盘:采用DRAM作为存储介质,目前应用范围较窄。它仿效传统硬盘的设计、可被绝大部分操作系统的文件系统工具进行卷设置和管理,并提供工业标准的PCI和FC接口用于连接主机或者服务器。应用方式可分为SSD硬盘和SSD硬盘阵列两种。它是一种高性能的存储器,而且使..._hfs的固态硬盘如何使用

Kettle与Java集成——Java代码调取运行资源库的Transformation_org.pentaho.di.trans.transmeta.(transmeta.java:336-程序员宅基地

文章浏览阅读2.1k次。下面代码是Java代码调用Kettle4.0版本的Transformation1、Java读取资源库运行Transformation(1)目录类型资源库Java代码import org.pentaho.di.core.KettleEnvironment; import org.pentaho.di.core.exception.KettleException; impo_org.pentaho.di.trans.transmeta.(transmeta.java:3365)

Win8.1+VS2010环境下Qt4.8.7编译_vs2010_qt4.8.7如何编译pdb文件-程序员宅基地

文章浏览阅读2.9k次。参考http://www.cnblogs.com/elect-fans/archive/2012/03/29/2422816.html实现Win8.1+VS2010环境下Qt4.8.7编译_vs2010_qt4.8.7如何编译pdb文件

C++批量修改文件后缀名(提供多种方法)_修改文件后缀怎么改c++-程序员宅基地

文章浏览阅读2.6k次,点赞2次,收藏6次。C++批量修改文件后缀名的Qt程序方法一:#include "stdafx.h"#include <stdio.h>#include <fstream>#include <Windows.h>#include <cstdio>#include <iostream>#include <string>#include <io.h>#include <vector>#include <_修改文件后缀怎么改c++

Spring Boot Admin2 实例状态监控详解-程序员宅基地

文章浏览阅读3k次,点赞108次,收藏158次。在微服务中集成Spring Boot Admin 的主要作用之一就是用来监控服务的实例状态,并且最好是当服务DOWN或者OFFLINE的时候发消息提醒,SBA2 提供了很多提醒方式,并且SBA2 已经集成了钉钉,只要进行少量配置即可将状态变更发送到钉钉_admin2

js验证注册页面(用户名、手机号、邮箱、单位名称、单位地址、联系人姓名、)_js校验公司名称-程序员宅基地

文章浏览阅读3.1k次。使用js+jQuery验证注册页面<%@ page language="java" contentType="text/html; charset=utf-8" pageEncoding="utf-8"%><%@include file="/common/global.jsp"%><!DOCTYPE html PUBLIC "-//W3C//DTD HTML ..._js校验公司名称

随便推点

python read_csv dtype_Pandas read_csv low_memory和dtype选项-程序员宅基地

文章浏览阅读1.8k次。已弃用的低内存选项low_memory选项没有被正确地弃用,但它应该被弃用,因为它实际上没有做任何不同的事情[source]出现此low_memory警告的原因是,猜测每个列的数据类型需要大量内存。Pandas试图通过分析每列中的数据来确定要设置的数据类型。数据类型猜测(非常糟糕)Pandas只能在读取整个文件后确定列的数据类型。这意味着在读取整个文件之前无法真正解析任何内容,除非您在读取最后一个..._pandas low_memory

【C语言入门】将任意10个数输入一维数组,找出最大数放到最前面,最小数放到最后面。_编写程序,从键盘录入n个数放入一维数组中,找出最大数放到最前面,最小数放到最后面-程序员宅基地

文章浏览阅读1.3k次,点赞3次,收藏6次。题目:将任意10个数输入一维数组,找出最大数放到最前面,最小数放到最后面。_编写程序,从键盘录入n个数放入一维数组中,找出最大数放到最前面,最小数放到最后面

python常用的魔术方法-程序员宅基地

文章浏览阅读285次。在 Python 中,魔术方法是用双下划线 (__) 开头和结尾的特殊方法。这些方法的名字有一定的规则,可以实现特殊的功能。下面是一些常用的魔术方法:__init__:构造方法,在创建对象时自动调用。__str__:将对象转化为字符串时使用。__repr__:获取对象的字符串表示,一般用于调试。__len__:获取对象长度时使用。__getitem__:使用下标访问对象中的元素时使用。..._python魔术方法

当面对 RPA 与 AI, 你应该选择什么_当面 矢量-程序员宅基地

文章浏览阅读183次。不断扩展的人工智能领域包括许多术语和技术。这自然会导致重叠和混乱。人工智能和机器学习经常被一起提及,以至于某些人(尤其是非技术人员)可能会认为它们是同一个人。它们是相关的,但实际上不是可互换的术语:机器学习是 AI 的子集或特定学科。那是一个相对简单的例子。开始将其他术语和技术添加到组合中,并且进一步误解的机会比比皆是。破解术语和技术之间的差异需要借助机器人流程自动化(RPA)和 AI 来解决..._当面 矢量

7.MyBatis-Plus 通用Service和通用Mapper之间的关系_mybatisplus service和mapper-程序员宅基地

文章浏览阅读4.8k次,点赞12次,收藏21次。MyBatis-Plus 通用Service和通用Mapper之间的关系学了MyBatis-Plus之后发现通用Service和通用Mapper实现的功能好像都是一样的,但是其中的方法名又不同,因此想搞清楚他们之间的关系。项目结构如下,主要关注department相关的部分DepartmentMapper接口继承BaseMapper接口DepartmentServiceImpl继承ServiceImpl对象并实现DepartmentService接口首先摆出官网上对通用Service和通用Map_mybatisplus service和mapper

安卓逆向 和 手游辅助 学习 路线-程序员宅基地

文章浏览阅读4.4k次,点赞14次,收藏170次。From:https://zhuanlan.zhihu.com/p/95915254 知乎:Android 逆向分析学习路线?:https://www.zhihu.com/question/25626303 入门篇 --- 学习Android安全和逆向开发的路线总结:https://www.52pojie.cn/thread-1065039-1-1...._手游逆向

推荐文章

热门文章

相关标签