Protección frente a redireccionamientos abiertos

El redireccionamiento abierto (también denominado redireccionamientos y reenvíos no validados) suponen una vulnerabilidad de redireccionamiento de URLs. Un atacante puede redireccionar a los usuarios de un sitio web de confianza a uno potencialmente malicioso perteneciente a terceros y posteriormente robar sus credenciales mediante ataques de phishing. Para protegerse frente a esta vulnerabilidad, le recomendamos configurar Plesk para restringir el redireccionamiento de URLs.

La vulnerabilidad es posible mediante el parámetro failure_redirect_url, usado cuando configura el inicio de sesión automático a Plesk. Este parámetro contiene uno o más nombres de host a los que se redirecciona un usuario una vez este ha experimentado algún error para acceder a Plesk o bien ha cerrado sesión en este.

La vulnerabilidad afecta a todos los servidores Plesk, tanto si se ha configurado el inicio de sesión automático como si no. Para protegerse de ella deberá añadir una entrada al archivo panel.ini. La entrada variará en función de si se ha configurado el inicio de sesión automático o no.

Para impedir posibles redireccionamientos abiertos en Plesk si no ha configurado el inicio de sesión automático, haga lo siguiente:

Añada las siguientes líneas al archivo panel.ini:

[security]
trustedRedirectHosts =

La línea trustedRedirectHosts está vacía y no se especifica ningún host. De esta forma se prohíbe a Plesk redireccionar a cualquier host mediante el parámetro failure_redirect_url.

Para impedir posibles redireccionamientos abiertos en Plesk si ha configurado el inicio de sesión automático, haga lo siguiente:

Añada una entrada al archivo panel.ini conforme al siguiente patrón:

[security]
trustedRedirectHosts = hostname

Aquí, hostname es un host fiable al que se permitirá el redireccionamiento de URL mediante el parámetro failure_redirect_url.

El parámetro trustedRedirectHosts acepta uno o más nombres de host separados por comas y especificados en el formato que se muestra a continuación:

  • Un nombre de dominio, como por ejemplo example.com
  • Una dirección IP, como por ejemplo 10.58.58.100
  • Subdominios wildcard, como por ejemplo *.example.com

Nota: cuando especifique nombres de host en trustedRedirectHosts y failure_redirect_url, use únicamente asteriscos tal y como puede ver en el ejemplo anterior (*.example.com). De no hacerlo, su servidor puede verse afectado por esta vulnerabilidad. Por ejemplo, los nombres de host example.* o 203.0.113.* no son seguros, puesto que pueden coincidir con example.maliciouswebsite.com y 203.0.113.maliciouswebsite.com, respectivamente.

A continuación puede ver un ejemplo válido del parámetro trustedRedirectHosts en el archivo panel.ini:

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

Aquí, example.com, 10.58.58.100 y *.example.com son nombres de host usados en el parámetro failure_redirect_url.

Nota: cuando especifique más de un nombre de host en trustedRedirectHosts, no añada espacios en blanco antes o después de la coma que separa los nombres de host. De hacerlo, el nombre de host no se gestionará correctamente y no se podrá efectuar el redireccionamiento de URL.