Protéger contre la redirection ouverte (Open Redirect)
Open Redirect (également connu comme redirections et transferts non validés) est une vulnérabilité de redirection URL. Un attaquant peut exploiter cette faille afin de rediriger les utilisateurs depuis un site Web de confiance vers un site Web tiers potentiellement malveillant et ainsi voler ses identifiants grâce à une attaque par phishing. Pour vous protéger contre cette vulnérabilité, nous vous recommandons de configurer Plesk afin de restreindre la redirection d’URL.
Cette vulnérabilité est possible via le paramètre failure_redirect_url
qui est utilisé lorsque vous configurez la connexion automatique à Plesk. Ce paramètre contient un ou plusieurs noms d’hôtes vers lesquels l’utilisateur est redirigé après une tentative de connexion ou de déconnexion qui a échoué.
Cette vulnérabilité affecte tous les serveurs Plesk que la connexion automatique de Plesk soit ou non configurée. Pour vous protéger de cette vulnérabilité, vous devez ajouter une entrée au fichier panel.ini. L’entrée exacte est différente selon que vous avez ou non configuré la connexion automatique à Plesk.
Pour protéger Plesk contre une redirection ouverte lorsque la connexion automatique à Plesk n’est pas configurée :
Ajoutez les lignes suivantes au fichier panel.ini :
[security]
trustedRedirectHosts =
trustedRedirectHosts
est vide et aucun hôte n’est spécifié. De cette manière, vous interdisez à Plesk de vous rediriger vers des hôtes à l’aide du paramètre failure_redirect_url
.
Pour protéger Plesk contre une redirection ouverte lorsque la connexion automatique à Plesk est configurée :
Ajoutez une entrée au fichier panel.ini en respectant la structure suivante :
[security]
trustedRedirectHosts = hostname
hostname
est un hôte de confiance vers lequel la redirection de l’URL via le paramètre failure_redirect_url
est autorisée.
Le paramètre trustedRedirectHosts
accepte un ou plusieurs noms d’hôtes séparés par des virgules et spécifiés au format suivant :
- Un nom de domaine, par exemple :
exemple.com
- Une adresse IP, par exemple :
10.58.58.100
- Des sous-domaines génériques, par exemple
*.exemple.com
Note: lorsque vous indiquez les noms d’hôtes dans trustedRedirectHosts
et failure_redirect_url
, utilisez uniquement l’astérisque (*) suivi de la structure indiquée ci-dessus (*.exemple.com
). Sinon, votre serveur reste vulnérable. Par exemple, les noms d’hôtes exemple.*
ou 203.0.113.*
ne sont pas sécurisés, car ils peuvent correspondre respectivement à exemple.sitewebmalveillant.com
et 203.0.113.sitewebmalveillant.com
.
Voici un exemple valide du paramètre trustedRedirectHosts
dans le fichier panel.ini
:
[security]
trustedRedirectHosts = example.com,10.58.58.100,*.example.com
example.com
, 10.58.58.100
, *.example.com
sont des noms d’hôtes utilisés dans le paramètre failure_redirect_url
.
Note: lorsque vous indiquez plusieurs noms d’hôtes dans trustedRedirectHosts
, n’ajoutez pas d’espace ( ) avant ou après la virgule (,) pour séparer les noms d’hôtes. En effet, s’il y a un espace, le nom d’hôte n’est pas traité correctement et la redirection de l’URL échoue.