Ghostscript の脆弱性 CVE-2026-39919:悪意のある PDF によるリモート・コード実行の恐れ

Critical Ghostscript Vulnerability Lets Malicious PDFs Trigger Remote Code Execution

2026/10/13 gbhackers — Ghostscript に重大な脆弱性 CVE-2026-39919 が発見された。この脆弱性を悪用する攻撃者は、悪意のある JPEG 2000 画像を埋め込んだ PDF ファイルを処理させることで、脆弱なサーバー上で任意のコード実行を引き起こす可能性がある。この脆弱性の深刻度は CVSS v3.1 で 9.8、CVSS v4.0 で 9.3 と評価されており、認証を必要としないリモート・コード実行が可能となる。Wordfence Threat Intelligence が WordPress 7.1 のセキュリティ評価中に、この脆弱性を発見した。非公開での報告を受けた Artifex は、2026年9月8日に修正版の Ghostscript 10.08.0 をリリースした。

この脆弱性は、Ghostscript のバージョン 10.08.0 未満に存在する JPEG 2000 出力アダプターの問題であり、画像を構成する各コンポーネントのサブサンプリング係数が一致しない場合に発生する。影響を受けるコードは、パック形式の画像出力に必要なメモリを確保する一方で、後続の処理ではビット深度が考慮されず、出力画像の各列に 1 バイトを書き込むことでヒープバッファ・オーバーフローが発生し、Ghostscript 内部のメモリ管理メタデータが破損する可能性がある。条件によっては、このメモリ破損が任意のコードの実行につながるとされ、検証用の WordPress 環境における認証なしのリモート・コード実行が、Wordfence の研究者により実証された。

攻撃の特徴は、WordPress 自体の脆弱性ではなく、文書処理ソフトウェア間の連携経路を悪用する点にある。WordPress では、メディア・ライブラリに追加された PDF ファイルのプレビュー画像を生成する際に Imagick が利用される場合がある。この Imagick が ImageMagick の機能を利用し、ImageMagick は Ghostscript を呼び出して PDF の最初のページを画像化する。この処理経路を悪用する攻撃者は、PHP や WordPress コアを直接攻撃することなく、細工した PDF ファイルから脆弱な Ghostscript プロセスに到達する可能性がある。

そのため、匿名訪問者/顧客/投稿者/低権限ユーザーなどから PDF ファイルを受け付ける Web サイトは注意が必要である。アップロードフォーム/文書管理ポータル/請求書処理システム/印刷サービス/メールゲートウェイ/プレビュー生成ツール/ファイル変換 API なども、信頼できない PDF を Ghostscript でレンダリングしている場合には、攻撃対象となる可能性がある。Wordfence の研究者によると、この脆弱性は、コンポーネントごとに解像度が異なる JPEG 2000 画像を、Ghostscript が処理する際に発生する。

Ghostscript の脆弱性と攻撃成立の条件

CVSS の深刻度スコアが高くても、単一のエクスプロイト・ファイルにより、すべてのサーバを侵害できるとは限らない。Wordfence の検証で明らかになったのは、概念実証 (PoC) コードが Ghostscript のビルド環境に依存している点である。ある環境向けに作成されたファイルが、他の 10 種類の Linux パッケージ構成に対して、攻撃に成功しなかった。

その一方で、可能性があるとされるのは、既知のソフトウェア構成の標的化や、同一のコンテナ・イメージを使用するホストの特定、ホスティング環境に合わせた攻撃用データの調整などである。

そのため、環境ごとに攻撃手法の調整が必要であっても、同一構成のインフラを繰り返し展開する組織にとって重大な脅威となる。実際、Wordfence が検証した時点の WordPress 公式 Docker イメージには、脆弱な Ghostscript パッケージと、動作する PDF プレビュー処理経路が含まれていた。

標準構成の WordPress では、匿名ユーザーによる PDF ファイルのアップロードはデフォルトで許可されていないが、プラグイン/カスタムフォーム/会員向け機能/アプリケーションの経路/認証済みユーザーの権限設定などにより、攻撃に悪用されるアップロード経路が生じる可能性がある。そのため、管理者にとって必要なことは、このメディア・ライブラリに限らず、PDF ファイルを受け付けて処理するすべてのワークフローを確認することである。

CVE-2026-39919 は Ghostscript 自体の脆弱性であるため、WordPress プラグインのアップデートだけでは修正できず、OS またはコンテナ・イメージのレイヤーで対処する必要がある。管理者にとって必要なことは、利用している Linux ディストリビューションが提供する修正済み Ghostscript パッケージをインストールし、ベンダーが示す再起動手順に従うことである。その上で、コンテナ環境では修正済みパッケージを含むベースイメージを用いてコンテナを再構築すべきである。

ただし、Ghostscript のバージョン番号だけでは、脆弱性の有無を正確に判断できない場合がある。Linux ディストリビューションによっては、上流プロジェクトのバージョン番号を変更せずにセキュリティ修正をバックポートするケースがあるためである。

すぐにパッチを適用できない場合には、信頼できない PDF ファイルのアップロードを一時的に停止するか、ImageMagick のセキュリティ・ポリシーで PDF のレンダリングを無効化することが推奨される。また、文書変換処理を他の処理から分離した最小権限のサービスで実行することで、侵害後の影響を軽減できる可能性がある。ただし、これらの対策は、メモリ破損を引き起こす脆弱性そのものを修正するものではない。

今回の事例が浮き彫りにするのは、Web アプリケーションにおけるソフトウェア・サプライチェーンの問題である。WordPress では、アップロードされた PDF ファイルの処理が Imagick/ImageMagick/Ghostscript へと引き継がれる場合があり、アプリケーション内部の依存コンポーネントが連鎖的に呼び出される。このため、文書をレンダリングするネイティブ・コンポーネントの脆弱性が、ファイル・アップロード機能を持つ Web アプリケーションのサーバ侵害につながり得る。