Sicurezza Joomla: proteggi il tuo sito dalle minacce
La maggior parte delle violazioni di sicurezza su Joomla si poteva evitare. Non nascono da attacchi sofisticati contro il core di Joomla, ma da installazioni non aggiornate, estensioni senza patch, credenziali di amministratore deboli e ambienti di hosting configurati male. Questa guida illustra le misure di sicurezza che contano davvero per proteggere il tuo sito Joomla.
Il rischio numero uno: usare una versione di Joomla a fine vita
Nessun intervento di hardening può compensare l'uso di una versione di Joomla non più supportata. Se il tuo sito gira ancora su Joomla 3 (fine vita ad agosto 2023) o Joomla 4 (fine vita a ottobre 2025), l'azione di sicurezza più importante che puoi compiere è l'aggiornamento a una versione supportata.
Le versioni di Joomla non supportate non ricevono patch di sicurezza. Quando una vulnerabilità viene scoperta e corretta in Joomla 5 o 6, la stessa vulnerabilità resta aperta in Joomla 3 e 4, in modo permanente. I dettagli della vulnerabilità vengono pubblicati nel Joomla Security Centre, fornendo di fatto agli aggressori una mappa per colpire le installazioni più vecchie.
Scopri tutti i percorsi di aggiornamento →
Le estensioni: la tua superficie di attacco più ampia
La maggior parte delle violazioni di sicurezza su Joomla ha origine dalle estensioni di terze parti, non dal core di Joomla. Il motivo è che la qualità del codice delle estensioni varia enormemente, le estensioni abbandonate non ricevono mai patch di sicurezza e un sito Joomla tipico può avere installate da 15 a 50 estensioni, ognuna delle quali è un potenziale punto di ingresso.
Buone pratiche per la sicurezza delle estensioni
- Rimuovi ciò che non usi. Ogni estensione installata è superficie di attacco. Se un'estensione è installata ma non viene usata attivamente, disinstallala del tutto: disattivarla non basta, perché il codice rimane sul server e può comunque essere accessibile.
- Aggiorna tempestivamente. Quando un'estensione rilascia un aggiornamento, applicalo, soprattutto se il changelog menziona correzioni di sicurezza. Prima testa in staging, poi metti in produzione.
- Tieni d'occhio le estensioni abbandonate. Se un'estensione non viene aggiornata da oltre 12 mesi, consideralo un abbandono e pianifica una sostituzione. Un'estensione abbandonata non riceverà mai più una patch di sicurezza.
- Consulta la Vulnerable Extensions List. Il Joomla Extensions Directory mantiene un elenco delle estensioni con vulnerabilità note. Confronta le tue estensioni installate con questo elenco.
- Scegli la qualità, non la quantità. Usa il numero minimo di estensioni necessario. Prima di installare una nuova estensione, verifica che la funzione non sia già disponibile nel core di Joomla o in un'estensione che hai già.
Per consigli sulle estensioni, consulta la nostra Guida alle estensioni Joomla.
Rendere più sicuro l'accesso amministratore
Credenziali robuste
Non usare "admin" come nome utente dell'amministratore. Non usare password semplici. Affidati a un password manager per generare password uniche e complesse per ogni account amministratore di Joomla. È igiene di sicurezza di base, eppure resta la debolezza più comune che riscontriamo durante gli audit dei siti.
Autenticazione a due fattori (2FA)
Joomla 5 e 6 includono l'autenticazione a due fattori integrata. Attivala per tutti gli account amministratore. La 2FA aggiunge un secondo passaggio di verifica, in genere un codice temporaneo generato da un'app di autenticazione, che impedisce l'accesso non autorizzato anche se la password viene compromessa. Non c'è alcun buon motivo per non usarla.
Limita gli accessi amministratore
Non tutti gli utenti del backend hanno bisogno dei permessi di Super Administrator. Il sistema di gruppi utente di Joomla ti consente di creare ruoli con permessi specifici e limitati. Chi redige i contenuti deve avere i permessi per modificarli, non l'accesso alla configurazione del sistema. Il principio del privilegio minimo vale per l'accesso al CMS esattamente come per qualsiasi altro sistema.
Protezione della cartella administrator
Aggiungere un ulteriore livello di protezione alla cartella /administrator, tramite protezione con password a livello di server (.htpasswd), restrizioni per IP o un parametro URL segreto, rende molto più difficile per gli strumenti automatici trovare e attaccare la tua pagina di login. Questo non sostituisce credenziali robuste e 2FA, ma riduce il volume di tentativi di brute force che il sito deve gestire.
Sicurezza del server e dell'hosting
Versione di PHP
Usa l'ultima versione di PHP supportata (PHP 8.2 o 8.3 per Joomla 5/6). Le versioni di PHP più vecchie non ricevono patch di sicurezza. Far girare Joomla su una versione di PHP non supportata vanifica molti dei miglioramenti di sicurezza presenti nel CMS stesso.
Permessi dei file
Permessi dei file corretti impediscono la modifica non autorizzata dei file di Joomla. Come regola generale: le cartelle dovrebbero essere impostate a 755, i file a 644 e il file configuration.php a 444 (sola lettura). Il tuo ambiente di hosting potrebbe richiedere impostazioni leggermente diverse: in caso di dubbi, rivolgiti al tuo provider di hosting.
SSL/TLS (HTTPS)
L'intero sito deve essere servito tramite HTTPS. In questo modo proteggi i dati trasmessi tra i visitatori e il tuo server, comprese le credenziali di accesso, l'invio dei moduli e i cookie di sessione. Nel 2026 non esiste alcun motivo legittimo per servire un sito Joomla tramite HTTP. I certificati SSL gratuiti sono disponibili tramite Let's Encrypt e la maggior parte dei provider di hosting.
Web Application Firewall (WAF)
Un web application firewall filtra le richieste malevole prima che raggiungano la tua installazione di Joomla. I WAF a livello di server (ModSecurity, LiteSpeed WAF) o quelli basati su cloud (Cloudflare, Sucuri) offrono protezione contro gli attacchi più comuni, tra cui SQL injection, cross-site scripting e tentativi di file inclusion.
Backup regolari
I backup sono la tua ultima linea di difesa. Se si verifica un incidente di sicurezza nonostante tutte le misure preventive, un backup pulito e testato ti permette di ripristinare il sito allo stato precedente alla compromissione. Backup giornalieri automatici, archiviati fuori dal server e con test di ripristino periodici, sono indispensabili. Akeeba Backup è lo strumento standard per questo scopo.
Configurazione di sicurezza del core di Joomla
Mantieni Joomla aggiornato
Applica tempestivamente gli aggiornamenti del core di Joomla non appena vengono rilasciati. Prima testa in staging, poi distribuisci in produzione. Joomla 5.4 e 6 supportano gli aggiornamenti automatici delle versioni minori: attiva questa funzione se hai fiducia nella compatibilità delle tue estensioni, oppure affidati a un provider di manutenzione per gestire gli aggiornamenti in modo controllato.
Impostazioni di sicurezza nella Configurazione globale
La Configurazione globale di Joomla include diverse impostazioni rilevanti per la sicurezza. "Forza HTTPS" dovrebbe essere attivata. La durata della sessione dovrebbe essere impostata su un valore ragionevole (15-30 minuti per le sessioni amministratore). Il reporting degli errori dovrebbe essere impostato su "Nessuno" o "Predefinito di sistema" sui siti in produzione (mai su "Massimo": esporrebbe i percorsi del server e i dettagli di configurazione a potenziali aggressori).
Registrazione utenti
Se il tuo sito non richiede la registrazione pubblica degli utenti, disattivala. La registrazione aperta è un vettore frequente per gli account spam e, in installazioni mal configurate, può essere sfruttata per l'escalation dei privilegi. Se hai davvero bisogno della registrazione pubblica, implementa un CAPTCHA e richiedi la verifica via email.
Cosa fare se il tuo sito viene violato
Se sospetti che il tuo sito Joomla sia stato compromesso:
- Non farti prendere dal panico, ma agisci in fretta. Più a lungo dura una compromissione, maggiori sono i danni che provoca: ai tuoi dati, ai tuoi visitatori e alla tua reputazione.
- Metti il sito offline. Pubblica una pagina di manutenzione per evitare che i visitatori siano esposti a contenuti malevoli.
- Non limitarti a ripristinare da un backup. La vulnerabilità che ha permesso la compromissione esiste ancora. Ripristinare senza risolvere la causa di fondo significa che l'aggressore può semplicemente rientrare attraverso lo stesso punto debole.
- Individua il punto di ingresso. Determina come l'aggressore ha ottenuto l'accesso: si tratta di un'estensione senza patch, di una password debole, di una vulnerabilità nel caricamento dei file o di un problema a livello di server?
- Bonifica la compromissione. Rimuovi tutti i file malevoli, gli script backdoor e il codice iniettato. Controlla il database alla ricerca di contenuti iniettati. Verifica gli account utente per individuare amministratori non autorizzati.
- Correggi la vulnerabilità. Aggiorna il componente che è stato sfruttato, cambia tutte le password e implementa le misure preventive descritte in questa guida.
- Ripristina e verifica. Rimetti il sito online e monitoralo con attenzione per cogliere eventuali segnali di una nuova compromissione.
- Valuta un aiuto professionale. Bonificare a fondo un sito violato richiede competenze specifiche. Uno script backdoor non individuato significa che l'aggressore mantiene l'accesso anche quando pensi che il sito sia pulito.
La sicurezza è un processo continuo
La sicurezza non è una configurazione fatta una volta per tutte. Le minacce si evolvono, vengono scoperte nuove vulnerabilità e il panorama delle estensioni cambia di continuo. Una manutenzione strutturata e costante, fatta di aggiornamenti regolari, monitoraggio e revisioni periodiche della sicurezza, è il modo più affidabile per mantenere sicuro un sito Joomla nel tempo.
I nostri piani di manutenzione includono come servizi fondamentali il monitoraggio della sicurezza, la gestione degli aggiornamenti e la verifica dei backup. Il nostro hosting gestito offre sicurezza a livello di server, con firewall, protezione DDoS e monitoraggio proattivo.
Richiedi una valutazione di sicurezza
Il nostro audit gratuito del sito include una valutazione di sicurezza: controlliamo la tua versione di Joomla, la versione di PHP, lo stato delle vulnerabilità delle estensioni, la configurazione SSL e gli errori di configurazione più comuni. Ricevi un report chiaro che mostra a che punto si trova il tuo sito e su cosa intervenire.