Drupal 远程代码执行漏洞(CVE-2019-6339)简单复现

Drupal 远程代码执行漏洞(CVE-2019-6339)简单复现

漏洞简介:

Drupal core是Drupal社区所维护的一套用PHP语言开发的免费、开源的内容管理系统。 Drupal core 7.62之前的7.x版本、8.6.6之前的8.6.x版本和8.5.9之前的8.5.x版本中的内置phar stream wrapper(PHP)存在远程代码执行漏洞。远程攻击者可利用该漏洞执行任意的php代码
 

影响版本:

Drupal core 7.62之前的7.x版本、8.6.6之前的8.6.x版本和8.5.9之前的8.5.x版本

环境搭建:

使用vulhub环境

进入目录
/root/vulhub/drupal/CVE-2019-6339

运行命令:docker-compose up -d

访问127.0.0.1:8080

进行CMF的安装,选择数据库时用sqlite数据库

 漏洞利用:

Drupal 的图片默认存储位置为 /sites/default/files/pictures//,默认存储名称为其原来的名称,所以之后在利用漏洞时,可以知道上传后的图片的具体位置。

访问 http://127.0.0.1:8080/admin/config/media/file-system,在 Temporary directory 处输入之前上传的图片路径,示例为 phar://./sites/default/files/pictures/2020-03/blog-ZDI-CAN-7232-cat.jpg,保存后将触发该漏洞。如下图所示,触发成功。
上传POC头像

https://github.com/thezdi/PoC/blob/master/Drupal/drupal_xss_rce.zip

管理员修改资料处上传头像

http://x.x.x.x:8080/user/1/edit

 设置临时目录


http://x.x.x.x:8080/admin/config/media/file-system 

 这里列举出了/etc/passwd,证明是可以执行命令的

简单分析了一下poc,然后修改一下

这里执行的是一条很简单的命令,稍微替换一下,比如ps -aux,此时是7个字节数,要把s对应的字节数目改成7

看一下结果

修复建议: 

 https://www.drupal.org/SA-CORE-2019-002。
升级Drupal至最新版本。

猜你喜欢

转载自blog.csdn.net/qq_48985780/article/details/121330913