Malicious HEIC Images Can Trigger Remote Code Execution on WordPress Servers
2026/10/05 CyberSecurityNews — 悪意のある HEIC 画像によって、WordPress サーバ上でリモート・コード実行に至る可能性がある。研究者が実証したのは、通常の Media Library へのアップロードから、サイトを実行する PHP-FPM プロセスでのコード実行へと至る攻撃チェーンである。このリスクは、HEIC/HEIF/AVIF ファイルの読み取りに広く使用される libheif コンポーネントに起因する。アップロードされた画像のリサイズ時に、WordPress が ImageMagick に画像を渡すと、細工されたファイルが脆弱なデコーダに到達し、画像を生成する代わりにメモリを破損させる可能性がある。

WordPress が生成した JPEG 派生画像から漏えいするメモリデータと、画像解析の脆弱性を組み合わせることで、再現性のある攻撃経路が成立することが、Fortbridge の研究者により特定された。
今回のテストが示すのは、特に最新のスマートフォンで使用される画像形式を受け入れるサイトにおいては、画像のアップロードについても、他のサーバ側入力と同等の精査が必要であることだ。また、アップロード制御とネイティ・ブライブラリの間に存在する隔たりも浮き彫りにされた。
.webp)
実証されたシナリオでは、upload_files 権限を持つ WordPress のログイン済みユーザーの権限が必要となるが、通常は Author 以上が該当する。Fortbridge は、未認証のゲストによるアップロードをテストしておらず、実環境で活動するマルウェア・キャンペーンも確認していない。
今回の調査結果は、実験環境における悪用の実証であり、世界中の WordPress サイトに影響する攻撃の発生が確認されたわけではない。Fortbridge が Cyber Security News (CSN) に共有したレポートによると、この攻撃チェーンは 2 種類の特定の Linux ソフトウェア・スタックで検証された。
悪意の HEIC 画像によるリモート・コード実行
主要な脆弱性 GHSA-x8r2-mggj-j6wr は、libheif の非圧縮画像デコーダに影響する。悪意のファイルを用いる攻撃者は、バイト幅が異なる 2 つのカラーチャネルを宣言できる。
その結果、デコーダは一方のチャネルに対して、必要量より小さい領域を確保する一方で、より大きな幅を使用してデータを書き込むため、攻撃者が制御するバイト列が本来のメモリ領域を越えて書き込まれる可能性がある。
このオーバーフローにより、近接するプログラムデータが変更される可能性がある。検証された攻撃チェーンでは C++ オブジェクトの参照が変更され、その後に、デコーダのクリーンアップ中に仮想関数の呼び出し先が変更される。
簡単に言えば、この画像は、画像処理サービスが通常のクリーンアップ処理ではなく、攻撃者が選択した命令経路に従うよう細工されている。最新のサーバでは、プロセス開始後にメモリ位置がランダム化されるため、安定した悪用は困難である。
研究者は最初に、メモリ情報を漏えいさせるための別の画像をアップロードし、その後に、WordPress から返されたリサイズ済み JPEG ファイルのピクセルを調査した。そのピクセルから、実行中のライブラリのビルドを特定し、それに合わせて最終的な攻撃用ファイルを調整するために十分な、メモリ情報を取得する。
.webp)
Fortbridge が攻撃チェーンを構築し、Alex Thomas/Wordfence がオーバーフローを発見した。この攻撃手法は、すべての WordPress 環境で利用できる汎用的なエクスプロイトではない。
検証された構成は、Ubuntu 26.04/WordPress 7.1.1/PHP-FPM 8.5.4/ImageMagick 7.1.2.18/libheif 1.21.2 のセットと、Debian 13/WordPress 7.0/PHP-FPM 8.4.24/ImageMagick 7.1.1.43/libheif 1.19.8 のセットである。
パッケージの変更により攻撃チェーンが成立しない可能性はあるが、今回の研究が裏付けるのは、以前の HEIF デコーダに関する研究で提起された、危険性のある画像処理パイプラインへの懸念である。
緩和策
Fortbridge は、管理された検証環境において、新たに起動した Ubuntu の PHP-FPM 親プロセス 8 個中 6 個と、Debian の親プロセス 24 個中 22 個で、コード実行に成功したと報告している。
これらのコードは PHP-FPM アカウントの権限で実行され、実験環境では www-data と判定された。それが示すのは、Web サービスの権限でコードを実行できることである。なお、ワーカー・プロセスがクラッシュしただけの場合には、悪用成功の証拠として扱われていない。
管理者に求められるのは、libheif を直ちにアップデートすることである。GHSA-x8r2-mggj-j6wr はバージョン 1.18.0〜1.23.2 までに影響し、1.23.3 で修正されている。
関連する情報漏えいの脆弱性 GHSA-2jg2-4ch7-h545 は、バージョン 1.23.2 で修正されている。管理者はディストリビューションのセキュリティ・アップデートをインストールし、画像処理スタックが実際に読み込んでいるライブラリを確認する必要がある。
HEIC/AVIF のアップロードを必要としないサイトでは、ネイティブ・デコーダで処理される前に、これらのファイルをブロックする必要がある。また、管理者が実施できる対策として挙げられるのは、カスタム libheif ビルドから非圧縮コーデックを削除すること/信頼できないメディアを分離された低権限サービスで処理すること/外向きのネットワークアクセスを制限すること/アプリケーションのシークレットを画像処理ワーカーの外部に保持することである。
これらの対策は、WordPress Imagick のアップロードに関する脆弱性や、最近の ImageMagick RCE の実証から得られた教訓とも一致する。いずれも、サーバ側での変換処理が危険な境界となっていた。
防御側に求められるのは、HEIC のアップロード後に PHP-FPM ワーカーが繰り返し終了する事象/HTTP 503 レスポンスについて調査することである。特に unci/iden/crop/overlay/grid の関係を含むファイルには、注意が必要である。
書き込み可能な Web パスの制限や、アップロード・ディレクトリでのスクリプト実行の無効化では、メモリの脆弱性そのものを解消できないが、悪用に成功した後の被害を軽減できる可能性がある。なお、このレポートでは、実環境で進行中の悪用キャンペーンは確認されていない。
Indicators of compromise (IoCs):-
| Type | Indicator | Description |
|---|---|---|
| File name | rce-proof.txt | Debian proof path used by the Fortbridge validation chain to confirm code execution. |
注:IP アドレスとドメインは、意図しない名前解決やハイパーリンク化を防ぐため、意図的に無害化(デファング)されている(例:[.])。元の形式への復元(リファング)は、MISP/VirusTotal/SIEM など、管理された脅威インテリジェンス環境内でのみ実施すること。
WordPress における Media Library を介した画像処理パイプラインの重大な問題が報告されています。画像の減色やリサイズ処理で利用される libheif および ImageMagick の不備に伴い、サービスプロセスの不正操作/内部データの漏えい/システム権限でのコマンド実行といった被害が生じるおそれがあります。なお、この件に関連する脆弱性は GHSA-x8r2-mggj-j6wr/GHSA-2jg2-4ch7-h545 です。対応策としてライブラリの最新版への更新/不要な拡張子の制御/監視ツールの導入が求められます。
You must be logged in to post a comment.