オープンリダイレクトから保護する

オープンリダイレクト(または未検証のリダイレクトと転送)とは、URL のリダイレクトに関する脆弱性です。攻撃者はこの脆弱性を悪用することで、信頼できるウェブサイトから潜在的に悪質な外部ウェブサイトにユーザを誘導し、フィッシング攻撃でユーザのクレデンシャルを盗むことができます。この脆弱性から防御するには、Plesk で URL リダイレクトを禁止するように構成することをお勧めします。

この脆弱性には、Plesk への自動ログインをセットアップするために使用される failure_redirect_url パラメータが利用されます。このパラメータには、ユーザがログインに失敗した後やログアウトした後でリダイレクトされるホスト名が 1 つまたは複数含まれます。

この脆弱性は、Plesk への自動ログインがセットアップされているか否かを問わず、すべての Plesk サーバに影響を与えます。防御するには、panel.ini ファイルにエントリを追加する必要があります。実際のエントリは、Plesk への自動ログインがセットアップされているかどうかに応じて異なります。

Plesk への自動ログインをセットアップしていない場合に Plesk をオープンリダイレクトから保護するには:

panel.ini ファイルに以下の行を追加します。

[security]
trustedRedirectHosts =

trustedRedirectHosts 行は空にして、ホストを指定しません。これにより、Plesk が failure_redirect_url パラメータを使用していずれかのホストにリダイレクトすることを禁止できます。

Plesk への自動ログインをセットアップしている場合に Plesk をオープンリダイレクトから保護するには:

以下のパターンに従って panel.ini ファイルにエントリを追加します。

[security]
trustedRedirectHosts = hostname

ここで hostname は、failure_redirect_url パラメータ経由での URL リダイレクトが許可される信頼できるホストです。

trustedRedirectHosts の設定には、以下のフォーマットでホスト名を 1 つ指定するか、複数のホスト名をコンマ区切りで指定できます。

  • ドメイン名(例:example.com
  • IP アドレス(例:10.58.58.100
  • ワイルドカードサブドメイン(例:*.example.com

注:trustedRedirectHostsfailure_redirect_url にホスト名を指定するときは、アスタリスク(*)記号を必ず前述のパターン(*.example.com)に従って使用してください。これに従わないと、サーバが脆弱なままになります。たとえば、ホスト名 example.*203.0.113.* は、それぞれ example.maliciouswebsite.com203.0.113.maliciouswebsite.com と一致してしまい、安全ではありません。

以下は、panel.ini ファイルの有効な trustedRedirectHosts 設定の例です。

[security]
trustedRedirectHosts = example.com,10.58.58.100,*.example.com

ここで example.com10.58.58.100*.example.comfailure_redirect_url パラメータで使用するホスト名です。

注:trustedRedirectHosts に複数のホスト名を指定するときは、ホスト名を区切るコンマ(,)の前後にスペース( )文字を追加しないでください。追加すると、ホスト名が正しく処理されず、URL リダイレクトが失敗します。