码迷,mamicode.com
首页 > 数据库 > 详细

mysql几种读取文件方法的使用

时间:2018-03-21 20:02:10      阅读:517      评论:0      收藏:0      [点我收藏+]

标签:读取文件   版本   读取数据   load   table   img   color   创建   sele   

mysql数据库在渗透过程中能够使用的功能还是比较多的,除了读取数据之外,还可以进行对文件进行读写(但前提是权限足够)

 

总结下mysql在不同版本读取文件方法大致有这3个:

1.load_file()

2.load data infile()

3.system cat

 

load_file()和load data infile读取文件的方法为:新建一个表,读取文件为字符串形式插入表中,然后读出表中数据。

但是通常情况下有两个前提:

1.在拥有file权限的前提下

2.secure_file_priv不为NULL

secure_file_priv的值可以在这样查看

 

技术分享图片

在mysql 5.6.34版本以后 secure_file_priv的值默认为NULL。可以通过以下方式修改

windows下:

修改mysql.ini 文件,在[mysqld] 下添加条目: secure_file_priv =

保存,重启mysql。

Linux下:

在/etc/my.cnf的[mysqld]下面添加local-infile=0选项。

 

1.load_file()

首先我在/tmp目录下创建一个文档

技术分享图片

运行mysql

sql命令如下:

1 create table user(cmd text);
2 insert into user(cmd) values (load_file(/tmp/1.txt));
3 select * from user;

 技术分享图片

 

2.load data infile


其实load data infile和load_file()用法上没有什么区别,只是在注入过程中,往往会过滤掉load_file()这个函数,但是仍然有load data infile可以使用。

1 load data infile /tmp/1.txt into table user;

技术分享图片

 

3.system cat


在mysql版本为5.x时,除了可以使用上两种方法外,还可以使用系统命令直接读取文件

技术分享图片

 

 注意: 

1.此方法只能在本地读取,远程连接mysql时无法使用system。

2. 无法越权读取。

 

 

 

 

 

 

mysql几种读取文件方法的使用

标签:读取文件   版本   读取数据   load   table   img   color   创建   sele   

原文地址:https://www.cnblogs.com/c1e4r/p/8618692.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!