MySQL注入load_file常用路径

在MySQL注入攻击中,攻击者可能会尝试利用LOAD_FILE()函数来读取服务器上的敏感文件。LOAD_FILE()函数允许从服务器的文件系统中读取文件,并将其内容作为字符串返回。然而,这个函数需要满足一定的权限条件,并且文件路径必须是服务器能够访问的。


WINDOWS下:

c:/boot.ini //查看系统版本

c:/windows/php.ini //php配置信息

c:/windows/my.ini //MYSQL配置文件,记录管理员登陆过的MYSQL用户名和密码

c:/winnt/php.ini

c:/winnt/my.ini

c:\mysql\data\mysql\user.MYD //存储了mysql.user表中的数据库连接密码

c:\Program Files\RhinoSoft.com\Serv-U\ServUDaemon.ini //存储了虚拟主机网站路径和密码

c:\Program Files\Serv-U\ServUDaemon.ini

c:\windows\system32\inetsrv\MetaBase.xml 查看IIS的虚拟主机配置

c:\windows\repair\sam //存储了WINDOWS系统初次安装的密码

c:\Program Files\ Serv-U\ServUAdmin.exe //6.0版本以前的serv-u管理员密码存储于此

c:\Program Files\RhinoSoft.com\ServUDaemon.exe

C:\Documents and Settings\All Users\Application Data\Symantec\pcAnywhere\*.cif文件

//存储了pcAnywhere的登陆密码

c:\Program Files\Apache Group\Apache\conf\httpd.conf 或C:\apache\conf\httpd.conf //查看WINDOWS系统apache文件

c:/Resin-3.0.14/conf/resin.conf //查看jsp开发的网站 resin文件配置信息.

c:/Resin/conf/resin.conf /usr/local/resin/conf/resin.conf 查看linux系统配置的JSP虚拟主机

d:\APACHE\Apache2\conf\httpd.conf

C:\Program Files\mysql\my.ini

C:\mysql\data\mysql\user.MYD 存在MYSQL系统中的用户密码

LUNIX/UNIX 下:

/usr/local/app/apache2/conf/httpd.conf //apache2缺省配置文件

/usr/local/apache2/conf/httpd.conf

/usr/local/app/apache2/conf/extra/httpd-vhosts.conf //虚拟网站设置

/usr/local/app/php5/lib/php.ini //PHP相关设置

/etc/sysconfig/iptables //从中得到防火墙规则策略

/etc/httpd/conf/httpd.conf // apache配置文件

/etc/rsyncd.conf //同步程序配置文件

/etc/my.cnf //mysql的配置文件

/etc/redhat-release //系统版本

/etc/issue

/etc/issue.net

/usr/local/app/php5/lib/php.ini //PHP相关设置

/usr/local/app/apache2/conf/extra/httpd-vhosts.conf //虚拟网站设置

/etc/httpd/conf/httpd.conf或/usr/local/apche/conf/httpd.conf 查看linux APACHE虚拟主机配置文件

/usr/local/resin-3.0.22/conf/resin.conf 针对3.0.22的RESIN配置文件查看

/usr/local/resin-pro-3.0.22/conf/resin.conf 同上

/usr/local/app/apache2/conf/extra/httpd-vhosts.conf APASHE虚拟主机查看

/etc/httpd/conf/httpd.conf或/usr/local/apche/conf /httpd.conf 查看linux APACHE虚拟主机配置文件

/usr/local/resin-3.0.22/conf/resin.conf 针对3.0.22的RESIN配置文件查看

/usr/local/resin-pro-3.0.22/conf/resin.conf 同上

/usr/local/app/apache2/conf/extra/httpd-vhosts.conf APASHE虚拟主机查看

/etc/sysconfig/iptables 查看防火墙策略

load_file(char(47)) 可以列出FreeBSD,Sunos系统根目录

replace(load_file(0×2F6574632F706173737764),0×3c,0×20)

replace(load_file(char(47,101,116,99,47,112,97,115,115,119,100)),char(60),char(32))


注意事项

  1. 权限问题:LOAD_FILE()函数只能读取MySQL服务器有权限访问的文件。如果MySQL服务器以较低权限运行(如不使用root用户),则可能无法读取系统目录中的敏感文件。

  2. 文件路径格式 :在Windows系统中,文件路径通常使用反斜杠(\)作为分隔符;在Linux系统中,文件路径使用正斜杠(/)作为分隔符。

  3. URL编码:在通过SQL注入攻击利用LOAD_FILE()函数时,攻击者需要对文件路径进行URL编码,以确保路径在SQL查询中正确解析。

  4. 防御措施:为了防止MySQL注入攻击,建议采取以下措施:

    • 使用参数化查询或预编译语句,避免将用户输入直接嵌入SQL查询中。
    • 限制MySQL用户的权限,确保MySQL服务器无法访问敏感文件。
    • 对Web应用程序进行安全审计和测试,及时发现并修复安全漏洞。
相关推荐
q***81647 小时前
MySQL:数据查询-limit
数据库·mysql
p***92487 小时前
DBeaver连接本地MySQL、创建数据库表的基础操作
数据库·mysql
独行soc8 小时前
2025年渗透测试面试题总结-264(题目+回答)
网络·python·安全·web安全·网络安全·渗透测试·安全狮
REDcker9 小时前
tcpdump 网络数据包分析工具完整教程
网络·测试工具·tcpdump
I***t71610 小时前
一条sql 在MySQL中是如何执行的
数据库·sql·mysql
若汝棋茗10 小时前
在网络密林中传递轻盈信使 —— TouchSocket 的 UdpSession 探秘
网络
嵌入式-小王10 小时前
每天掌握一个网络协议----ICMP
网络·网络协议·ping
麦麦鸡腿堡10 小时前
Java_网络编程_InetAddress类与Socket类
java·服务器·网络
Awkwardx10 小时前
Linux网络编程—应用层协议HTTP
网络·网络协议·http
4***v21410 小时前
详解 为什么 tcp 会出现 粘包 拆包 问题
网络·tcp/ip·php