phpMyAdmin 能用 INTO OUTFILE 写 WebShell,因 MySQL 允许将 SELECT 结果写入服务器文件系统,配合空字符串语句可生成木马;需同时具备 FILE 权限且 secure_file_priv 配置不当。phpMyAdmin 为什么能用 INTO OUTFILE 写 WebShell因为 mysql 的 into outfile 允许把查询结果直接写入服务器文件系统,配合 select '<?php eval(_post\[1\]);?\>' 这类语句,就能生成一句话木马。只要攻击者有数据库账号(哪怕只有 select 权限),且 mysql 配置了 secure_file_priv 为空或指向 web 可访问目录,就可能成功。禁用 INTO OUTFILE 的三个实际操作点光在 phpMyAdmin 界面里删权限没用,得从 MySQL 层面切断能力:回收用户 FILE 权限:执行 REVOKE FILE ON \*.\* FROM 'username'@'%';;仅靠 DROP 或 INSERT 权限无法绕过此限制设置 secure_file_priv 为 NULL 或只读路径:在 my.cnf 中加 secure_file_priv = /tmp/(确保该路径不可执行、不在 Web 根目录下);设为 secure_file_priv = "" 是危险的,MySQL 8.0+ 已不支持空值重启 MySQL 生效:修改配置后必须重启服务,SET GLOBAL secure_file_priv = ... 在运行时不可更改phpMyAdmin 侧还要关掉哪些功能即使 MySQL 层禁了 INTO OUTFILE,phpMyAdmin 自身的导出功能也可能被滥用(比如导出为 CSV 后改后缀上传):在 config.inc.php 中禁用危险导出格式:cfg'Export''disable_mime' = true;,并移除 php、sql(若非必要)等导出选项关闭「保存到服务器」功能:cfg\['SaveDir'\] = '';,避免用户把导出文件存到 Web 目录检查 cfg'UploadDir' 是否为空或指向非 Web 路径;若启用,确保该目录无执行权限(如 chmod 755 且不配 PHP 解析)验证是否真禁掉了 INTO OUTFILE别信配置文件改了就完事,登录 MySQL 命令行亲自试一句:SELECT 'test' INTO OUTFILE '/tmp/test.txt';如果返回 ERROR 1290 (HY000): The MySQL server is running with the --secure-file-priv option so it cannot execute this statement 或 ERROR 1045 (28000): Access denied for user ... (using password: YES),说明生效;如果写入成功,说明 FILE 权限还在或 secure_file_priv 没生效。 Fotor AI Image Generator Fotor 平台的 AI 图片生成器
相关推荐
大模型码小白5 分钟前
数据可视化:AI 生成 HTML5 动态交互式数据图表风哥2号6 分钟前
数据库教程FGMT26‑1‑GoldenGate数据库容灾迁移01(OGG同构异构、数据库迁移、数据同步、容灾复制)名字还没想好☜8 分钟前
Java Collectors.groupingBy 进阶:多级分组、下游收集器与统计聚合一次搞定颜颜yan_18 分钟前
Firebird 鸿蒙 PC 适配全记录:打通数据库内核、Qt 管理端与原生维护工具风哥2号19 分钟前
数据库教程FGMT25‑Oracle多租户架构CDB与PDB运维管理程序猿乐锅23 分钟前
【黑马点评 | 第一篇】从 Session 到 Redis+Token 的改造与拦截器实现南京兴帝文化传媒有限公司30 分钟前
基于地图平台的本地商户信息优化:药店夜间服务标注与客户转化实操2601_9620782334 分钟前
Python接口自动化流程(pytest)u01090535935 分钟前
NAS远程访问内网穿透方案之使用神卓N600实现不限速方法User_芊芊君子36 分钟前
sbt 鸿蒙 PC 适配全记录:从 JVM 构建工具到 HAP_HNP 交付闭环