zoukankan      html  css  js  c++  java
  • mysql load_file()

    本地mysql注入读取配置文件 遇到的问题 简单记录一下。

    本地测试时,读取文件发现无论怎样都返回为NULL。

    >> select load_file('c:/xx/xx/xx/x.txt');

    原因是mysql的secure_file_priv的新特性。

    mysql新版本下 secure_file_priv字段:secure_file_priv参数是用来限制LOAD DATA,SELECT ...OUTFILE, and LOAD_FILE()传到哪个指定目录的。

    ure_file_priv的值为null,表示限制mysqld不允许导入/导出

    当secure_file_priv的值为/tmp/,表示限制mysqld的导入|导出只能发生在/tmp/目录下

    当secure_file_priv的值没有具体值时,表示不对mysqld的导入|导出做限制。

    资料地址: https://segmentfault.com/a/1190000009333563

    解决办法:

    >> show global variables like '%secure%';

    默认的为NULL。

    修改mysql.ini或my.ini文件,在[mysqld]下加入

    secure_file_priv =

    保存重启mysql即可。

    这里注意一下,路径中的斜杠是 / 而不是。

    load_file,后面的路径可以是单引号,0x,char转换的字符串。

    load_file 可以在union中作为一个字段来用。 如:union select 1,load_file('c:/boot.ini'),3,4 from tables等。

    load_file 可以在where字句中使用。如and lenth(load_file(0x*************))>1  (盲注)

  • 相关阅读:
    java代码split分割数字类
    P1330 封锁阳光大学
    1022 舞会2
    1626 爱在心中
    P2024 食物链(two)
    P1196 银河英雄传说
    P1892 团伙
    P1546 最短网络(最小生成树)
    烦人的幻灯片(拓扑)
    例4.15 奖金(拓扑排序)
  • 原文地址:https://www.cnblogs.com/s1ye/p/8909452.html
Copyright © 2011-2022 走看看