Sicurezza

Bloccare attacchi di brute force con CloudFlare per WordPress

Questa guida è specifica per utenti che utilizzano WordPress, ma vale anche per altre tipologie di siti web o per chi utilizza altri CMS, perché spiegherò come bloccare attacchi di brute force per singole pagine, che siano WordPress o no.

Se si è vittima di eccessivi tentativi di accesso da parte di bot o spammers, in questo articolo troverete una soluzione definitiva su come risolvere tramite l’utilizzo del CDN CloudFlare.

Come già spiegato nei precedenti articoli, i siti WordPress sono spesso sottoposti ad attacchi esterni e tentativi di accesso nella pagina di login principale, questo per i seguenti motivi:

  • Di default la pagina di accesso è wp-login.php;
  • Il nickname di default è admin;
  • Utenti poco attenti utilizzaranno password poco complesse, facili da indovinare;
  • Conoscono la struttura del CMS, e possono sfruttare la cosa a proprio vantaggio;

Sfruttando questi punti deboli, i software di hacking tenteranno di accedere in continuazione nei siti creati con WordPress. Questo genere di attacco si chiama brute force.

Il motivo è il furto di dati, installare backdoor e malware, reindirizzare gli utenti su altri, ecc.

Come risolvere il problema?

Beh! Se si dispone delle risorse necessarie a tale scopo, è possibile bloccare direttamente gli indirizzi IP tramite CloudFlare come abbiamo visto nel precedente articolo.

Oppure utilizzare appositi plugin per limitare i tentativi di accesso al sito.

Il problema, è che i bot non smetteranno comunque di provarci.

Come bloccarli definitivamente?

Definitivamente è un’impresa difficile, i bot operano con indirizzi IP “infiniti”, nel senso che dispongono di un gran numero di dispositivi ed risorse, per cui, riuscire a bloccarli tutti manualmente sarà abbastanza arduo, se non impossibile.

Possiamo tentare con altri strumenti di CloudFlare, che anche con la versione gratuita, dispone di funzioni interessanti ed utilissime, oltre ad avere tutta la protezione offerta da CloudFlare.

Lo scopo è creare una regola nel Firewall per bloccare o limitare l’accesso ad una determinata pagina del sito, in questo caso /wp-login.php.

Procedura

Per farlo basterà andare nel pannello amministratore di CloudFlare e selezionare Firewall in alto;

Nella nuova schermata, cliccare su Firewall Rules, poi su Create a Firewall rules;

Con la versione free di CloudFlare è possibile creare fino a 5 regole per il firewall.

Ora basterà creare la regola che il Firewall dovrà eseguire nel caso in cui ci saranno richieste di accesso alla pagina.

Per generare l’espressione esatta impostare i seguenti valori:

  • Field: URI path;
  • Operator: Contains;
  • Value: wp-login.php

Questo serve a specificare che, se viene richiesto un qualsiasi URI/URL contenente wp-login.php dovrà accadere una determinata azione a scelta, tra cui:

  • Block;
  • JS Challenge;
  • Challenge (CAPTCHA);
  • Allow;

N.B. Le richieste non andranno bloccate! altrimenti nessuno potrà più accedere nel sito.

Dovremo scegliere un’azione di tipo Challenge:

  • JS Challenge – equivale ad un controllo automatico da parte del sistema, per verificare se l’utente che sta tentando di visualizzare la pagina sia un umano o un bot. La durata della verifica è di circa 5 secondi, dopo di che si verrà reindirizzati nella pagina di login nel caso di utenti reali. Questo metodo è il più rapido.
  • Challenge (CAPTCHA) – Una pagina specifica con un classico controllo CAPTCHA con codici ed immagini. Questo metodo è più accurato.

Ora salvare la regola e chiudere. Da questo momento Cloudflare controllerà tutte le richieste per quella specifica pagina del sito e bloccherà attacchi di brute force. Consiglio di fare la stessa procedura anche con l’URL generico wp-admin.

Si può effettuare una prova di verifica accedendo al sito tramite una finestra anonima del browser. Se non si viene indirizzati alla pagina di pre-verifica, controllare bene i campi della regola ed assicurarsi di aver scritto in modo giusto wp-login.php.


Leggi anche: Rilevare gli indirizzi IP che tentano di accedere al sito WordPress

Articoli Recenti

Pubblicato da:
Simone Bernardo