【活用ガイド】

JVNDB-2016-002443

ImageMagick に入力値検証不備の脆弱性

概要

ImageMagick は、delegate の仕組みを使って入力データの処理を行う前の検証が適切に実行されていないため、結果として任意のコードを実行される可能性があります。この問題は "ImageTragick" としても知られています。

不適切な入力検査 (CWE-20) - CVE-2016-3714

CWE-20: Improper Input Validation
http://cwe.mitre.org/data/definitions/20.html

研究者は、メーリングリストに次のように投稿しています:


 Insufficient filtering for filename passed to delegate's command allows remote code execution during conversion of several file formats.

 ImageMagick allows to process files with external libraries. This feature is called 'delegate'. It is implemented as a system() with command string ('command') from the config file delegates.xml with actual value for different params (input/output filenames etc). Due to insufficient %M param filtering it is possible to conduct shell command injection.

 delegate 先のコマンドに渡す前のファイル名のフィルタリングが不十分なため、ファイル形式の変換中に任意のコードを実行される可能性がある。

 ImageMagick には外部ライブラリを使用してファイルを処理する 'delegate' と呼ばれる機能が存在する。この機能は、設定ファイル delegates.xml で指定されたコマンド名 ('command') と、入力ファイル名や出力ファイル名などのパラメータの値を使って組み立てられた文字列を system() 関数に渡して実行する形で実装されている。パラメータ %M に当てはめる入力値のフィルタリングが不十分なため、シェルコマンドインジェクションが可能である。


ImageMagick に画像ファイルを処理させることで、攻撃者は ImageMagick が動作しているシステム上で任意のコマンドを実行することが可能です。本脆弱性の影響を受ける典型的な構成例としては、ファイルのアップロードを許可しているウェブサーバで、アップロードされたファイルを ImageMagick で処理しているケースが考えられます。

本脆弱性を使用した攻撃コードが公開されています。ウェブサイト ImageTragick (imagetragick.com) によれば、既に本脆弱性を使用した攻撃活動が観測されているとのことです。

ImageTragick
https://imagetragick.com/
CVSS による深刻度 (CVSS とは?)

CVSS v3 による深刻度
基本値: 8.4 (重要) [NVD値]
  • 攻撃元区分: ローカル
  • 攻撃条件の複雑さ: 低
  • 攻撃に必要な特権レベル: 不要
  • 利用者の関与: 不要
  • 影響の想定範囲: 変更なし
  • 機密性への影響(C): 高
  • 完全性への影響(I): 高
  • 可用性への影響(A): 高
CVSS v2 による深刻度
基本値: 10.0 (危険) [NVD値]
  • 攻撃元区分: ネットワーク
  • 攻撃条件の複雑さ: 低
  • 攻撃前の認証要否: 不要
  • 機密性への影響(C): 全面的
  • 完全性への影響(I): 全面的
  • 可用性への影響(A): 全面的
影響を受けるシステム


Canonical
  • Ubuntu 12.04 LTS
  • Ubuntu 14.04 LTS
  • Ubuntu 15.10
  • Ubuntu 16.04 LTS
ImageMagick
  • ImageMagick 6.9.3-10 より前のバージョン
  • ImageMagick 7.0.1-1 より前のバージョン

想定される影響

画像ファイルをアップロードできる遠隔の第三者によって、ImageMagick を実行するユーザの権限で任意のコードを実行される可能性があります。
対策

[アップデートする]
本脆弱性は ImageMagick 6.9.3-10 および 7.0.1-1 で修正されています。
なお 2016年5月9日現在、さらなるアップデート版として ImageMagick 6.9.4-0 および 7.0.1-2 がリリースされています。
開発者が提供する情報をもとに最新版へアップデートしてください。

あわせて、研究者が示す次の手順を参考に、システム構成のセキュリティ強化や設定ファイルの更新を行ってください。

 * ImageMagick による画像ファイルの処理を行う前に、その画像ファイル先頭の "magic bytes" が適切な値であることを確認する
 * ImageMagick のポリシーファイルにおいて、脆弱な coder を無効化する

詳細は、ウェブサイト ImageTragick (imagetragick.com) を参照してください。

ImageTragick
https://imagetragick.com/
ベンダ情報

Canonical ImageMagick オラクル サイボウズ レッドハット 富士通
CWEによる脆弱性タイプ一覧  CWEとは?

  1. 不適切な入力確認(CWE-20) [NVD評価]
共通脆弱性識別子(CVE)  CVEとは?

  1. CVE-2016-3714
参考情報

  1. JVN : JVNVU#92998929
  2. National Vulnerability Database (NVD) : CVE-2016-3714
  3. JPCERT 緊急報告 : JPCERT-AT-2016-0021
  4. US-CERT Vulnerability Note : VU#250519
更新履歴

  • [2016年05月09日]
      掲載
    [2016年05月24日]
      対策:内容を更新
    [2016年06月01日]
      ベンダ情報:サイボウズ (imagemagickライブラリの脆弱性(CVE-2016-3714)について(2016/5/26)) を追加
      ベンダ情報:サイボウズ ([CyVDB-1228]ImageMagick ライブラリに関する脆弱性 (Office 9)) を追加
      ベンダ情報:サイボウズ ([CyVDB-1228]ImageMagick ライブラリに関する脆弱性 (Office 10)) を追加
      ベンダ情報:サイボウズ ([CyVDB-1232]ImageMagick ライブラリに関する脆弱性 (MailWise 5)) を追加
    [2016年08月31日]
      影響を受けるシステム:ベンダ情報の追加に伴い内容を更新
      ベンダ情報:レッドハット (RHSA-2016:0726) を追加
      ベンダ情報:Canonical (USN-2990-1) を追加
    [2016年10月07日]
      ベンダ情報:富士通 (脆弱性情報 2016年 (CVE-2016-3714)) を追加
    [2016年11月18日]
      ベンダ情報:オラクル (Oracle Linux Bulletin - April 2016) を追加
      ベンダ情報:オラクル (Oracle Solaris Third Party Bulletin - July 2016) を追加