10 regole per mettere in sicurezza un sito WordPress

Francesca Caponetto

ott 21, 201611 min di lettura
10 regole per mettere in sicurezza un sito WordPress

Sicurezza dati: Come impedire agli hacker di violare il tuo sito WordPress

WordPress non è sicuro.

Quante volte ci siamo sentiti dire che il CMS open source “più amato dagli addetti ai lavori” è in realtà una porta d’ingresso ai nostri contenuti web per hacker o concorrenti sleali che decidono di “bucarci” il sito?

Mi sono trovata negli ultimi mesi ad affrontare l’argomento con clienti che avevano sentito tutto e il contrario di tutto. Per questo con alcuni collaboratori della mia agenzia ho voluto approfondire il tema "sicurezza in WordPress" con alcuni test e relative spiegazioni ai clienti che ci ponevano domande. Da queste riflessioni nasce questa piccola guida.

WordPress: il più amato fra i CMS Open Source

Ma siamo proprio sicuri che sia così? Esistono tante opinioni contrastanti su WP. Per alcuni viene utilizzato da coloro che non s’intendono di programmazione, per altri non è sicuro. Poi c‘è chi dice che un sito in WordPress lo può gestire anche il “cuggino”, e allora io, professionista, cosa ci guadagno?

Le cose vanno sempre guardate da due punti di vista diversi.

WordPress: Pro e Contro

È vero: WordPress è un CMS di facile utilizzo ed esistono tante guide online per chi abbia voglia e interesse a leggere e ad imparare il suo utilizzo. In pratica, quindi, anche il mio cuginetto di 13 anni potrebbe divertirsi e riuscire a costruire un sito con Wordpress.

È anchevero, però, che un conto è installare WordPress e caricarvi sopra un template qualsiasi già pronto, come potrebbe fare il mio cuginetto, un’altra cosa è iniziare un progetto web completo, su cui un’azienda abbia modo di guadagnare online.

Per farlo bisogna essere professionisti!

A questo proposito, che si usi WordPress oppure un CMS proprietario sviluppato da un’agenzia web, poco importa. O meglio: importa in base alle esigenze che ha la tua azienda. In entrambi i casi, comunque, bisogna tener conto dei pro e dei contro.

I Pro: perché creare un sito con WordPress

  • Uno dei principali motivi per cui si sceglie WordPress è la possibilità di disporre di un pannello di gestione del proprio sito facile e intuitivo da utilizzare, personalizzabile con template a pagamento e risorse di sviluppo sempre aggiornate. Ciò non vuol dire che non avrò necessità di un programmatore per valutare bene il template giusto per le mie esigenze, oppure di un grafico per costruire un’immagine coordinata coerente con ciò che il mio brand rappresenta.
  • WordPress è impostato molto bene anche per condurre sul proprio sito un lavoro di ottimizzazione per i motori di ricerca. Grazie ai tanti plugin gratuiti a disposizione, rende facile l’implementazione di title, meta description e schema.org.
  • Questo CMS riporta una struttura suddivisa in categorie e tag che, se intelligentemente usata, può garantire una corretta strutturazione dell’architettura del sito, fattore molto importante per l’ottimizzazione.
  • Altro vantaggio lato SEO è la possibilità di cambiare i permalink delle singole pagine, articoli, categorie e tag, in modo da poterli personalizzare secondo i concetti chiave scelti e trattati al loro interno.
  • WordPress ha metodi molto semplici anche di implementazione delle pagine AMP, della sitemap.xml e di correzione dei file .htaccess e robot.txt, nonché una semplice gestione degli errori 404 e dei redirect 301.

Quello che è sempre da tenere in considerazione, tuttavia, è che saper strutturare i cambiamenti richiesti per un’ottimizzazione corretta al livello di codice, potrebbe farci risparmiare l’installazione di numerosi plugin, che vanno solo ad appesantire la struttura della piattaforma e a rallentare il caricamento del sito.

I contro: Perché non dovrei costruire il mio sito con WordPress?

Un motivo reale non esiste, nel senso che dipende dalle esigenze che si hanno. Ma WordPress, come dicevamo prima, ha bisogno di attenzioni lato sicurezza: anche per questo è necessario avere un programmatore a disposizione che sappia “dove mettere le mani” per proteggere un sito dagli attacchi di hacker e malintenzionati.

WordPress risponde a tutte le necessità che un’azienda possa avere: ha un plugin quasi per ogni funzione e, se non esiste, verrà creato in poco tempo. Questa ricchezza di risorse è possibile proprio perché WordPress è un CMS open source.

Molti plugin, tra l’altro, hanno un buon livello di performance anche al livello free. Se comunque le nostre esigenze fossero più complesse, sarà sempre possibile acquistarne la versione premium.
I plugin, d’altro canto, appesantiscono la piattaforma e bisogna perciò stare attenti a disattivare ed eliminare quelli che non servono o sono inutilizzati da molto, in modo da non rallentare il caricamento del sito web.

WordPress o CMS proprietario?

Si tratta di esigenze diverse! Chi sceglie un CMS proprietario spesso ha infatti bisogno di funzionalità su misura. Non sto parlando di sistemi pagamento online, prenotazioni camere e simili, di facile realizzazione anche su un CMS open source. Parlo piuttosto di personalizzazioni della struttura interna del sito e del suo pannello di controllo, di particolari gestionali.

Con un CMS proprietario si ha totalmente il controllo sulle personalizzazioni volute, nel senso che si può far costruire all’agenzia web un sito interamente su misura per noi lato backend.

Il problema non è il CMS, ma l’agenzia web che lo realizza.

Nella nostra scelta dovremo considerare che, spesso, molte agenzie web che propongono un CMS proprietario, finiscono per realizzare piattaforme create da loro, ma non personalizzate sul cliente finale. In pratica, vanno a realizzare una piattaforma molto costosa dal punto di vista della sua progettazione e creazione, realizzando di fatto siti in serie, a cui un sito web realizzato con WordPress non ha niente da invidiare.

Infine, scegliendo di far realizzare un sito web in CMS proprietario si lega indissolubilmente la vita online della nostra azienda a quella dell’agenzia che ha creato il nostro sito.

Cosa succederebbe nel caso in cui decidessimo di cambiare partner per la nostra comunicazione online, o se l’agenzia in questione chiudesse?

Il CMS proprietario è per definizione una piattaforma scritta e programmata con codici che sono appunto proprietà dell’agenzia che lo ha creato e, come tali, non cedibili a terzi.
Per questo motivo, una volta che volessimo aggiornare il layout, fare interventi sul database del nostro sito o cambiare provider dovremmo ricominciare da capo senza gli accessi.

Fatte queste premesse su WordPress, veniamo quindi alla questione più spinosa: un sito creato su questa piattaforma è facilmente espugnabile dagli hacker? E se sì, esiste la possibilità di premunirsi da questi attacchi ai nostri dati?

WordPress e l'importanza della Sicurezza

Se il tuo sito web non è sicuro è un guaio sotto tutti i punti di vista: i dati sensibili degli utenti rischiano di essere hackerati. 

Inoltre, anche i tuoi affari rischiano molto! Avere un sito “bucato”, che presenta link o contenuti di dubbia natura, non coerenti con lo scopo iniziale del progetto, fa sì che anche Google ne rimetta in discussione la qualità e il conseguente posizionamento organico nella SERP (vedi questo approfondimento sulla sicurezza informatica).

In più, gli stessi utenti che visitano il tuo sito saranno portati ad abbandonarlo, non trovando informazioni o risposte coerenti a ciò che stavano cercando. Si può addirittura arrivare a perdere in poco tempo un lavoro di anni, costato soldi, sudore e fatica.

Allora devo stare alla larga da WordPress e costruire il mio sito web con altre piattaforme o un CMS proprietario?

La risposta è: non per forza!
Considera che anche molte agenzie non mettono in pratica sistemi di sicurezza per i propri CMS proprietari e che per un hacker esperto non è difficile entrare nemmeno in siti costruiti con altre piattaforme open source.
Se a questo aggiungi che certo WikiLeaks non si interesserà proprio al tuo sito, puoi tranquillamente usare WordPress, ma ad una condizione: approntare alcune piccole modifiche che ne garantiscano la sicurezza o assicurarti che il tuo programmatore lo abbia fatto.

Come mettere in sicurezza un sito WordPress: 10 Regole fondamentali

1# Comincia dal tuo computer

Mantenere il proprio computer libero da virus e malware è il primo passo per scongiurare un attacco da parte di hacker. Infatti sarà sufficiente che venga installato un keylogger sul tuo pc perché tutto ciò che digiti sulla tastiera sia intercettato e trasmesso a malintenzionati, compresi i dati di accesso al tuo sito WordPress. Usa perciò un filtro antivirus affidabile ed esegui frequenti scansioni.

2# Google preferisce il protocollo https

Non è cosa nuova, ma è sempre bene tenerne conto: il protocollo https è preferito da Google rispetto al classico http. Il primo, infatti, sarebbe più sicuro rispetto al primo. Questo non significa che non sia violabile, ma sicuramente garantisce maggiore sicurezza al tuo sito WordPress. Perché? In sostanza perché i dati richiesti al server dal browser vengono criptati prima di essere trasferiti e vengono decriptati dal client che li riceve e resi così consultabili all'utente. In questa maniera i dati verranno trasferiti con maggior sicurezza rispetto a quelli passati al client tramite un protocollo http.

3# Aggiorna WordPress e i suoi plugin

Sembra scontato, ma non lo è. Molti di noi non aggiornano quasi mai la piattaforma e i vari plugin contenuti al suo interno. Ma si tratta di un grave errore, perché ecco che così il sistema diventa vulnerabile.
Attenzione, però! È importante eseguire gli aggiornamenti non appena escono le nuove versioni, in maniera costante. Perché? Quando WordPress rilascia un nuovo aggiornamento porta con sé una lista delle falle e dei bug di sicurezza della versione precedente. Questi costituiscono una porta d’accesso semplice e garantita agli hacker, che possono tranquillamente entrare nel tuo sito web, nel caso non sia stato aggiornato in tempo. Quindi, niente paura per i nuovi aggiornamenti. È solo buona norma fare un backup di tutto ciò che hai salvato sul sito prima di eseguire l’update.

4# Compra uno spazio su un Hosting sicuro

Secondo una ricerca di WP White Securitynegli ultimi anni il 41% dei siti hackerati lo è stato a causa di una vulnerabilità a livello di hosting. Capiamo quindi molto bene l’importanza di controllare lo spazio sul quale il nostro sito è ospitato. Il problema più spinoso per la sicurezza del server è l’esistenza di server condivisi e server dedicati.

Messa in sicurezza di WordPress: le porte di accesso degli Hacker

In parole povere un server è un computer che contiene fisicamente i file del tuo sito web.
Se questo computer ospita anche altri file di altri siti, a livello di sicurezza risulta essere più vulnerabile, perché sarà sufficiente che uno di questi siti sia stato hackerato e anche tutti gli altri saranno a rischio. 

Di contro, un server dedicato è un server che ospita unicamente i file del tuo sito e, oltre ad avere un livello di performance più alta, ha una garanzia di maggiore sicurezza.Questo succede perché se firewall e tutti i software necessari per proteggere il tuo spazio da attacchi sono stati installati in maniera professionale e corretta, sarà molto difficile che il tuo server sia vulnerabile rispetto ad un server condiviso. Un server dedicato è una soluzione ottimale per e-commerce o siti web che iniziano a raggiungere un numero importante di visite, circa 1000/2000 al giorno, ma non è strano che venga usato anche per siti che vantano un numero inferiore di visite. 

In alternativa, esiste una via di mezzo tra server condiviso e server dedicato, ossia il VPS (Virtual Provate Server). I VPS sono spazi dove sono ospitati più siti, che però usano un sistema operativo separato.

5# Usa password complesse

Ebbene, sì. Usa password sicure e non replicarle per nessun altro login, né lavorativo, né personale. Molti di noi optano per password semplici da ricordare, invece che per una combinazione di numeri, segni e lettere in ordine casuale. Facendo così, gli hacker sono però avvantaggiati. 
Se vuoi mettere in sicurezza il tuo sito WordPress è preferibile perciò che la tua password sia molto lunga e non inventata basandoti sui tuoi dati sensibili o informazioni personali, quali il tuo nome e cognome, la tua data di nascita, quella dei tuoi parenti e altri numeri facilmente rintracciabili.

6# Nascondi i dati di login

Questo step per mettere in sicurezza il nostro sito riguarda l’amministrazione di WordPress. Per chiunque potrebbe essere molto semplice individuare e rubare le credenziali di accesso dell’amministratore del sito web digitando la stringa di codice ?author=1dopo l’url del sito preso di mira. Si rende perciò necessario nascondere il nome utente dell’admin. Ma come si fa?

Basta copiare nel file functions.php il seguente codice:

add_action(‘template_redirect’, ‘bwp_template_redirect’);
function bwp_template_redirect()
{
if (is_author())
{
wp_redirect( home_url() ); exit;
}
}

Anche la pagina di accesso al pannello di controllo di WordPress può risultare facilmente individuabile: è sufficiente che qualcuno aggiunga all’url di dominio del sito /wp-admin.php oppure /wp-login.php, digiti il nome utente in precedenza trovato e lasci che il suo programma di hacking faccia il resto per trovare la password del tuo sito. A questo punto il gioco è fatto: sono entrati!

È possibile, però, proteggere la pagina di accesso al pannello di controllo cambiandone l’url rispetto a quello di default fornito da WordPress. Per la messa in sicurezza esistono diversi plugin che è possibile installare sulla piattaforma. Come trovarli? Puoi cercarli nella directory di WordPress. Un plugin particolarmente indicato per questo scopo è HC Custom WP-Admin URL, che permette di cambiare facilmente lo slug del pannello di accesso con uno a tua scelta. Per farlo si accede a Impostazioni/Permalink nel menu a destra, si scorre la pagina fino in fondo, dove troveremo WP-Admin slug: lì potremo cambiare il nostro url di accesso al pannello di amministrazione.

Messa in sicurezza di WordPress: il Plugin WP-Admin slug

7# Modifica il tuo file Wp-includes

Dopo aver provveduto a mettere in sicurezza Wp-admin, adesso procediamo a mettere al sicuro un’altra importantissima porta di accesso e percorso interno delle cartelle del nostro sito: Wp-includes. Per fare ciò interverremo sul file .htaccess. Apriamolo e copia-incolliamo il seguente codice prima di# BEGIN WordPress:

# Block the include-only files.
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^wp-admin/includes/ - [F,L]
RewriteRule !^wp-includes/ - [S=3]
RewriteRule ^wp-includes/[^/]+\.php$ - [F,L]
RewriteRule ^wp-includes/js/tinymce/langs/.+\.php - [F,L]
RewriteRule ^wp-includes/theme-compat/ - [F,L]
</IfModule>
# BEGIN WordPress

Nel caso in cui si voglia far lavorare WordPress in versione multisite è consigliabile omettere la terza RewriteRule.

8# Proteggi i tuoi database di WordPress

Il tuo database è una porta d’accesso importantissima al tuo sito web. Esso contiene infatti tutte le cartelle del sito e hackerarlo può essere relativamente semplice per un professionista. Se abbiamo diversi siti su uno stesso server o database ed esso viene compromesso, tutti i siti web in questione saranno a rischio.
Perciò sarebbe buona norma tenere ogni sito su un database diverso. Ogni database, poi, dovrebbe essere gestito da utenti separati con differenti credenziali.
Per maggiore sicurezza, inoltre, è possibile revocare tutti i privilegi di un database, ad eccezione dei dati di lettura e scrittura, così che gli utenti lavorino solo con i dati di registrazione / upload e l’installazione dei plugin. Questa modifica potrebbe però creare qualche problema, a causa del fatto che per i maggiori update sono richiesti privilegi superiori a quelli sopra citati.

9# Migliora la sicurezza tramite le modifiche al file wp-config.php

Uno dei file più importanti di WordPress è Il wp-config.php, il file di configurazione della piattaforma, dove sono espressamente citati il nome del database sul quale è installato WordPress e credenziali di accesso al MySql. Per fortuna, per mettere in sicurezza queste informazioni bastano pochi secondi. Anche in questo caso il file sul quale andare ad agire è il file .htaccess.

Occorre aprirlo e copia-incollare questo codice al suo interno:

<Files wp-config.php>
order allow,deny
deny from all
</Files>

10# Fai un backup costante di tutti i tuoi dati

Fare un backup del tuo sito in maniera costante vuol dire avere una copia del tuo sito web aggiornata da ripristinare in caso di attacco da parte di hacker. Esistono sia plugin di WordPress, sia metodi un po’ più complessi per “salvare una copia” del tuo sito. Anche lo stesso WordPress permette tramite la funzione Export di salvare i contenuti del sito web. Io personalmente preferisco un backup eseguito tramite il cPanel dell’hosting perché garantisce un salvataggio ordinato delle cartelle che possono essere facilmente caricate di nuovo all’occorrenza.

Ti sono chiari i rischi che corri se non metti subito in sicurezza il tuo sito WordPress?

Bene, allora non ti resta che mettere in pratica i miei consigli!

Mi raccomando: se hai suggerimenti, li aspetto qui sotto!

Condividi
Author Photo
Francesca Caponetto, classe Ottantacinque, dal 2012 mi occupo di comunicazione e formazione web per diversi clienti sul territorio nazionale, in qualità di SEO Specialist. La selezione che ho dovuto fare sul mio parco clienti, mi ha portato ad adottare per la mia attività l'approccio strategico Account Based Marketing e, poi, a proporlo a poche aziende scelte, tra le quali "Pino il Pinscherino" il mio brand di accessori e abiti per cani di piccola taglia e per i loro padroni. Mi trovate su Accountbasedmarketing.it.