在上一次讲解了lesson -1的sql基本注入,我们在注入的时候,它会返回错误信息
但是盲注不会:什么是盲注:我理解的盲注是,web页面并不会返回错误信息,需要自己添加一些命令来让浏览器进行一些显而易见的行为,如果发生了这些行为,我们可以认为这次是报错(或者不报错,基于自己的设定)。

通常使用if 函数来搞事情

if函数原理是当表达式1为True时,返回值为表达式二,否则返回表达式三。

基于布尔值的盲注

方法一

http://127.0.0.1/sqli/Less-8/?id=1'  and length(database())==10  ​--+

如果使用这样的呃话,我们输入的id值明明是一个正确的值,但是它会返回一个空操作.那么就说明这是一个注入点.

方法二,加上sleep更加直观,也是在布尔值的基础上,使用睡一下的功能.

sqli-labs lesson-8 提示了是单引号的错误,但是我们是用 ?id=1 还是?id=1’ 判断,页面返回的结果是一样的:

我也不知道错没错,就是不显示咯

无法判断出是否错误,就需要用盲注
题目8提示了,是布尔类型的盲注

输入命令:
if(length(database())<3,1,sleep(3))
如果数据库名的长度小于3是不正确的,那么就直接睡3s

测试一下:

闭合了单引号,这次是不用睡的.

没有闭合单引号,加载时间会很长


果然,就说明这里面存在注入点,经过不懈努力的手工注入,当if(length(database())==8,1,sleep(3)) 的时候,时间没有改变,可以判断出数据库的字符长度就是8

基于时间的盲注

lesson-9 我们把第八题的命令放上去,发现不可以用:

试试让 它在错误的时候睡一下:

http://127.0.0.1/sqli/Less-9/?id=1'  and if(length(database())<4,1,sleep(2)) --+

MySQL注入什么的还是直接sqlmap吧.掌握原理,然后会实用工具
加油.

sqlmap的使用

基于布尔的盲注:

sqlmap.py -u "http://127.0.0.1/sqli/Less-9/?id=1" --technique B --dbs --batch

基于时间的盲注(很慢):

sqlmap.py -u "http://127.0.0.1/sqli/Less-9/?id=1" --technique T --dbs --batch

当然也可以不用指定technique,但是这样会很慢,因为默认 使用各种注入算法.

–technique 参数一览表
B Boolean-based blind 基于布尔的盲注
E Error-based 报错注入
U Union query-based Union 查询注入
S Stacked queries 堆叠注入
T Time-based blind 基于时间的盲注
Q Inline queries 内联查询注入

路漫漫其修远兮,祝大家学业有成

SQL注入:sqli-labs lesson-8 lesson -9 基于布尔值和基于时间的盲注!相关推荐

  1. iwebsec靶场 SQL注入漏洞通关笔记4- sleep注入(时间型盲注)

    系列文章目录 iwebsec靶场 SQL注入漏洞通关笔记1- 数字型注入_mooyuan的博客-CSDN博客 iwebsec靶场 SQL注入漏洞通关笔记2- 字符型注入(宽字节注入)_mooyuan的 ...

  2. SQL注入——基于时间的盲注(九)

    本章目的 普及延时盲注技术的运用场景及条件,熟悉length().Substr().ascii().sleep().if()等函数的用法,掌握基于时间的盲注基本流程.PS:面试问答不深问就回答延迟 基 ...

  3. 渗透测试——sql注入进阶/基于时间的盲注/一看就会/

    目录 一.注入点判断 注入类型 SQL注入的类型 二.基于时间的时间盲注 什么是时间盲注 sleep()函数 常用函数 三.bWAPP基于时间的盲注实战 一.注入点判断 1.输入一个单引号',因为语句 ...

  4. web安全入门之SQL注入-时间型盲注

    SQL注入之时间型盲注 1.时间型盲注 时间型盲注条件极为苛刻,不管输入什么,WEB页面回显相同的结果,此时我们无法通过报错型注入以及布尔型盲注来爆数据,此时数据在交互完成以后目标网站没有正确和错误的 ...

  5. sqli中时间型盲注和布尔型盲注实现

    布尔型注入: 等待时间较长,但容易受网络波动影响,所以无法作为绝对判断条件. ②利用length语句判断数据库长度 http://127.0.0.1/sqli/Less-8/?id=1' and le ...

  6. 注入学习(3) Mysql+php注入 基于bool和时间的盲注

    练习三:Mysql+php 基于bool和时间的盲注 今天要用的函数(详细的直接看链接): left()函数:left()得到字符串左部指定个数的字符 left( string, n ) #strin ...

  7. SQL注入(SQL注入(SQLi)攻击)攻击-布尔盲注

    页面没有显示位 , 没有报错信息 , 只有成功和不成功两种情况时 , 可以使用布尔盲注 本次以 SQLi LABS 第9关为案例进行讲解 布尔盲注常用的两个函数(我觉得) length('abc') ...

  8. SQL注入(SQL注入(SQLi)攻击)攻击-注入点

    SQL注入被称为漏洞之王 , 是最常用的漏洞之一 , 其中PHP在这方面的贡献最大 SQL注入原理 用户在参数中插入恶意的SQL语句 , 破坏原有的SQL语法结构 , 从而执行攻击者的操作 SQL注入 ...

  9. SQL注入攻击(SQL注入(SQLi)攻击)-报错注入

    页面没有显示位 , 但有数据库的报错信息时 , 可使用报错注入 报错注入是最常用的注入方式 , 也是使用起来最方便(我觉得)的一种注入方式 updatexml(1,'~',3); 第二个参数包含特殊字 ...

最新文章

  1. 《从缺陷中学习C/C++》——6.15 试图产生的指针很可能不存在
  2. ggplot2:9绘图需要的数据整理技术-数据转换
  3. R语言层次聚类模型示例
  4. php插入成功数据不显示,PHP插入数据不成功,什么原因呢?
  5. 孙悟空为什么被封为斗战胜佛
  6. tomcat启动时,报java.io.EOFException
  7. How to get ABAP code coverage result
  8. bzoj千题计划282:bzoj4517: [Sdoi2016]排列计数
  9. 十九、PHP框架Laravel学习笔记——批量赋值和软删除
  10. 各种排序算法稳定性的总结!!!
  11. 为什么java jvm.dll_Windows下java、javaw、javaws以及jvm.dll等进程的区别
  12. Jmeter模拟多用户同时登陆
  13. SSM返回中文乱码问题,SpringMVC返回中文乱码,SSM返回String字符串乱码问题
  14. android导航工厂设置密码,导航工厂设置密码大全,所有导航工厂密码多少
  15. 百度网盘分享qt相关视频
  16. 服务器系统在虚拟机安装win7系统安装教程,虚拟机安装教程图解 虚拟机安装win7步骤...
  17. pdfFactory和pdfFactory Pro有什么不同
  18. No handler found for OPTIONS /lca/lcaplan/lcaplanprocess/list
  19. python爬取基金净值_Python爬虫周记之案例篇——基金净值爬取(上)
  20. matlab 拉斯,魏尔斯特拉斯函数

热门文章

  1. 主机和虚拟机实现复制粘贴功能
  2. 阿里云产品有哪些?阿里云产品种类整理汇总
  3. IC验证培训——SystemVerilog通用程序库(上)
  4. STM32按键设计一之扫描
  5. Linux命令行下使用飞信
  6. Vin码查询车辆详细信息
  7. 提供linux下的新世纪五笔的码表和字根口诀,用于ibus。
  8. 2020年,阿里最新的java程序员面试题目含答案带你吊打面试官
  9. 求一元二次方程根(含虚根)
  10. idea 创建一个springboot 项目(hello world)