(环境搭建+复现) CVE-2019-6341 Drupal XSS漏洞
【CVE编号】
CVE-2019-6341
【漏洞名称】
Drupal XSS漏洞
1【靶标分类】
Web类型类靶标
2【影响版本】
在7.65之前的Drupal 7版本中; 8.6.13之前的Drupal 8.6版本; 8.5.14之前的Drupal 8.5版本。
3【漏洞分类】
XSS
4【漏洞等级】
中
5【漏洞简介】
Drupal诞生于2000年,是一个基于PHP语言编写的开发型CMF(内容管理框架)。在某些情况下,通过文件模块或者子系统上传恶意文件触发XSS漏洞。
0x01【靶标运行环境】
操作系统:Ubuntu1804(优麒麟)
Drupal 8.5.0
工具:vulhub,docker
【靶标搭建过程】
1、使用vulhub环境
2、进入目录
/root/vulhub/drupal/CVE-2019-6341
docker-compose up -d
3、访问127.0.0.1:8080
进行CMF的安装,选择数据库时用sqlite数据库
【靶场利用过程】
1、
该漏洞需要利用drupal文件模块上传文件的漏洞,伪造一个图片文件,上传,文件的内容实际是一段HTML代码,内嵌JS,这样其他用户在访问这个链接时,就可能触发XSS漏洞。
Drupal 的图片默认存储位置为 /sites/default/files/pictures//,默认存储名称为其原来的名称,所以之后在利用漏洞时,可以知道上传后的图片的具体位置。
使用PoC上传构造好的伪造GIF文件,PoC参考thezdi/PoC的PoC。
如图,输入如下命令,即可使用PoC构造样本并完成上传功能,第一个参数为目标IP 第二个参数为目标端口。
php blog-poc.php 192.168.152.130 8080
2、上传POC成功
3、访问
http://192.168.152.130:8080/sites/default/files/pictures/2020-03/_0
Tips:
因为 Chrome 和 FireFox 浏览器自带部分过滤 XSS 功能,所以验证存在时可使用 Edge 浏览器或者 IE 浏览器。
访问的图片名称为_0的原因是因为 Drupal 的规则机制,具体原理见Drupal 1-click to RCE 分析
【解决方案】
1、升级Drupal至最新版本
https://www.drupal.org/SA-CORE-2019-004