当前位置: 首页 > news >正文

sqli-labs靶场通关笔记:第9关 时间盲注

1.审题

 这里不管输入什么参数,界面永远只有“you are in...”一种回显,不知道是对还是错,布尔盲注无法使用了。

2.思考

如果能通过构造语法来判断对错,是不是可以实现盲注。

这里用到if()三元函数和sleep()函数。

语法:IF(condition, value_if_true, value_if_false)

  • condition:布尔表达式(TRUE/FALSE)

  • value_if_true:条件为真时返回的值

  • value_if_false:条件为假时返回的值

sleep()函数的作用是响应延迟,比如sleep(5)就是时间响应延迟5秒。

//如果1=1成立,响应延迟5秒,否则立刻响应;
if(1=1,sleep(5),0)

1=1这个条件是永真,加上前面的条件来判断网页响应时间,如果立刻响应,则说明前一个条件存在错误。

 通过语句拼接,发现单引号会延迟响应,双引号则马上响应,可以判断是单引号闭合。

既然可以通过响应延迟来判断条件对错,那么意味着可以盲注,这就是时间盲注。

3.做法

(1)判断闭合方式。

(2)判断数据库名称长度。

//判断名称长度是否大于8;
?id=1' and if(length(database())>8,sleep(5),0) --+

 (3)逐个位判断字符,得到数据库名称。

//判断名称的第一个字符是不是小写字母;
?id=1' and if(ascii(substr(database(),1,1)) between 97 and 122,sleep(5),0) --+

(4)进一步注入表,字段,数据。

手工注入需要耗费的是时间,掌握原理后也可以使用工具注入。

http://www.dtcms.com/a/277218.html

相关文章:

  • 快速生成 Android 的 Splash 的 9 Patch 图片
  • 【零基础入门unity游戏开发——unity3D篇】3D光源之——unity反射和反射探针技术
  • AI进化论12:大语言模型的爆发——GPT系列“出圈”,AI飞入寻常百姓家
  • Kafka——Kafka 线上集群部署方案怎么做?
  • c语言初阶 结构体
  • 【Python】venv:配置独立镜像源
  • 常用的docker命令备份
  • 007_用例与应用场景
  • python 列表(List) vs. 元组(Tuple):什么时候该用不可变的元组?它们在性能和用途上有什么区别?
  • 暑期自学嵌入式——Day01(C语言阶段)
  • 协程的基本使用
  • 【保姆级图文详解】MCP架构(客户端-服务端)、三种方式使用MCP服务、Spring AI MCP客户端和服务端开发、MCP部署方案、MCP安全性
  • 基于 CentOS 7 的 LVS+DR+Web+NFS 旅游攻略分享平台部署
  • CentOS系统下前后端项目部署攻略
  • 从 Manifest V2 升级到 Manifest V3:常见问题与解决方案
  • vue-component
  • [Linux入门 ] RAID存储技术概述
  • (S4)Efficiently Modeling Long Sequences with Structured State Spaces论文精读(逐段解析)
  • [Rust 基础课程]Hello World
  • 数据结构 单链表(2)--单链表的实现
  • 聊一聊Java生态接口测试常见的框架
  • 在 Spring Boot 中使用 MyBatis 的 XML 文件编写 SQL 语句详解
  • MySQL SQL语句精要:DDL、DML与DCL的深度探究
  • Design Compiler:什么是代价函数(Cost Function)
  • HarmonyOS组件/模板集成创新活动-元服务小云体重管理引入案例(步骤条UI组件)
  • python赤道上空的大气环流剖面图(纬向-高度剖面)
  • 多级@JsonTypeInfo和@JsonSubTypes注解使用详解及场景分析
  • 剑指offer59_翻转单词顺序
  • Redis 命令总结
  • Docker三剑客