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的注入

相关推荐
小云数据库服务专线12 分钟前
GaussDB数据库架构师修炼(十六) 如何选择磁盘
数据库·数据库架构·gaussdb
码出财富1 小时前
SQL语法大全指南
数据库·mysql·oracle
异世界贤狼转生码农3 小时前
MongoDB Windows 系统实战手册:从配置到数据处理入门
数据库·mongodb
QuZhengRong3 小时前
【数据库】Navicat 导入 Excel 数据乱码问题的解决方法
android·数据库·excel
码农阿豪3 小时前
Windows从零到一安装KingbaseES数据库及使用ksql工具连接全指南
数据库·windows
时序数据说9 小时前
时序数据库市场前景分析
大数据·数据库·物联网·开源·时序数据库
听雪楼主.12 小时前
Oracle Undo Tablespace 使用率暴涨案例分析
数据库·oracle·架构
我科绝伦(Huanhuan Zhou)12 小时前
KINGBASE集群日常维护管理命令总结
数据库·database
妖灵翎幺12 小时前
Java应届生求职八股(2)---Mysql篇
数据库·mysql
HMBBLOVEPDX12 小时前
MySQL的事务日志:
数据库·mysql