ImageMagick Security

htARTE(HackTricks AWS Red Team Expert) でAWSハッキングをゼロからヒーローまで学ぶ

HackTricksをサポートする他の方法:

https://blog.doyensec.com/2023/01/10/imagemagick-security-policy-evaluator.htmlで詳細を確認してください。

ImageMagickは多機能な画像処理ライブラリであり、詳細なオンラインドキュメントの不足と幅広いオプションにより、セキュリティポリシーの構成に課題を提供しています。ユーザーはしばしば断片化されたインターネットソースに基づいてポリシーを作成し、潜在的な誤構成を引き起こすことがあります。このライブラリは100を超える画像形式をサポートしており、それぞれが複雑さと脆弱性プロファイルに寄与しています。これは、歴史的なセキュリティインシデントによって示されています。

より安全なポリシーへ

これらの課題に対処するために、ツールが開発されました。このツールは包括的な研究に基づいており、ImageMagickのセキュリティポリシーの設計と監査を支援することを目的としています。このツールは、ポリシーが堅牢であり、悪用される可能性のある抜け穴がないことを確認することを目指しています。

ホワイトリスト対ブラックリストアプローチ

歴史的に、ImageMagickのポリシーは、特定のコーダーがアクセスを拒否されるブラックリストアプローチに依存していました。しかし、ImageMagick 6.9.7-7での変更により、このパラダイムが変わり、ホワイトリストアプローチが可能になりました。このアプローチは、まずすべてのコーダーのアクセスを拒否し、信頼されたコーダーに選択的にアクセスを許可することで、セキュリティポジションを向上させています。

...
<policy domain="coder" rights="none" pattern="*" />
<policy domain="coder" rights="read | write" pattern="{GIF,JPEG,PNG,WEBP}" />
...

ポリシー内の大文字と小文字の区別

ImageMagickのポリシーパターンは大文字と小文字を区別することに注意することが重要です。そのため、コーダーやモジュールが正しく大文字で記述されていることは、意図しない権限を防ぐために不可欠です。

リソース制限

ImageMagickは適切に構成されていない場合、サービス拒否攻撃のリスクがあります。ポリシーで明示的なリソース制限を設定することは、そのような脆弱性を防ぐために不可欠です。

ポリシーの断片化

ポリシーは異なるImageMagickインストール間で断片化される可能性があり、潜在的な競合や上書きが発生する可能性があります。次のようなコマンドを使用して、アクティブなポリシーファイルを特定して検証することが推奨されています:

$ find / -iname policy.xml

初心者向け、制限的なポリシー

厳格なリソース制限とアクセス制御に焦点を当てた制限的なポリシーテンプレートが提案されています。このテンプレートは、特定のアプリケーション要件に合わせて調整されたポリシーの開発のための基準として機能します。

セキュリティポリシーの効果は、ImageMagickで identify -list policy コマンドを使用して確認できます。さらに、以前に言及された評価ツールを使用して、個々のニーズに基づいてポリシーを洗練させることができます。

参考文献

Last updated