一個月后,圖像處理軟件ImageMagick再次被發現存在高危漏洞(CVE-2016-5118),可導致本地或可能的遠程代碼執行,由ImageMagick5.5.2 發展出來的圖像處理軟件GraphicsMagick亦存在此漏洞。
ImageMagick是一款開源的圖像處理軟件,該軟件能用作創建、編輯、合成圖片,支持多種編程語言,包括Perl、C++、PHP、Python、Ruby和NodeJS等,因此被眾多網站大量應用于識別、裁剪、或調整用戶上傳的圖片。
GraphicsMagick是ImageMagick的一個分支,號稱圖像處理領域的瑞士軍刀。 短小精悍的代碼卻提供了一個魯棒、高效的工具和庫集合,來處理圖像的讀取、寫入等操作,支持超過88種圖像格式,包括重要的DPX、GIF、JPEG、JPEG-2000、PNG、PDF、PNM和TIFF,可以在Linux、Mac、Windows等絕大多數的平臺上使用。GaphicsMagick支持大圖片的處理,能夠動態的生成圖片,特別適用于互聯網的應用。GaphicsMagick不僅支持命令行的模式,同時也支持C、C++、Perl、PHP、Tcl、Ruby等的調用。
漏洞危害
當GraphicsMagick和ImageMagick打開文件時,如果文件名的第一個字符為“|”,則文件名會被傳遞給shell程序使用POSIX函數popen()執行,文件打開操作由源文件blob.c中的OpenBlob()函數處理。攻擊者可借助文件名利用該漏洞執行shell代碼。
影響范圍
此漏洞可影響眾多網站、博客、社交媒體平臺和內容管理系統(CMS),例如WordPress、Drupal等各種可上傳圖片的網站,特別是可批量裁剪圖片的網站。對企業用戶威脅較大。
漏洞檢測
啟明星辰天鏡脆弱性掃描與管理系統V6.0目前已經支持對該漏洞進行檢測:
請天鏡脆弱性掃描與管理系統V6.0產品的用戶盡快升級到最新版本,及時對該漏洞進行檢測,以便盡快采取防范措施。
漏洞庫升級
天鏡脆弱性掃描與管理系統V6.0已于2016年6月2日緊急發布針對ImageMagick漏洞的升級包,用戶升級天鏡漏掃產品漏洞庫后即可對ImageMagick漏洞進行掃描:
6070版本升級包為607000024,升級包下載地址:
http://www.venustech.com.cn/DownFile/575/
6061版本升級包為6000458,升級包下載地址:
http://www.venustech.com.cn/DownFile/456/
漏洞修復建議
方案一:修改源代碼,重新編譯GraphicsMagick和ImageMagick
GraphicsMagick在文件magick/blob.c中增加以下內容:
#undef HAVE_POPEN
ImageMagick在文件MagickCore/blob.c中增加:
#undef MAGICKCORE_HAVE_POPEN
在配置文件中增加如下內容:
<policy domain="path" rights="none" pattern="|*" />
方案二:關注官方網站,及時升級到最新版本
目前廠商已經發布了升級補丁以修復此安全問題,詳情請關注廠商主頁: http://www.graphicsmagick.org/
PS:啟明星辰還貼心提供ImageMagick&GraphicsMagick本地漏洞檢測工具,提供給沒有天鏡脆弱性掃描與管理系統V6.0產品的用戶對該漏洞進行檢測:
1.運行ImageMagick-graphicmagic.py;
2. 執行結果如下:
有需要的用戶請聯系啟明星辰當地客戶代表獲取本地漏洞檢測工具。