WordPressのプラグイン・テーマの脆弱性情報を公開している Wordfence から、日本の利用者にも影響がありそうなものを中心にピックアップして紹介します。
- 期間: 2025/02/27-2025/03/05 に報告があったもの
- 対象: Wordfenceが公開しているデータフィードより以下の条件を満たすもの
- WordPress.orgにおける "Active installations" が 10万 以上である
- 日本語の翻訳に対応している
深刻度が高い脆弱性: 2件
プラグイン: Ultimate Member
対象製品 | Ultimate Member - User Profile, Registration, Login, Member Directory, Content Restriction & Membership Plugin |
対象バージョン | 2.10.0までの全てのバージョン |
修正バージョン | 2.10.1 |
CVSS | 高 (7.5) |
脆弱性概要 | 2.10.0 までの全てバージョンに、ユーザーから渡されたパラメータのエスケープが不十分であることと、既存のSQLクエリーの事前処理が不十分であるため、'search'パラメータを介した time-based SQLインジェクションの脆弱性が存在します。 認証していない攻撃者が、既存のSQLクエリーに追加のSQLクエリーを付加することで機密情報をデータベースから抜き出すことを可能となります。 |
対応方法 | 2.10.1以降にアップデートする |
CVE | https://www.cve.org/CVERecord?id=CVE-2025-1702 |
公開日 | 2025-03-04 21:53:45 |
詳細 | https://www.wordfence.com/threat-intel/vulnerabilities/id/34adbae5-d615-4f8d-a845-6741d897f06c |
この脆弱性は 認証していない攻撃者 が機密情報をデータベースから抜き出すことが可能となるものです。
ただし、あくまで既存のSQLクエリーに追加クエリーを付加することしかできないため、攻撃者は直接データを取得することはできません。よって、time-based SQLインジェクションにより抜き出すことになります。(ブラインドSQLインジェクションの1つです)
限定的な方法ではあるものの、認証していない攻撃者による機密情報の取得が可能である点から、早急なアップデートが必要です。
time-based SQLインジェクションとは、SQLクエリーの中に一定時間スリープする関数 (例えば sleep()
) と条件を入れることで、スリープの有無により値を推測して任意のデータを取得する攻撃です。そのため、SQLクエリーの結果が直接画面や変数等に反映されない環境においても、データを取得することができてしまいます。回数と時間はかかりますが、バイナリサーチ等を行うことで実用的にデータを取得できてしまう場合もあるようです。
参考: 徳丸浩の日記 https://blog.tokumaru.org/2015/04/time-based-sql-injection.html
プラグイン: Slider, Gallery, and Carousel by MetaSlider
対象製品 | Slider, Gallery, and Carousel by MetaSlider - Image Slider, Video Slider |
対象バージョン | 3.94.0までの全てのバージョン |
修正バージョン | 3.95.0 |
CVSS | 高 (7.2) |
脆弱性概要 | 3.94.0 までの全てのバージョンに、安全ではない入力のデシリアライゼーションのため、PHPオブジェクトインジェクションの脆弱性が存在します。 攻撃者が編集者以上の権限を持つユーザーで認証済の場合に、任意のPHPオブジェクトを挿入できます。 なお、このプラグイン単体にはPOPチェインはありません。つまり、ウェブサイトにPOPチェインを持つ他のプラグインやテーマが存在しない限り、この脆弱性の影響はありません。 もしも、他にインストールされたプラグインやテーマにPOPチェインが存在する場合、攻撃者はそのPOPチェインによっては任意のファイルを削除したり、機密性のデータを取得したり、PHPコードを実行したりすることができます。 |
対応方法 | 3.95.0以降にアップデートする |
CVE | https://www.cve.org/CVERecord?id=CVE-2025-26763 |
公開日 | 2025-02-14 00:00:00 (2025-02-26 22:36:43更新) |
詳細 | https://www.wordfence.com/threat-intel/vulnerabilities/id/91e0b45c-e73f-408a-94b8-fdbc5da64b20 |
この脆弱性は 攻撃者が編集者以上の権限を持つユーザーで認証済の場合 に任意のPHPオブジェクトを挿入できるものです。
なお、このプラグイン単体にはPOPチェインがないため、POPチェインを持つ他のプラグインやテーマをインストールしていない限りは影響がありません。
ログイン (認証) が必要な攻撃ですが、POPチェインの有無が不明な場合はアップデートが必要です。
POPチェインとは Property Oriented Programming (プロパティ指向プログラミング) チェインの略です。デシリアライズ (アンシリアライズ) したオブジェクトのプロパティを攻撃者が利用できることに由来しています。PHPオブジェクトで実行されるマジックメソッド ( __destruct()
など ) が利用されます。例えばPHPではPHPオブジェクトが解放される際にオブジェクトが持つ __destruct()
というマジックメソッドが実行されます。よって、 __destruct()
の中で実行される関数を任意のコードで置き換えた (アンシリアライズされた) PHPオブジェクトを用意することで、そのコードを実行できるようになります。
他の脆弱性: 7件
プラグイン: Forminator
対象製品 | Forminator |
対象バージョン | 1.39.2までの全てのバージョン |
脆弱性概要 | 寄稿者以上の権限を持つユーザーで認証済の場合に、任意のWebスクリプトをページに挿入できる。 |
詳細 | https://www.wordfence.com/threat-intel/vulnerabilities/id/14043276-ba0a-4862-a1a7-00b4c372c5bc |
プラグイン: Page Builder by SiteOrigin
対象製品 | Page Builder by SiteOrigin |
対象バージョン | 2.31.4までの全てのバージョン |
脆弱性概要 | 寄稿者以上の権限を持つユーザーで認証済の場合に、任意のWebスクリプトをページに挿入できる。 |
詳細 | https://www.wordfence.com/threat-intel/vulnerabilities/id/e14c12ef-0774-4459-9a2c-9a4b633a0efe |
プラグイン: GenerateBlocks
対象製品 | GenerateBlocks |
対象バージョン | 1.9.1までの全てのバージョン |
脆弱性概要 | 寄稿者以上の権限を持つユーザーで認証済の場合に、プライベート・下書き、予約投稿を含む投稿と固定ページを含む機密情報を取得できる。 |
詳細 | https://www.wordfence.com/threat-intel/vulnerabilities/id/4f6f2a8c-ecd9-482c-a32e-0c3d7a7e4ec4 |
プラグイン: Elementor Website Builder
対象製品 | Elementor Website Builder |
対象バージョン | 3.25.10までの全てのバージョン |
脆弱性概要 | 寄稿者以上の権限を持つユーザーで認証済の場合に、任意のWebスクリプトをページに挿入できる。 |
詳細 | https://www.wordfence.com/threat-intel/vulnerabilities/id/4be623dd-1298-4223-9eb5-d709e1e0e7d9 |
プラグイン: Filebird
対象製品 | Filebird |
対象バージョン | 6.4.2.1までの全てのバージョン |
脆弱性概要 | 投稿者以上の権限を持つユーザーで認証済の場合に、権限以上の操作を行うことができる。 |
詳細 | https://www.wordfence.com/threat-intel/vulnerabilities/id/b42178a9-2f73-48d2-a912-50efe0bec76e |
プラグイン: WP Shortcodes Plugin
対象製品 | WP Shortcodes Plugin |
対象バージョン | 7.3.3までの全てのバージョン |
脆弱性概要 | 寄稿者以上の権限を持つユーザーで認証済の場合に、任意のWebスクリプトをページに挿入できる。 |
詳細 | https://www.wordfence.com/threat-intel/vulnerabilities/id/f0869c35-9ea8-46a5-8bba-23d7ef47355a |
プラグイン: WP Activity Log
対象製品 | WP Activity Log |
対象バージョン | 5.3.2までの全てのバージョン |
脆弱性概要 | 管理者以上の権限を持つユーザーで認証済の場合に、任意のPHPオブジェクトを挿入できる。 |
詳細 | https://www.wordfence.com/threat-intel/vulnerabilities/id/cd731f89-8811-4068-ab34-3cee8cc7d089 |
総括
この期間内に報告された脆弱性9件のうち、1件は認証していない攻撃者 (誰でも攻撃できる) に影響を受ける脆弱性で、8件は少なくとも寄稿者以上の権限を持つユーザーで認証済の場合に影響を受ける脆弱性でした。このように、攻撃を成立させるためにはWordPressへのログインが必要なケースが多いことが分かります。
- 不要なユーザーは残さない
- ユーザーには安易なパスワードを設定しない
- ユーザーログインを制限する
テーマ・プラグインを最新に保つことは言うまでもありませんが、ユーザーログインを強固にすることも脆弱性による攻撃を防ぐ第一歩につながります。