ImageMagickをユーザーの画像に使用しても安全ですか?


4

ユーザーが提供する任意の画像でImageMagickを使用すると、セキュリティ上の懸念があるかもしれないと聞きました。たとえば、以下のリンクは、バッファオーバーフローエクスプロイトがあったことの証拠を提供します。ユーザー画像を扱うWebサービスの一部としてこれを安全に使用できるかどうかは誰にもわかりますか?

http://rhn.redhat.com/errata/RHSA-2006-0633.html

回答:


5

このセキュリティアドバイザリは2006年のものです。すべてのソフトウェアにはバグがありますが、ImageMagickには他のソフトウェア以上のものがあるとは言いません。真剣に、Webサービスを実装している場合、ImageMagickよりもApacheを介して誰かにハッキングされる可能性が高いでしょう。

つまり、心配する必要はありませんが、すべてのソフトウェアを最新の状態に保ちます。

編集:ところで、私はクライアントがImageMagickを使用したWebサービスを実装するのを手伝いましたが、1つの問題について聞いたことはありません。


3
ImageMagickは、コーデックが悪意のあるデータを処理するように設計されていないため、ハッキングするのは簡単です。imagetragick.com Sandbox ImageMagickを適切に参照するか、信頼できないデータで使用しないでください。
リリスリバー

7

はい。セキュリティ上のリスクがあります。ソフトウェアにはバグがあり、それらのいくつかは実行中のシステムを攻撃するために使用できます。

ただし、リスクを最小限に抑えることができます。

  1. ImageMagickを実行するのに十分であるように、最小限の権限を持つユーザーアカウントを作成します。ImageMagickの実行にそのアカウントのみを使用するようになりました

  2. 自動セキュリティ更新を有効にする:UbuntuのようなLinuxシステムは、セキュリティ修正を自動的にインストールするように構成できます。これにより、脆弱性が見つかった場合にシステムが脆弱になる時間が短縮されます。Windowsシステムにも自動更新システムがありますが、ImageMagickなどのサードパーティソフトウェアは含まれていません。


これは受け入れられた答えだと思います。
サムルービー

-1

いや

ImageMagickは柔軟性のために設計されました。ブラウザの画像処理ライブラリのように細工された入力に対して強化されていません。おそらく、ブラウザよりもImageMagickのようなライブラリで悪用可能なバグを見つける方がずっと簡単でしょう。

ImageMagickでバッファオーバーフローを発見した攻撃者は、それを使用して、ImageMagickを実行しているプロセスの権限で任意のコードを実行できます。

これにより、攻撃者は、特権をさらにエスカレートするために使用できる橋頭headを得ることができます。たとえば、PATHおよびトロイの木馬攻撃を介して、他のバックエンドを混乱させたり、本番環境内でパッチ未適用の他のサービスを悪用したりします。

サードパーティのコンテンツでImageMagick を絶対に使用する必要がある場合は、ImageMagickのセキュリティポリシードキュメントの「その他のセキュリティに関する考慮事項」を参照してください。

セキュリティポリシーに加えて、ImageMagickをより安全にすることができます...

  • ImageMagickを最新の状態に保ちます。最新リリースには、過去に発見したセキュリティ上の欠陥に対する修正が含まれています。
  • ImageMagickに渡すファイル名またはコマンドラインオプションをサニタイズします。
  • DockerなどのサニタイズされたソフトウェアコンテナーでImageMagickを実行する。
  • ImageMagickを最も特権の低いユーザー(例: 'nobody')として実行します。画像ファイルの種類を明示的に設定します。たとえば、image.pngではなくファイル名png:image.pngを使用します。ファイル名に明示的な画像タイプがない場合、ImageMagickは画像タイプを推測します。
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.