Cloudwaysが提供するWordPressキャッシュプラグイン「Breeze Cache」に、認証なしで任意ファイルをアップロードできる深刻な脆弱性(CVE-2026-3844、CVSSスコア9.8)が発見された。セキュリティ企業Defiantの「Wordfence」が170件以上の実際の攻撃試行を観測しており、国内でも多数のWordPressサイトが影響を受ける可能性がある。
脆弱性の技術的な詳細
Breeze Cacheはアクティブインストール数40万以上を誇るWordPressのパフォーマンス最適化プラグインだ。今回の脆弱性はプラグイン内の fetch_gravatar_from_remote 関数に潜んでいる。この関数はGravatar(グローバルアバターサービス)の画像をローカルサーバーに保存する際に呼ばれるが、アップロードされるファイルの種類を一切検証していない。その結果、攻撃者はPHPスクリプトなど任意のファイルをサーバーに送り込み、リモートコード実行(RCE)からサイトの完全乗っ取りまでを引き起こせる。
セキュリティ研究者のHung Nguyen(bashu)氏によって発見・報告されたこの脆弱性は、Breeze Cache 2.4.4以前のすべてのバージョンが対象だ。
悪用条件を正確に把握する
重要な点として、この脆弱性は「Host Files Locally - Gravatars」オプションが有効になっているサイトでのみ悪用可能だ。このオプションはデフォルトで無効のため、すべての利用サイトが即座に危険にさらされているわけではない。
ただし、パフォーマンス改善を目的にこの機能を有効化しているサイトは、認証不要の状態で外部からRCEが実行できる状態に置かれている。WordPress.orgの統計では最新版リリース以降に約138,000ダウンロードが記録されているが、当該オプションを有効化しているサイト数の公開データはなく、実際の被害規模の把握は難しい。
Cloudwaysはバージョン2.4.5で修正済みのリリースを提供済みだ。
日本のWordPress管理者が今すぐ取るべき行動
国内でも企業サイト・メディア・ECサイトでWordPressは広く使われており、Breeze Cacheのようなパフォーマンス系プラグインは「一度入れたら触らない」状態になりやすい。ここで改めて整理しておきたい。
即時対応チェックリスト:
- Breeze Cacheのバージョンを確認し、2.4.5未満であれば即時アップデートする
- 「Host Files Locally - Gravatars」オプションの有効/無効状態を確認する
- 即時更新が困難な場合は、上記オプションを無効化するだけでも攻撃面を閉じられる
- 複数のWordPressサイトを管理している場合はManageWPなどの一括管理ツールで横断確認する
中長期的な改善点:
- セキュリティ修正リリースに限り、プラグインの自動更新を有効化することを検討する
- Wordfenceなどのセキュリティプラグインを導入し、不審なファイルアップロード試行をリアルタイム検知できる体制を整える
- ファイルアップロード機能を持つプラグインを定期的に棚卸しし、「使っていない機能が有効になっていないか」を確認する習慣をつける
筆者の見解
セキュリティの話は正直、得意分野とは言えない部分もある。細かい議論になりやすいジャンルだ。それでも今回のケースは技術的に非常に興味深い。
fetch_gravatar_from_remote という名前を見ると、一見「アバター画像をローカルに保存するだけ」の無害な処理に思える。しかしここにファイルタイプ検証が存在しないだけで、CVSSスコア9.8のRCE脆弱性が生まれる。これはWebアプリケーション開発における古典的かつ普遍的な教訓——「ファイルアップロードは必ずサーバー側で厳格に検証せよ」——の重みを改めて突きつけている。クライアント側での確認だけでは何の意味もない。
「デフォルトで無効だから大丈夫」という判断も危うい。パフォーマンス改善を目的に有効化した機能が、そのまま管理されずに放置されているサイトが今まさに攻撃対象になっている。「今動いているから問題ない」——この感覚こそが最も悪用されやすい状態を生み出す。SIDの重複問題でも見たとおり、「現在正常に動作している」ことと「セキュリティ上安全である」ことはまったく別の話だ。
40万インストールのプラグイン一つでこれだけの影響範囲が生まれるWordPressのエコシステムは、裏を返せばそれだけ攻撃者にとって魅力的な標的だということだ。プラグイン選定と継続的な更新管理を「システム運用の核心」として位置づけ直す良いきっかけにしてほしい。
出典: この記事は Hackers exploit file upload bug in Breeze Cache WordPress plugin の内容をもとに、筆者の見解を加えて独自に執筆したものです。