Prime Mover の CVE-2026-115806:WordPress のコメント経由で仕込まれた PHP オブジェクトインジェクションがエクスポート時に発動
バックアップ・移行プラグイン Prime Mover(1万件以上のインストール)に CVSS 9.8 の PHP オブジェクトインジェクションが見つかりました。匿名コメントでペイロードが保存され、管理者の次回エクスポートまたはリストアで発動します。バージョン 2.2.2 で修正済みです。
Codexonics 社の WordPress プラグイン Prime Mover – Backup and Migration(アクティブインストール数 1 万件以上)に存在する深刻な PHP オブジェクトインジェクションが、2026 年 10 月 24 日に CVE-2026-115806 として公開されました。CVE を割り当てた Wordfence による評価は CVSS 3.1 で 9.8 です。
攻撃の仕組み
この脆弱性は 2 段階で成立する点が特徴的です。
- 書き込み。 認証されていない訪問者が
wp-comments-post.phpから通常のコメントを投稿します。コメント本文には base64 エンコードされたシリアライズ済み PHP オブジェクトが含まれています。WordPress はこれを他のコメントと同様にwp_commentsに保存し、アカウントは不要です。 - 発動。 その後、管理者が Prime Mover で通常の エクスポートまたはリストア を実行すると、プラグインの検索・置換処理(
recursiveUnserializeReplace())が保存された値を base64 デコードし、allowed_classesの制限なしでunserialize()に渡します。
悪用に必要なガジェットチェーンはプラグイン自身に同梱されています。バンドルされた Freemius SDK に、プロパティ指向プログラミング(POP)チェーン(FS_Clone_Manager::__set → FS_Option_Manager::set_option → store() → update_option())が存在し、注入されたオブジェクトが WordPress のオプションを書き換えられます。別のプラグインやテーマは必要ありません。
移行プラグインはドメイン置換のためにデータベース全体のシリアライズデータを展開・再パックする必要があり、第三者が書いたテキストまでデシリアライズされてしまうため、この種の脆弱性が繰り返し見つかっています。数日前には同様のコメント経由の問題が Duplicator でも報告されました。
影響範囲
- Prime Mover の 2.2.1 以前のすべてのバージョン。
- 10 月 24 日時点の wordpress.org のバージョン統計によると、インストールの約 49% が依然として 2.1 系以前で稼働していました。
- 10 月 24 日時点で実際の悪用や公開エクスプロイトは報告されておらず、CISA の KEV カタログにも掲載されていません。
対応策
- Prime Mover 2.2.2 以降に更新してください(10 月 19 日リリース)。
unserialize()をstdClassのみに制限し、Freemius SDK も更新されています。 - プラグインを無効化すれば脆弱なコード経路は止まりますが、すでにコメントに保存されたペイロードは削除されません。承認待ちのコメントもデータベースには書き込まれるため、コメントのモデレーションでは保存を防げません。
- すぐに更新できない場合は、Prime Mover を無効化し、公開コメントの停止を検討し、エクスポートやリストアを実行する前に
wp_comments内の不審な base64 エンコード済みシリアライズ文字列を確認してください。 - 旧バージョンでエクスポートやリストアを実行していた場合は、更新後に
wp_optionsの最近変更された行も確認しましょう。
PHP コード全般への教訓
ユーザー入力を含む可能性のあるデータに unserialize() を使うのは、PHP で昔から知られた落とし穴です。独自プラグインやレガシー PHP アプリを保守している場合は、データ交換には json_decode() を使うか、最低でも unserialize() に ['allowed_classes' => false](または明示的な許可リスト)を指定してください。
古い WordPress プラグインや、信頼できないデータをいまだにデシリアライズしている独自 PHP コードを運用している場合、RescuePHP が監査と安全なパッチ適用をお手伝いします。すぐにアップグレードできないレガシー PHP 環境にも対応可能です。