ExifToolで新たに開示された脆弱性(CVE-2026-3102として追跡)は、悪意のある画像メタデータを通じてmacOSシステムをコマンド実行攻撃にさらし、広く使用されているファイル処理ツールの継続的なリスクを浮き彫りにしています。
ExifToolは、画像、PDF、マルチメディアファイル内のメタデータを読み取り、書き込むためにメディアワークフロー全体で使用される一般的なユーティリティです。
その柔軟性と自動化パイプラインへの統合により、多くの環境で重要なコンポーネントとなっています。
この脆弱性は、入力の不適切なサニタイズも関係していた前の脆弱性(CVE-2021-22204)の教訓に基づいています。
新たに発見された問題では、ExifToolがmacOS上のファイル作成日に関連するメタデータフィールドをどのように処理するかに根本的な原因があります。

具体的には、FileCreateDateまたはMDItemFSCreationDateタグに関連するメタデータ値が適切にサニタイズされずに処理される場合に脆弱性がトリガーされます。
技術的なレベルでは、この問題はユーザーが制御可能な入力が機密関数に到達するための不安全な処理に起因しています。
しかし、KasperskyのGlobal Research and Analysis Team(GReAT)のセキュリティ研究者は、2026年2月に、攻撃者が画像メタデータの内部に悪意のあるコマンドを埋め込み、ExifToolバージョン13.49以前を実行しているmacOSシステムで処理されるときにそれらを実行できる脆弱性を特定しました。
ExifToolは、ファイルから直接抽出されたメタデータ値を含む複数の変数を使用してシステムコマンドを内部的に構築します。
ほとんどの入力はサニタイズされていますが、日付値は特定の実行パスではフィルタリングされないままです。その後、この値はsystem()呼び出しに渡され、攻撃者はメタデータフィールドを操作することでシェルコマンドを注入できます。
悪用には-nフラグの使用が必要です。このフラグは、ExifToolに通常のフォーマットおよび検証チェックを適用せずに生のメタデータ値を処理するよう指示します。
このフラグは内部保護を効果的にバイパスし、攻撃者がDateTimeOriginalなどのメタデータフィールドに悪意のあるペイロードを保存することを可能にします。
これらの値は後で-tagsFromFile機能を使用してFileCreateDateフィールドにコピーでき、脆弱なコードパスをトリガーして埋め込まれたコマンドを実行します。
たとえば、攻撃者は操作されたタイムスタンプフィールドを含む一見無害に見える画像を作成することができます。
注入前の完全な$cmd値、システム関数内で実行される実際のコマンドを表示するためにデバッグステートメントを追加しました。

macOSユーザーがこのイメージを脆弱なワークフローを使用してExifToolで処理する場合、隠されたペイロードはシステムシェルを通じて実行されます。
これにより、ツールを実行しているユーザーの特権を使用した任意のコマンド実行が生じる可能性があり、潜在的にマルウェアの展開、データ流出、またはネットワーク内の横移動につながる可能性があります。
この攻撃は、自動化された画像処理パイプライン、デジタルアセット管理システム、または大量のメディアファイルが処理されるニュースルーム環境に依存する組織にとって特に懸念があります。
悪意のあるコンテンツはメタデータに存在するため、ファイル自体は完全に合法的に見え、従来のセキュリティチェックを回避する可能性があります。
ExifTool開発者は、システムコマンドの実行方法を再設計することで、バージョン13.50で脆弱性に対処しました。注入の影響を受けやすい連結された文字列としてコマンドを構築する代わりに、パッチ版は引数ベースのシステムコールを使用します。
このアプローチは、パラメータを直接渡すことでシェル解釈のリスクを排除し、攻撃者が任意のコマンドを注入することを防止します。さらに、システム実行と出力処理を安全に管理するための専用ラッパー関数が導入されました。
ユーザーと組織は、ExifToolバージョン13.50以降に直ちにアップデートすることを強く推奨されます。サードパーティアプリケーションまたは内部スクリプト内にツールの埋め込みバージョンまたは古いバージョンが存在しないことを確認することも重要です。
サンドボックスや仮想マシンなどの分離された環境で信頼できないファイルを処理すると、さらに露出を減らすことができます。
CVE-2026-3102は、ソフトウェア設計における永続的なセキュリティ課題を強調しています。不適切な入力検証と不安全なコマンド実行パターンの組み合わせです。たとえ成熟した広く信頼されているツールであっても、信頼できないデータを処理する場合に重大なリスクをもたらす可能性があります。
このケースは、特に文字列ベースのコマンド構築を回避し、より安全な実行方法を優先することによる、安全なコーディング慣行の重要性を強化しています。
翻訳元: https://gbhackers.com/exiftool-vulnerability-2/