WordPress 2.3.0~4.8.3のパスワードの不正リセット

medium Nessus プラグイン ID 100028

概要

リモートのWebサーバーで実行されているPHPアプリケーションは、セキュリティバイパス脆弱性の影響を受けます。

説明

自己報告されたバージョン番号によると、リモートWebサーバーで実行されているWordPressアプリケーションは4.7.xです。したがって、特にHTTPホストヘッダーからの入力がSERVER_NAMEに割り当てられるときに、SERVER_NAME変数が不適切に使用されるため、wp-includes/pluggable.phpファイル内にあるwp_mail()関数の欠陥の影響を受けます。認証されていないリモートの攻撃者がこの問題を悪用し、「wp-login.php?action=lostpassword」というリクエストを作ることで任意のパスワードをリセットする可能性があります。このリクエストは戻ってくるか、再送信されるため、SMTPサーバーのメールボックスのリセットキーが攻撃者の意のままに転送されます。次の条件が1つ以上要求されるため、この脆弱性は悪用できない場合があります。 - 長期間(5日間など)、被害者が電子メールメッセージを受信することを攻撃者が妨げることができる。- 被害者の電子メールシステムで、元のメッセージを含む自動応答が送信される。- 被害者が元のメッセージを含む返信を手動で作成する。Nessusはこの問題についてテストしていませんが、代わりにアプリケーションの自己報告のバージョン番号のみに依存しています。

ソリューション

現段階では、ベンダーからは修正版リリースが公式に発表されていません。静的な値からSERVER_NAMEを構築する手順を踏むことでこの脆弱性を緩和できます。たとえば、Apacheシステムでは、Apache構成内でUseCanonicalName設定を有効にします。有効にすると、PHPは、攻撃者に操作される可能性があるHTTPホストのリクエストヘッダーに依存せず、構成したServerNameディレクティブ値を使用するように強制されます。

参考資料

http://www.nessus.org/u?5a4aa4f1

http://www.nessus.org/u?4c466b63

https://core.trac.wordpress.org/ticket/25239

http://www.nessus.org/u?3f6ca2dd

プラグインの詳細

深刻度: Medium

ID: 100028

ファイル名: wordpress_unauth_pw_reset.nasl

バージョン: 1.9

タイプ: remote

ファミリー: CGI abuses

公開日: 2017/5/9

更新日: 2019/11/13

設定: パラノイドモードの有効化

サポートされているセンサー: Nessus

リスク情報

VPR

リスクファクター: Medium

スコア: 4.4

CVSS v2

リスクファクター: Medium

基本値: 4.3

現状値: 3.9

ベクトル: CVSS2#AV:N/AC:M/Au:N/C:N/I:P/A:N

CVSS スコアのソース: CVE-2017-8295

CVSS v3

リスクファクター: Medium

基本値: 5.9

現状値: 5.6

ベクトル: CVSS:3.0/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:H/A:N

現状ベクトル: CVSS:3.0/E:P/RL:X/RC:C

脆弱性情報

CPE: cpe:/a:wordpress:wordpress

必要な KB アイテム: installed_sw/WordPress, www/PHP, Settings/ParanoidReport

エクスプロイトが利用可能: true

エクスプロイトの容易さ: No exploit is required

脆弱性公開日: 2017/5/3

参照情報

CVE: CVE-2017-8295

BID: 98295