WordPress Paid Membership プラグインの脆弱性 CVE-2025-49870 が FIX:深刻な SQLi の恐れ

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 へと速やかにアップグレードし、自身のサイトを悪用から保護することだ。