# Защита от открытого перенаправления

Открытое перенаправление (также известное как неразрешенные перенаправления и переходы) – уязвимость перенаправления по URL. Злоумышленник может использовать ее для перенаправления пользователей с доверенного сайта на потенциально вредоносный сторонний сайт и похитить их учетные данные с помощью атаки фишинга. Для защиты от этой уязвимости мы рекомендуем настроить в Plesk запрет на перенаправление по URL.

Эта уязвимость обусловлена параметрами `success_redirect_url` и `failure_redirect_url`, которые используются при настройке автоматического входа в Plesk. Параметр `success_redirect_url` содержит одно или несколько имен хоста, на которые пользователь перенаправляется после успешного входа, а `failure_redirect_url`— после неудачной попытки входа или после выхода.

Эта уязвимость может повлиять на все серверы Plesk, независимо от того, был ли настроен автоматический вход в Plesk. Для защиты от нее вам нужно добавить запись в файл panel.ini. Точное содержимое записи может варьироваться в зависимости от того, настроен ли автоматический вход в Plesk.

Чтобы защитить Plesk от открытого перенаправления, если автоматический вход в Plesk не настроен:

Добавьте следующие строки в файл panel.ini:

    [security]
    trustedRedirectHosts =

Строка `trustedRedirectHosts` пуста, в ней не указано ни одного имени хоста. Таким образом вы запрещаете Plesk выполнять перенаправления с помощью параметров `success_redirect_url` и `failure_redirect_url` на любые имена хоста.

Чтобы защитить Plesk от открытого перенаправления, если автоматический вход в Plesk настроен:

Добавьте в файл panel.ini запись по следующему шаблону:

    [security]
    trustedRedirectHosts = hostname

Здесь `hostname` — доверенное имя хоста, на которое вы разрешаете перенаправление по URL с помощью параметров `success_redirect_url` и `failure_redirect_url`.

Настройка `trustedRedirectHosts` может содержать одно или более имен хоста, разделенных запятыми и указанных в следующем формате:

- Имя домена, например, `example.com`

- IP-адрес, например, `192.0.2.1`

- Имя подстановочного субдомена, например, `*.example.com`

Примечание

Указывая имена хоста в параметре `trustedRedirectHosts`, используйте символ звездочки (*) только в соответствии с образцом выше (`*.example.com`). Иначе ваш сервер может остаться уязвимым. Например, имена хостов `example.*` или `192.0.2.*` небезопасны, так как они могут соответствовать сайтам `example.maliciouswebsite.com` и `192.0.2.maliciouswebsite.com` соответственно.

Вот пример правильной настройки параметра `trustedRedirectHosts` в файле `panel.ini`:

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

Здесь `example.com`, `192.0.2.1` и `*.example.com` — имена хостов, используемые в параметрах `success_redirect_url` и `failure_redirect_url`.

Примечание

Указывая в параметре `trustedRedirectHosts` несколько имен хостов, не добавляйте символ пробела ( ) перед или после запятой (,), разделяющей имена хостов. Иначе имена хостов не будут обработаны правильно, и перенаправление по URL будет невозможно.