sqllabs的order by注入

当我们在打开sqli-labs的46关发现其实是个表格,当测试sort等于123时,会根据列数的不同来进行排序

我们需要利用这个点来判断是否存在注入漏洞,通过加入asc 和desc判断页面有注入点

1、基于使用if语句盲注

如果我们配合if函数,表达式正确就根据username排序,否则根据password排序。

要在知道列名的情况下使用:?sort=if(表达式,username,password)

比如:?sort=if(ascii(substr((select database()),1,1))>=115,username,password)

通过看根据什么排序就可以知道数据库的字符了,经过多次测试就可以拿到数据库名

2、基于时间的盲注

在基于if语句盲注的基础上,可以直接使用时间盲注即可:

?sort=if(ascii(substr((select database()),1,1))>=115,sleep(2),0)

为了快速得到数据库的信息,我们使用python脚本来注入

​​​​​​​

最后得到数据库名为security,这样就完成了order by的注入

相关推荐
AI_56787 小时前
阿里云OSS成本优化:生命周期规则+分层存储省70%
运维·数据库·人工智能·ai
choke2337 小时前
软件测试任务测试
服务器·数据库·sqlserver
龙山云仓7 小时前
MES系统超融合架构
大数据·数据库·人工智能·sql·机器学习·架构·全文检索
IT邦德7 小时前
OEL9.7 安装 Oracle 26ai RAC
数据库·oracle
jianghua0018 小时前
Django视图与URLs路由详解
数据库·django·sqlite
那我掉的头发算什么8 小时前
【Mybatis】Mybatis-plus使用介绍
服务器·数据库·后端·spring·mybatis
倔强的石头1068 小时前
关系数据库替换用金仓:数据迁移过程中的完整性与一致性风险
数据库·kingbase
_Johnny_8 小时前
ETCD 配额/空间告警模拟脚本
数据库·chrome·etcd
静听山水8 小时前
StarRocks查询加速
数据库
静听山水8 小时前
StarRocks高级特性
数据库