◆概要
2022 年 10 月に修正された、画像処理ソフトウェアである ImageMagick の脆弱性の悪用手順が公開されています。脆弱性を悪用されてしまった場合は、悪意のある PNG ファイルの変換により、システム上の任意のファイルが読み取られてしまいます。ソフトウェアのアップデートにより対策してください。
◆分析者コメント
当該脆弱性では、ImageMagick の実行権限で可能な範囲で、任意のファイルが読み取られてしまいます。ソフトウェアの性質上、画像処理をするアプリケーションやサーバソフトウェアのライブラリとして使用されている可能性が高いため、画像を処理するアプリケーションを提供するサーバソフトウェアを公開している場合は、当該脆弱性の影響を受けるバージョンの ImageMagick を使用しているかどうかを確認してください。任意の PNG ファイルのアップロードを許可するようなアプリケーションをサーバで提供している場合は、当該脆弱性の影響を受ける可能性が高いため、特に注意が必要です。
◆深刻度(CVSS)
[CVSS v3.1]
6.5
https://nvd.nist.gov/vuln-metrics/cvss/v3-calculator?name=CVE-2022-44268&vector=AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:N/A:N&version=3.1&source=NIST
◆影響を受けるソフトウェア
バージョン 7.1.0-49 の ImageMagick のみが当該脆弱性の影響を受けると報告されていますが、OS のベンダが提供しているパッケージからインストールしている場合はバージョン情報が大きく異なるため、使用している OS のベンダのページを確認してください。
また、ソフトウェアにライブラリとして組み込まれている場合は、ソフトウェアの提供元の脆弱性情報を併せて確認してください。
◆解説
画像処理ソフトウェアとして世界的に使用されている ImageMagick に、画像処理中の不備により任意のファイルの読み取りが可能となる脆弱性が報告されています。
当該脆弱性は、ImageMagick の画像処理機能のうち、PNG ファイルを変換する処理に存在します。coders/png.c に実装されている ReadOnePNGImage 関数では読み込む画像のメタデータに「profile」というキーが存在するかどうかを確認しないため、「profile」というキーの値に設定されたパスのファイルを読み取って、そのファイルの内容を処理後の画像データに含めてしまいます。
当該脆弱性への対策の修正差分は、以下の Commit です。
GitHub - ImageMagick/ImageMagick
https://github.com/ImageMagick/ImageMagick/commit/05673e63c919e61ffa1107804d1138c46547a475
if 文の条件式に「(LocaleCompare(key,"profile") == 0) ||」を挿入して、メタデータの内容を検証することで、脆弱性に対策しています。
◆対策
ソフトウェアを脆弱性に対策された最新版のバージョンにアップデートしてください。
◆関連情報
[1] Debian 社公式
https://lists.debian.org/debian-lts-announce/2023/03/msg00008.html
[2] Metabase Q 社ブログ
https://www.metabaseq.com/imagemagick-zero-days/
[3] National Vulnerability Database (NDV)
https://nvd.nist.gov/vuln/detail/CVE-2022-44268
[4] CVE MITRE
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2022-44268
◆エクスプロイト
以下の Web サイトにて、当該脆弱性を悪用してファイルを読み取る手順が公
開されています。
GitHub - duc-nt/CVE-2022-44268-ImageMagick-Arbitrary-File-Read-PoC
https://github.com/duc-nt/CVE-2022-44268-ImageMagick-Arbitrary-File-Read-PoC
本記事では、/etc/passwd を対象として、任意のファイル読み取りをする手順を示します。
2022 年 10 月に修正された、画像処理ソフトウェアである ImageMagick の脆弱性の悪用手順が公開されています。脆弱性を悪用されてしまった場合は、悪意のある PNG ファイルの変換により、システム上の任意のファイルが読み取られてしまいます。ソフトウェアのアップデートにより対策してください。
◆分析者コメント
当該脆弱性では、ImageMagick の実行権限で可能な範囲で、任意のファイルが読み取られてしまいます。ソフトウェアの性質上、画像処理をするアプリケーションやサーバソフトウェアのライブラリとして使用されている可能性が高いため、画像を処理するアプリケーションを提供するサーバソフトウェアを公開している場合は、当該脆弱性の影響を受けるバージョンの ImageMagick を使用しているかどうかを確認してください。任意の PNG ファイルのアップロードを許可するようなアプリケーションをサーバで提供している場合は、当該脆弱性の影響を受ける可能性が高いため、特に注意が必要です。
◆深刻度(CVSS)
[CVSS v3.1]
6.5
https://nvd.nist.gov/vuln-metrics/cvss/v3-calculator?name=CVE-2022-44268&vector=AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:N/A:N&version=3.1&source=NIST
◆影響を受けるソフトウェア
バージョン 7.1.0-49 の ImageMagick のみが当該脆弱性の影響を受けると報告されていますが、OS のベンダが提供しているパッケージからインストールしている場合はバージョン情報が大きく異なるため、使用している OS のベンダのページを確認してください。
また、ソフトウェアにライブラリとして組み込まれている場合は、ソフトウェアの提供元の脆弱性情報を併せて確認してください。
◆解説
画像処理ソフトウェアとして世界的に使用されている ImageMagick に、画像処理中の不備により任意のファイルの読み取りが可能となる脆弱性が報告されています。
当該脆弱性は、ImageMagick の画像処理機能のうち、PNG ファイルを変換する処理に存在します。coders/png.c に実装されている ReadOnePNGImage 関数では読み込む画像のメタデータに「profile」というキーが存在するかどうかを確認しないため、「profile」というキーの値に設定されたパスのファイルを読み取って、そのファイルの内容を処理後の画像データに含めてしまいます。
当該脆弱性への対策の修正差分は、以下の Commit です。
GitHub - ImageMagick/ImageMagick
https://github.com/ImageMagick/ImageMagick/commit/05673e63c919e61ffa1107804d1138c46547a475
if 文の条件式に「(LocaleCompare(key,"profile") == 0) ||」を挿入して、メタデータの内容を検証することで、脆弱性に対策しています。
◆対策
ソフトウェアを脆弱性に対策された最新版のバージョンにアップデートしてください。
◆関連情報
[1] Debian 社公式
https://lists.debian.org/debian-lts-announce/2023/03/msg00008.html
[2] Metabase Q 社ブログ
https://www.metabaseq.com/imagemagick-zero-days/
[3] National Vulnerability Database (NDV)
https://nvd.nist.gov/vuln/detail/CVE-2022-44268
[4] CVE MITRE
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2022-44268
◆エクスプロイト
以下の Web サイトにて、当該脆弱性を悪用してファイルを読み取る手順が公
開されています。
GitHub - duc-nt/CVE-2022-44268-ImageMagick-Arbitrary-File-Read-PoC
https://github.com/duc-nt/CVE-2022-44268-ImageMagick-Arbitrary-File-Read-PoC
本記事では、/etc/passwd を対象として、任意のファイル読み取りをする手順を示します。