Protezione da open redirect
Open redirect (o reindirizzamenti e inoltri non convalidati) è una vulnerabilità di reindirizzamento a un URL. Un hacker può sfruttarla per reindirizzare utenti da un sito web affidabile a uno potenzialmente dannoso di terze parti, quindi rubare le loro credenziali tramite un attacco di phishing. Per proteggersi da questa vulnerabilità, è opportuno configurare Plesk in modo da limitare il reindirizzamento a URL.
La vulnerabilità è consentita dai parametri success_redirect_url
e failure_redirect_url
, utilizzati durante la configurazione dell”accesso automatico a Plesk. Il parametro success_redirect_url
contiene uno o più nomi host ai quali l’utente viene reindirizzato dopo un accesso riuscito, mentre il parametro failure_redirect_url
contiene uno o più nomi host ai quali l’utente viene reindirizzato dopo un tentativo di accesso o disconnessione non riuscito.
La vulnerabilità può riguardare tutti i server Plesk, indipendentemente dal fatto che l’accesso automatico a Plesk sia stato impostato o meno. Per proteggerti, aggiungi una voce al file panel.ini. La voce esatta varia a seconda del fatto che l’accesso automatico a Plesk sia stato impostato o meno.
Per proteggere Plesk da open redirect, se non è stato impostato l’accesso automatico a Plesk:
Aggiungi le seguenti righe al file panel.ini :
[security]
trustedRedirectHosts =
La riga trustedRedirectHosts
è vuota e non è specificato alcun nome host. In questo modo impedisci a Plesk di eseguire il reindirizzamento a qualsiasi nome host utilizzi i parametri success_redirect_url
e failure_redirect_url
.
Per proteggere Plesk da open redirect, se è stato impostato l’accesso automatico a Plesk:
Aggiungi una voce al file panel.ini secondo questo schema:
[security]
trustedRedirectHosts = hostname
Laddove nome host
indichi un nome host affidabile al quale sia consentito il reindirizzamento URL tramite i parametri success_redirect_url
e failure_redirect_url
.
L’impostazione trustedRedirectHosts
accetta uno o più nomi host separati da virgole e specificati nel formato seguente:
- Un nome di dominio, ad esempio
esempio.com
- Un indirizzo IP, ad esempio
192.0.2.1
- Sottodomini wildcard, ad esempio
*.esempio.com
Nota: Specificando i nomi host in trustedRedirectHosts
, utilizza il carattere dell’asterisco (*) unicamente seguendo lo scherma mostrato sopra (*.esempio.com
). In caso contrario, il server potrebbe rimanere vulnerabile. Ad esempio, i nomi host esempio.*
o 192.0.2.*
non sono sicuri, in quanto possono corrispondere rispettivamente a esempio.sitowebdannoso.com
e 192.0.2.sitowebdannoso.com
.
Ecco un esempio utile dell’impostazione trustedRedirectHosts
nel file panel.ini
:
[security]
trustedRedirectHosts = example.com,192.0.2.1,*.example.com
Laddove esempio.com
, 192.0.2.1
ed *.esempio.com
siano nomi host utilizzati nei parametri success_redirect_url
e failure_redirect_url
.
Nota: quando si specificano vari nomi host in trustedRedirectHosts
, non aggiungere il carattere spazio ( ) prima o dopo la virgola (,) che separa tali nomi host. In caso contrario, il nome host non viene gestito correttamente e il reindirizzamento URL non riesce.