GhostScript 沙箱绕过(命令执行)漏洞(CVE-2019-6116)

1.实验介绍

1.1 vulhub介绍

Vulhub是一个面向大众的开源漏洞靶场,基于docker和docker-compose的漏洞环境集合,进入对应目录并执行一条语句即可启动一个全新的漏洞环境,让漏洞复现变得更加简单,让安全研究者更加专注于漏洞原理本身。docker-compose是用python写的一个一个docker容器管理工具,可以一键启动多个容器等等。

1.2 CVE-2019-6116漏洞介绍

2019年1月23日晚,Artifex官方在ghostscriptf的master分支上提交合并了多达6处的修复。旨在修复 CVE-2019-6116 漏洞,该漏洞由 Google 安全研究员 Tavis 于2018年12月3日提交。该漏洞可以直接绕过 ghostscript 的安全沙箱,导致攻击者可以执行任意命令/读取任意文件。

GhostScript 被许多图片处理库所使用,如 ImageMagick、Python PIL 等,默认情况下这些库会根据图片的内容将其分发给不同的处理方法,其中就包括 GhostScript。

1.3 沙箱介绍

Sandboxie(又叫沙箱、沙盘)即是一个虚拟系统程序,允许你在沙盘环境中运行浏览器或其他程序,因此运行所产生的变化可以随后删除。它创造了一个类似沙盒的独立作业环境,在其内部运行的程序并不能对硬盘产生永久性的影响。 在网络安全中,沙箱指在隔离环境中,用以测试不受信任的文件或应用程序等行为的工具。

2.实验内容

2.1 环境搭建

#需要pip
root@kali:/# apt-get install python3-pip   
root@kali:/# pip3 install docker-compose 

#下载vulhub
root@kali:/# git clone https://github.com/vulhub/vulhub.git 

我这边是在github下载了项目的压缩包,拖进了KALI虚拟机。

2.2 实验开始

进入ghostscript/CVE-2020-15906文件夹执行如下命令启动漏洞环境:

docker-compose up -d

环境启动后,访问http://your-ip:8080可以看到一个上传组件。

上传poc.png(大牛写好的poc)

  • 即可执行
id > /tmp/CVE-2019-6116_is_success 
  • 进入容器
docker-compose exec web bash

输入命令查看是否成功

做完实验记得关闭环境

  • 输入指令
docker-compose down -v
posted on 2021-05-03 14:24  20181334张怡杰  阅读(450)  评论(0编辑  收藏  举报