WordPress è il sistema di gestione dei contenuti (CMS) più utilizzato al mondo. Proprio per la sua enorme diffusione rappresenta anche uno degli obiettivi preferiti degli attacchi informatici.
Quando un sito WordPress viene violato, la prima domanda è quasi sempre: «Come hanno fatto a entrare?»
Non esiste una risposta valida per tutti i casi. Le modalità di attacco possono essere numerose e, spesso, una violazione è il risultato della combinazione di più fattori: un plugin non aggiornato, una password già compromessa, un account amministrativo non più utilizzato oppure un computer infetto dal quale sono state effettuate operazioni sul sito.
In questa guida analizziamo le cause più comuni e le precauzioni che possono ridurre sensibilmente il rischio di compromissione.
WordPress è sicuro?
Il software WordPress viene costantemente aggiornato e sottoposto al controllo di una comunità molto ampia. Le vulnerabilità individuate nel nucleo principale del CMS vengono generalmente corrette rapidamente.
Tuttavia, un sito WordPress non è composto soltanto dal software principale. Normalmente comprende anche:
- un tema grafico;
- numerosi plugin;
- account amministrativi;
- credenziali FTP, SFTP, database e pannello di controllo;
- eventuali script o applicazioni aggiuntive;
- il computer o il dispositivo utilizzato dall'utente per amministrare il sito.
La sicurezza complessiva dipende quindi da tutti questi elementi. È sufficiente che uno solo sia vulnerabile perché un attaccante possa riuscire ad accedere al sito.
1. Plugin vulnerabili o non aggiornati
I plugin rappresentano una delle principali vie di accesso utilizzate negli attacchi contro i siti WordPress.
Un plugin può contenere una vulnerabilità che consente, ad esempio:
- l’esecuzione di codice non autorizzato;
- il caricamento di file dannosi;
- l’accesso a dati riservati;
- la creazione di nuovi utenti amministratori;
- l’esecuzione di operazioni senza autenticazione;
- l’inserimento di codice nelle pagine del sito.
Quando viene scoperta una vulnerabilità, lo sviluppatore può pubblicare un aggiornamento correttivo. Se il plugin non viene aggiornato, la vulnerabilità rimane utilizzabile.
Gli attacchi sono spesso automatizzati: programmi appositi analizzano continuamente migliaia di siti alla ricerca di versioni vulnerabili. Non è quindi necessario che qualcuno conosca o scelga specificamente il sito da attaccare.
Come ridurre il rischio
- Aggiornare regolarmente tutti i plugin.
- Attivare gli aggiornamenti automatici, quando appropriato.
- Eliminare completamente i plugin non utilizzati: disattivarli non sempre è sufficiente.
- Utilizzare plugin mantenuti attivamente e provenienti da fonti affidabili.
- Evitare plugin abbandonati, non aggiornati da molto tempo o distribuiti da siti non ufficiali.
- Limitare il numero dei plugin installati a quelli realmente necessari.
2. Temi vulnerabili o non aggiornati
Anche i temi possono contenere vulnerabilità.
Il rischio riguarda sia il tema attivo sia eventuali temi installati ma non utilizzati. Un tema inattivo continua infatti a essere presente sul server e i suoi file potrebbero essere raggiungibili e sfruttabili.
Come ridurre il rischio
- Mantenere aggiornato il tema utilizzato.
- Eliminare i temi inutilizzati.
- Conservare eventualmente soltanto un tema WordPress predefinito aggiornato, utile per attività di diagnostica.
- Scaricare i temi esclusivamente da fonti affidabili.
- Evitare temi premium distribuiti gratuitamente da siti non autorizzati.
I temi o plugin commerciali modificati e distribuiti illegalmente, spesso definiti nulled, possono contenere codice dannoso già al momento dell’installazione.
3. WordPress non aggiornato
Anche il nucleo principale di WordPress può presentare vulnerabilità.
Le versioni più recenti ricevono aggiornamenti di sicurezza, mentre le versioni molto vecchie possono contenere problemi già conosciuti e documentati pubblicamente.
Come ridurre il rischio
- Utilizzare una versione recente e supportata di WordPress.
- Lasciare attivi gli aggiornamenti automatici di sicurezza.
- Verificare periodicamente che gli aggiornamenti siano stati completati correttamente.
- Prima degli aggiornamenti più importanti, creare un backup del sito.
Rimandare gli aggiornamenti per timore di problemi di compatibilità può sembrare prudente, ma mantenere per lungo tempo una versione vulnerabile comporta un rischio maggiore.
4. Password deboli, riutilizzate o compromesse
Una password può essere individuata mediante tentativi automatici oppure essere già presente in database provenienti da precedenti violazioni di altri servizi.
Se la stessa password viene utilizzata per più siti, la compromissione di un singolo servizio può consentire l’accesso anche al sito WordPress.
Questa tecnica è chiamata credential stuffing: gli attaccanti provano automaticamente combinazioni di indirizzi e-mail e password già sottratte altrove.
Come ridurre il rischio
- Utilizzare password lunghe, casuali e uniche.
- Non riutilizzare la stessa password su servizi differenti.
- Utilizzare un password manager.
- Attivare l’autenticazione a due fattori (2FA) per gli account amministrativi.
- Cambiare immediatamente le password che potrebbero essere state compromesse.
È importante proteggere non soltanto la password di WordPress, ma anche quelle relative a:
- pannello di controllo dell’hosting;
- account FTP o SFTP;
- caselle e-mail;
- database;
- account del registrar;
- servizi di backup e gestione esterni.
5. Attacchi di forza bruta alla pagina di accesso
La pagina di accesso di WordPress può essere sottoposta a migliaia di tentativi automatici.
Gli attaccanti provano nomi utente comuni e grandi elenchi di password nella speranza di trovare una combinazione valida.
L’utilizzo del nome utente admin, da solo, non causa una violazione; tuttavia rende noto uno dei due elementi necessari per l’accesso.
Come ridurre il rischio
- Utilizzare password lunghe e uniche.
- Attivare l’autenticazione a due fattori.
- Limitare temporaneamente i tentativi di accesso ripetuti.
- Eliminare gli account amministrativi inutilizzati.
- Evitare di assegnare privilegi amministrativi agli utenti che non ne hanno necessità.
La modifica dell’indirizzo della pagina di login può ridurre alcuni tentativi automatici, ma non deve essere considerata una misura di sicurezza sufficiente.
6. Account amministrativi dimenticati
Nel corso del tempo possono essere creati account per sviluppatori, collaboratori, agenzie web o dipendenti.
Quando la collaborazione termina, tali account vengono talvolta dimenticati. Se le relative credenziali vengono successivamente compromesse, possono essere utilizzate per accedere al sito.
Come ridurre il rischio
- Controllare periodicamente l’elenco degli utenti.
- Eliminare gli account non più necessari.
- Assegnare a ogni utente soltanto i privilegi indispensabili.
- Evitare di condividere un unico account amministrativo tra più persone.
- Creare account personali, in modo da poter identificare le operazioni effettuate.
7. Computer infetto o dispositivo compromesso
La vulnerabilità potrebbe non trovarsi sul sito.
Un malware installato sul computer utilizzato dall'utente per amministrare WordPress può sottrarre:
- password salvate nel browser;
- credenziali FTP;
- cookie di autenticazione;
- dati inseriti tramite tastiera;
- sessioni già aperte.
In questi casi, modificare le password senza prima rimuovere il malware potrebbe essere inutile: le nuove credenziali potrebbero essere sottratte nuovamente.
Il tutto, potrebbe anche non capitare sul PC che l'utente usa normalmente, ma anche su un altro PC che l'utente ha usato, magari provvisoriamente, mesi prima, e da cui poi non ha cancellato tutti i suoi dati.
Attenzione: sia nei sistemi Apple che in quelli Chrome/Android, ormai tutti i dispositivi di un determinato utente costituiscono un ecosistema unico.
Quindi, se un utente ha due PC, un tablet ed uno smartphone, tutti e quattro gli apparati hanno accesso a tutte le password dell'utente.
Quindi, se ad esempio ad essere violato da uno spyware è lo smartphone, le credenziali del sito WordPress sono a rischio anche se lo smartphone non è mai stato usato per la gestione dello stesso.
Come ridurre il rischio
- Mantenere aggiornato il sistema operativo.
- Utilizzare software antivirus e antimalware aggiornati.
- Aggiornare browser e applicazioni.
- Evitare l’installazione di software proveniente da fonti non affidabili.
- Eseguire una scansione dei dispositivi se si sospetta una compromissione.
- Modificare le password soltanto da un dispositivo ritenuto sicuro.
- Quando si utilizza un PC diverso dal proprio per amministrare un sito, farlo sempre all'interno di una sessione anonima del browser
8. Credenziali FTP compromesse
Le credenziali FTP consentono normalmente di accedere direttamente ai file del sito.
Se vengono sottratte, un attaccante può modificare i file esistenti oppure caricarne di nuovi senza accedere al pannello di amministrazione di WordPress.
Come ridurre il rischio
- Preferire SFTP o altri protocolli cifrati quando disponibili.
- Utilizzare password uniche e complesse.
- Eliminare gli account FTP non più necessari.
- Non salvare le password su computer condivisi o non protetti.
- Verificare periodicamente gli account FTP configurati.
9. Plugin e temi scaricati da fonti non affidabili
Plugin e temi ottenuti da siti non ufficiali possono essere modificati per includere:
- backdoor;
- malware;
- sistemi per la creazione di utenti nascosti;
- codice pubblicitario;
- reindirizzamenti verso siti esterni;
- strumenti per l’invio di spam.
Il sito può quindi risultare compromesso fin dal momento dell’installazione.
Come ridurre il rischio
Scaricare plugin e temi esclusivamente:
- dal repository ufficiale di WordPress;
- dal sito ufficiale dello sviluppatore;
- da marketplace conosciuti e affidabili.
Il risparmio ottenuto installando gratuitamente una copia non autorizzata di un componente commerciale può trasformarsi in costi molto maggiori per la bonifica del sito.
10. Permessi errati su file e cartelle
Permessi eccessivamente permissivi possono consentire a processi o utenti non autorizzati di modificare i file del sito.
Configurazioni come 777, utilizzate talvolta per risolvere rapidamente problemi di scrittura, possono aumentare il rischio di sicurezza.
Come ridurre il rischio
- Utilizzare i permessi raccomandati dalla configurazione del server.
- Evitare di assegnare permessi
777se non strettamente necessario. - Ripristinare i permessi corretti dopo eventuali operazioni temporanee.
- Contattare l’assistenza tecnica in caso di dubbi.
11. Altri siti compromessi nello stesso spazio di hosting
Se più siti sono ospitati nello stesso account e non sono adeguatamente separati, la compromissione di uno di essi potrebbe consentire la modifica anche degli altri.
Un vecchio sito dimenticato in una sotto-sotto-cartella del sito principale, un’installazione di prova o un sottodominio non aggiornato possono diventare il punto di ingresso per compromettere applicazioni ancora attive.
Come ridurre il rischio
- Aggiornare tutte le applicazioni presenti nello spazio di hosting.
- Eliminare siti di prova e installazioni non più utilizzate.
- Non dimenticare vecchi sottodomini o copie di sviluppo.
- Utilizzare account o ambienti separati per siti particolarmente importanti.
12. File e script dimenticati
Vecchi gestionali, script PHP, strumenti di importazione, copie di backup accessibili dal web o file utilizzati temporaneamente possono contenere vulnerabilità.
Anche se non sono collegati dal sito principale, possono essere individuati automaticamente dagli scanner utilizzati dagli attaccanti.
Come ridurre il rischio
- Eliminare file e applicazioni non più utilizzati.
- Non conservare copie di backup all’interno di cartelle pubblicamente accessibili.
- Controllare periodicamente il contenuto dello spazio web.
- Rimuovere vecchie installazioni di WordPress anziché lasciarle abbandonate.
13. Vulnerabilità non ancora corrette
In alcuni casi può essere scoperta una vulnerabilità per la quale non è ancora disponibile un aggiornamento.
Queste vulnerabilità vengono spesso definite zero-day.
Non è possibile eliminare completamente questo rischio, ma è possibile ridurne l’impatto utilizzando sistemi di protezione aggiuntivi.
Come ridurre il rischio
- Utilizzare un firewall applicativo (WAF).
- Utilizzare sistemi di rilevamento e blocco del malware.
- Installare soltanto i componenti realmente necessari.
- Preferire plugin e temi sviluppati e mantenuti attivamente.
- Disporre di backup recenti e verificati.
14. Mancanza di sistemi di protezione aggiuntivi
Gli aggiornamenti rimangono la misura di sicurezza più importante, ma strumenti aggiuntivi possono bloccare molti tentativi di attacco.
Tra questi:
- Web Application Firewall (WAF);
- sistemi di rilevamento malware;
- protezione dagli attacchi di forza bruta;
- controllo dell’integrità dei file;
- blocco automatico degli indirizzi IP sospetti;
- monitoraggio delle modifiche.
Questi strumenti non rendono un sito invulnerabile e non sostituiscono gli aggiornamenti, ma possono ridurre il rischio e limitare gli effetti di alcune vulnerabilità.
NOTA: tutte queste misure sono già applicate "di serie" su tutti i servizi di hosting forniti da DomainRegister. L'utente può monitorarne l'attività e l'efficacia tramite il plugin "Imunify Security WordPress", installato automaticamente in tutti i siti WordPress ospitati sulla nostra piattaforma. Per maggiori dettagli: https://domainregister.international/index.php/knowledgebase/764/Imunify-Security-WordPress-Plugin.html
Cosa fare per rendere WordPress più sicuro
Le principali misure di sicurezza possono essere riassunte nel seguente elenco:
- mantenere aggiornati WordPress, plugin e temi;
- eliminare plugin, temi e installazioni inutilizzati;
- utilizzare password lunghe, uniche e casuali;
- attivare l’autenticazione a due fattori;
- utilizzare esclusivamente software proveniente da fonti affidabili;
- controllare periodicamente gli account amministrativi;
- proteggere anche le credenziali di hosting, FTP ed e-mail;
- mantenere sicuri e aggiornati i computer utilizzati per amministrare il sito e tutti i dispositivi connessi;
- utilizzare sistemi firewall e antimalware;
- creare backup regolari e conservarli separatamente.
La sicurezza è un processo continuo
Nessuna singola configurazione può garantire che un sito non venga mai violato.
La sicurezza di WordPress richiede manutenzione continua: gli aggiornamenti devono essere installati, gli account controllati, i componenti inutilizzati rimossi e i backup verificati.
Un sito aggiornato, essenziale nella sua configurazione e protetto da credenziali robuste presenta una superficie di attacco molto più ridotta rispetto a un’installazione trascurata nel tempo.
È inoltre importante ricordare che la presenza di sistemi di sicurezza sul server non elimina la necessità di mantenere aggiornato il sito. Le protezioni dell’infrastruttura possono bloccare numerosi attacchi, ma non possono garantire la protezione da ogni vulnerabilità presente nei plugin, nei temi o nelle applicazioni installate dall’utente.


