脆弱性・CVE速報深刻度: 高

WPO365 | LOGIN 45.2 より前の CVE-2026-122220: 署名済みの SAML 応答を再送すると、管理者を含む他人としてログインできる恐れ(CVSS v4.0 9.1・v3.1 7.4)

目次(5)

CVE-2026-122220

WordPress 用プラグイン WPO365 | LOGIN(wpo365-login)の 45.2 より前の版に、SAML 応答の再送(リプレイ)を防ぐ仕組みが働かない脆弱性 CVE-2026-122220 が公表されました。NVD への登録は 2026-11-04 で、状態は「Received」(NVD 自身の分析はまだ始まっていません)です。登録元は VulnCheck です。

何が起きるか

  • このプラグインは、Microsoft Entra ID などと SAML で連携してサインインさせる機能を持っています。SAML の応答(SAMLResponse)には一意のメッセージ ID が付き、「一度使った ID は二度と受け付けない」ことで再送を防ぐのが普通です。
  • 該当の版では、Saml2_Service::check_message_id() が処理済みの ID を wpo365_saml_message_ids という一時保存領域に書き込む前に処理を終えてしまう論理エラーがあり、ID が保存されません。そのため重複の検査が一度も働きません。
  • 正規に署名された SAMLResponse を入手した攻撃者は、アサーションの有効期間内であれば、ログイン受け口(ACS エンドポイント)へ繰り返し送って、被害者(管理者を含む)としてログインできる恐れがあります。重複検査が働かないので、再送として検知もされません。
  • 入手のしかた(通信の傍受など)は NVD の記載にありません。署名の偽造は不要とされていますが、有効な応答を手に入れる必要があります。

数値と severity

  • CVSS v4.0: 9.1(AV:N/AC:L/AT:P/PR:N/UI:N)、CVSS v3.1: 7.4(AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:N)。評価者はどちらも VulnCheck(Secondary・Primary)です。弱点の種類は CWE-294(キャプチャ・リプレイによる認証回避)です。
  • 二つの版で評価が分かれる理由は、有効な署名済み応答を先に入手する条件を、v4.0 が「攻撃の前提条件あり(AT:P)」、v3.1 が「攻撃の複雑さ高(AC:H)」として扱っているためです。認証そのものは不要です。
  • 入手の前提があり、v3.1 では 9 未満のため、公開の基準では severity を high とします。管理者としてログインされると影響は大きくなります。

対策

  • WPO365 | LOGIN を 45.2 以降へ更新する(NVD の影響範囲は 45.2 より前。修正を含む変更は NVD の参照先に WordPress プラグインの変更履歴(changeset 3783469)として挙がっています)。
  • SAML 連携を使っているサイトは、更新後に管理者などの不審なログインがないか、ログインの記録を見直す。
  • 更新までは、SAML 応答が通る経路(ブラウザと ACS の間)の暗号化を確認し、アサーションの有効期間が長すぎないか IdP 側の設定を見直す(一般的な対応で、ベンダーの指示ではありません)。

未確認の点

  • 実際の悪用、攻撃コードの公開、EPSS、CISA KEV への掲載。
  • 修正の中身(changeset と VulnCheck 勧告の本文は、この記事では開いていません)。
  • 影響する設定の範囲(SAML 連携を有効にしたサイトだけが対象か)。NVD の記載から読み取れる範囲では、SAML のログイン受け口を使う構成が前提です。
  • NVD の最終評価。

出典

  • NVD: CVE-2026-122220
  • VulnCheck: WPO365 | LOGIN before 45.2 SAML replay protection bypass
  • WordPress.org: wpo365-login の変更履歴
  • WordPress プラグイン変更履歴 changeset 3783469

この記事について

AI の利用
本記事は AI が NVD などの公開情報をもとに作成しました。数値は取得時点(2026-11-05)のもので、未確認の点は本文に明記しています。

出典

この記事を共有