High-Risk SQLi Flaw Exposes WordPress Memberships Plugin Users
2025/09/01 InfoSecurity — WordPress の 10,000 以上のサイトで会員登録と定期支払いの管理に使用されている、有料会員管理プラグイン Paid Membership Subscriptions に、深刻なセキュリティ問題が発見された。このプラグインのバージョン 2.15.1 以下には、未認証の SQL インジェクション (SQLi) の脆弱性 CVE-2025-49870 が存在する。したがって、攻撃者はログイン認証を必要とすることなく、悪意の SQL クエリをデータベースに注入できる。

この問題は Patchstack Alliance の研究者 ChuongVN により報告され、バージョン 2.15.2 で修正されている。
脆弱性の詳細
Paid Membership Subscriptions プラグインが、PayPal インスタント支払い通知 (IPN) を処理する方法に、この脆弱性は起因する。具体的に言うと、このプラグインは、取引処理時にはユーザー提供データからダイレクトに支払い ID を抽出し、適切な検証を行うことなくデータベース・クエリへと挿入するため、この入力操作を悪用する攻撃者は、機密情報への不正アクセスや保存レコードの改竄が可能となる。
すでに開発者は、バージョン 2.15.2 で以下を変更し、この問題を解決している:
- 使用前に支払い ID が数値であることを確認する
- 脆弱なクエリ連結をプリペアド・ステートメントに置き換える
- ユーザー入力処理に関する安全対策を強化する
このプリペアド・ステートメントは、攻撃者によるデータベース・クエリの変更を防止するものであり、その結果としてインジェクション・リスクが大幅に軽減される。
SQL インジェクションの脆弱性
SQL インジェクションは、データベース全体を侵害する可能性を持つものであり、長年にわたり、最も危険な Web セキュリティ問題の一つとして認識されている。
Patchstack のアドバイザリでは、「SQL クエリ処理においては、クエリを実行する前に必ず安全なエスケープ処理を行い、ユーザー入力をフォーマットすべきである。ベスト・プラクティスとして推奨されるのは、常にプリペアド・ステートメントを用いて、使用される各変数を、意図した用途にキャストすることだ」と指摘されている。
このプラグインを利用しているユーザーに対して強く推奨されるのは、バージョン 2.15.2 へと速やかにアップグレードし、自身のサイトを悪用から保護することだ。
WordPress の Paid Membership Subscriptions プラグインに存在する、SQL インジェクションの脆弱性 CVE-2025-49870 が FIX しました。原因は、PayPal の支払い通知 (IPN) を処理する際に、ユーザーが提供するデータが値に対する適切な検証なしに、データベース・クエリへと注入されていた点にあります。したがって、この脆弱性を悪用する攻撃者は、ログイン不要で不正な SQL コードを流し込み、機密情報の閲覧やレコードの改竄を行える状態にありました。ご利用のチームは、ご注意ください。よろしければ、WordPress で検索も、ご参照ください。
You must be logged in to post a comment.