phpMyAdmin远程文件包含漏洞CVE-2018-12613深度分析

需积分: 0 0 下载量 149 浏览量 更新于2024-08-05 收藏 2.42MB PDF 举报
"phpmyadmin 远程文件包含漏洞(CVE-2018-12613)" 本文将详细解析PHPMyAdmin中的远程文件包含漏洞(CVE-2018-12613),这是一个严重影响该开源MySQL数据库管理工具安全性的漏洞。PHPMyAdmin是一个广受欢迎的Web应用程序,它允许用户通过Web界面管理MySQL或MariaDB数据库。此漏洞出现在版本4.8.0和4.8.1中。 漏洞背景: PHPMyAdmin的`index.php`文件中存在一个文件包含漏洞,攻击者可以通过精心构造的URL参数来绕过文件路径的验证,导致远程文件包含。这种类型的漏洞通常允许攻击者读取服务器上的任意文件,甚至可能执行任意代码,从而对系统的安全性构成严重威胁。 受影响的版本: 根据描述,此漏洞影响的是PHPMyAdmin的4.8.0和4.8.1版本。如果配置不当,例如设置`$cfg['AllowArbitraryServer'] = true`或`$cfg['ServerDefault'] = 0`,攻击者可以在没有身份验证的情况下利用这个漏洞。 利用条件: 要成功利用此漏洞,攻击者需要满足以下两个条件之一: 1. `$cfg['AllowArbitraryServer'] = true`:允许攻击者指定任意服务器,如果该服务器已被攻击者控制,他们可以执行任意代码。 2. `$cfg['ServerDefault'] = 0`:这将绕过登录系统,使攻击者无需认证即可执行易受攻击的代码。 漏洞分析: 在漏洞分析过程中,研究人员发现攻击者可以通过二次编码(如`%253f`代表`?`)来绕过文件路径的过滤,构造如下URL进行测试: `http://192.168.1.15:8080/index.php?target=db_sql.php%253f/../../..` 当访问这样的URL时,如果服务器上存在漏洞,它可能会尝试包含`/etc/passwd`这样的系统文件,从而证明漏洞的存在。 漏洞利用: 攻击者可以利用这个漏洞来读取服务器敏感文件,比如系统配置、密码文件等。更进一步,通过结合其他技术,如SQL注入或开启MySQL的`general_log`,攻击者可能能够实现远程代码执行(RCE),获取服务器的完全控制权。 解决方法: 修复此漏洞的关键在于更新到不受影响的PHPMyAdmin版本。PHPMyAdmin团队在后续版本中已经修复了这个问题。此外,建议用户定期更新软件,避免使用可能暴露此类漏洞的旧版本。同时,检查并正确配置相关的安全设置,如禁止未授权的远程服务器连接,以及确保身份验证机制有效。 总结: PHPMyAdmin的CVE-2018-12613远程文件包含漏洞是一个严重的安全问题,可能导致敏感数据泄露甚至服务器被完全接管。因此,对于使用受影响版本的用户,及时升级到最新版本并正确配置安全设置至关重要,以确保系统的安全性。