Drupal核心远程代码执行漏洞预警(CVE-2018-7600)

来源:scanv2018.05.15

一.简介

Drupal 是使用 PHP 语言编写的开源内容管理框架,Drupal 综合了强大并可自由配置的功能,能支持各种不同应用的网站项目。其Drupal社区是全球最大的开源社区之一, 在社区的维护下,Drupal 的代码在安全性、健壮性上具有世界较高水平。
2018年3月28日,Drupal 安全团队披露了一个非常关键的(21/25 NIST 等级)漏洞, 绰号Drupalgeddon 2(SA-CORE-2018-002 / CVE-2018-7600)。此漏洞允许未经身份验证的攻击者在默认或常见的Drupal 安装上执行远程代码执行。据 Drupal 官方数据统计, 全球有超过100万个网站正在使用Drupal,影响范围非常大。随后,Seebug 漏洞平台收录了该漏洞。
2018 年4月13日,Check Point Research 公开了 Drupalgeddon 2 漏洞的详细信息,同时 Github 上出现了该漏洞的验证程序。
2018 年4月13日,知道创宇 404 实验室漏洞情报团队开始了漏洞应急,复现了该漏洞。

二.影响版本

Drupal 6.x、Drupal 7.x、Drupal 8.x均受此漏洞影响。 但不包括已修复版本:
Drupal 7.58
Drupal 8.3.9
Drupal 8.4.6
Drupal 8.5.1

三.漏洞复现

复现环境: Docker 环境  Drupal 8.5.0

环境搭建:

1. 从 Github 下载 Drupal Dockerfile[5]。
2. 修改 Dockerfile 如下, 使其安装 8.5.0 版本。
3. 构建 Docker 环境:
docker build -t drupal_vul .
4. 启动 Docker 环境以及 Mysql 数据库:
docker run -d --name drupal_vul -p 8000:80 drupal_vul
docker run --name=mysql -e MYSQL_ALLOW_EMPTY_PASSWORD=True -e MYSQL_ROOT_HOST=% -d mysql/mysql-server
5. 访问 ip:8000 安装逐步 Drupal。
6. 安装完成界面:

复现过程及结果:

Github 已有公开的 PoC 程序。向目标 Drupal 发送 id 命令,查看执行结果:

四.漏洞影响范围

通过ZoomEye网络空间探测引擎进行探测,以下为网络空间中Drupal的数量。


五.防护方案
1.先检测是否含有此漏洞

2.升级到最新版本的Drupal7或 8核心。已发布更新的版本包括:Drupal 7.58,Drupal 8.3.9,Drupal 8.4.6,Drupal 8.5.1
3.使用第三方防火墙进行防护(如创宇盾[https://www.yunaq.com/cyd/])
4.技术业务咨询:
知道创宇技术业务咨询热线 : 400-060-9587(政府,国有企业)、028-68360638(互联网企业)

热门文章

关注知道创宇云安全

获取安全动态