ImageMagick是一款开源图片处理库,支持PHP、Ruby、NodeJS和Python等多种语言,使用非常广泛,包括PHPimagick、Rubyrmagick和paperclip以及NodeJSimagemagick等多个图片处理插件都依赖它运行。使用ImageMagic工具集和开发包,可以用来读、写和处理超过89种基本格式的图片文件,包括流行的TIFF、JPEG、GIF、PNG、PDF以及PhotoCD等格式。利用ImageMagick,可以根据WEB应用程序的需要动态生成图片,还可以对一个(或一组)图片进行改变大小、旋转、锐化、减色或增加特效等操作。
漏洞简介年5月3日ImageMagick被公布出一个严重漏洞:存在一处远程命令执行漏洞。当其处理的上传图片带有攻击代码时,可被远程执行任意代码,进而可能控制服务器。该漏洞CNVD编号为CNVD--,CVE编号为CVE--。
影响范围据分析,受该漏洞影响的版本为:ImageMagick6.9.3-9及以下的所有版本。
漏洞原理漏洞产生的原因是ImageMagick使用system()指令调用来处理HTTPS请求,而对用户传入的shell参数没有做好过滤,导致能注入任意指令执行。
ImageMagick在MagickCore/constitute.c的ReadImage函数中解析图片,当图片地址以