Critical WP Maps Pro Vulnerability Allow Attackers to Create Administrator Account
2026/06/02 CyberSecurityNews — 人気の WordPress プラグインである、WP Maps Pro の深刻なセキュリティ脆弱性を悪用する攻撃者が、不正な管理者アカウントを作成し、影響を受ける Web サイトを完全に制御する可能性がある。この脆弱性 CVE-2026-8732 (CVSS 9.8) は、バージョン 6.1.0 以下のプラグインに影響を及ぼすものであり、WordPress エコシステム全体に深刻な懸念を引き起こしている。

WP Maps Pro の脆弱性
この脆弱性は、セキュリティ研究者 David Brown により発見され、Wordfence Bug Bounty Program を通じて報告され、$1,950 の報奨金が支払われた。
WP Maps Pro は CodeCanyon において 15,000 件以上の販売実績を持ち、カスタマイズ可能な高度な位置情報機能を備えた Google Maps を埋め込むために、広く利用されている。
この問題の核心は、プラグインの AJAX 機能内に存在する、未認証の権限昇格の欠陥に起因する。具体的には、wpgmp_temp_access_ajax アクションを通じて公開されるエンドポイントが誤って登録されており、未認証アクセスを許可している。
この機能には、nonce チェックが含まれているが、この nonce はフロントエンドの JavaScript 内で公開されており、防御として無効である。
この弱点を悪用する攻撃者は、特定のパラメータを含む細工されたリクエストを送信することで、プラグインの一時アクセス機能をトリガーできる。
この機能の目的は、サポート担当者に対する一時的なログイン・アクセスの付与にあるが、適切な認可チェックが欠如している。その結果として、このプラグインは、WordPress の組み込み関数を介して、管理者権限を持つ新規ユーザーを自動的に作成する。
アカウント作成後のプラグインは、パスワードを必要とせずに認証可能な “magic login URL” を生成する。この URL にアクセスする攻撃者は、セッション cookie を通じて管理者としてログインし、Web サイト全体に対する完全な制御権を取得する。
その結果として、悪意のプラグインのインストール/バックドアの挿入/サイトコンテンツの改竄/機密性の高いデータの窃取などが引き起こされる。
すでにベンダーは、バージョン 6.1.1 をリリースし、この問題に対処している。具体的には、current_user_can(‘manage_options’) による適切な権限チェックを実装することで、認証済み管理者のみが該当機能へアクセス可能となるよう改善された。
その一方で、Wordfence も迅速に対応し、2026年5月18日の時点で、有料ユーザー (premium/care/response) に対してファイアウォール・ルールを配布した。無料版ユーザーには、2026年6月17日に同様の保護が提供される予定である。
ベンダーに対する直接の連絡手段が存在しなかったことで、脆弱性の開示は Envato のセキュリティ・チームを通じて調整された。
セキュリティ専門家が、すべての WP Maps Pro ユーザーに対して強く推奨するのは、バージョン 6.1.1 への速やかなアップデートである。攻撃者は認証なしで完全な侵害を実行できるため、未修正バージョンを使用している Web サイトは、きわめて高いリスクにさらされる。
このインシデントは、不適切に保護された AJAX エンドポイントがもたらす継続的なリスクを示している。プラグイン開発における厳格なアクセス制御の重要性を、改めて強調する事例である。
訳者後書:WP Maps Pro プラグインに関する問題は、 AJAX 機能内における未認証の権限昇格の欠陥が原因となっています。一時的なログイン・アクセスを付与するエンドポイントの登録方法に誤りがあり、適切な認可チェックが行われない状態で外部に公開されていました。処理の過程で nonce チェックは行われていましたが、その値がフロントエンドの JavaScript 内で公開されていたことで、 防御として十分に機能していませんでした。これにより、未認証の攻撃者から細工されたリクエストを受信した際に、管理者権限を持つ新規ユーザーの自動作成とログインを許す状態を招いていました。ご利用のチームは、ご注意ください。よろしければ、WordPress での検索結果も、ご参照ください。

You must be logged in to post a comment.