1290 the mysql,Mysql ERROR1290的解决办法

起因是在看独自等待大神的mysql提权办法,对于提权,我一直不是很懂,于是就想搭建个环境,来练练基本的mysql提权操作,,但是想起自己从没有利用注入点直接into outfile,在进行提权之前,我先练习了如何进行数据的写入和提取,于是就产生了这篇文章~

网上针对这种办法,有很多的解决办法,但是最重要的一步,也是最容易忽略的一步却很少有人提及(还是看的外国大神才真正解决这个错误的。。)

错误代码:

ERROR 1290 (HY000): The MySQL server is running with the --secure-file-priv option so it cannot execute this statement

这句代码大意就是当前mysql运行在--secure-file-priv选项下,因此在进行文件读取和写入时我们必须看看我们的这个配置有没有什么问题。

对于--secure-file-priv基本有三种情况

1.为空(不是null),这种情况就是最原始的默认情况,在这种情况下,无论怎么操作都会报错

2.为这个配置设了一个目录地址,这就是我们在进行配置后的正确做法,但是这个目录地址也对我们的文件读取写入操作进行了限制,我们只能在这个配置目录地址下进行操作

3.为null,在mysql5.7.6版本以上会出现

下面我们只要为我们的这个--secure-file-priv进行配置即可~

由于环境是windows下的,因此我们需要找到mysql的my.ini配置文件

这里我的mysql文件夹地址为D:\Server\phpStudy\MySQL,my.ini也就在这个目录下~

然后在[mysqld]下配置我们的允许写入读取的目录地址

例如:secure_file_priv='D:/Server/phpStudy/WWW/test/'

但是假如我们这么配置,secure_file_priv='',那么具有读写权限的文件我们都能进行数据的读取和写入操作,如果做测试,推荐这个,但是如果是服务器运维,,这样配置无疑会出一个很大的纰漏!

到这里我们我们重启mysql服务器即可~

但是笔者做到这里都没问题,在写入文件时仍然出现了这个1290的报错,有点崩溃。。在外国友人的提醒下幡然醒悟。。

into outfile的目录地址应该为'\'!!!

正确的写法应该如下:

mysql> load_file('D:\Server\phpStudy\WWW\test\1.txt');

而不是上述配置时使用的'/',这里在国内文章很少会看到提及这点,,但是这个跟mysql报错语句无关了,,倒是写入一句话木马的事了。。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值