Gli aspetti che riguardano la sicurezza di un sito web sono tanti. Per Joomla possiamo prenderene in considerazione tre:
- La sicurezza del webserver
- La sicurezza del core di Joomla
- La sicurezza delle estensioni non standard
Nel primo caso possiamo solo intervenire su ciò che ci concede l'hoster (in genere il file .htaccess) o accertarci preventivamente che la versione di apache, php e MySql non siano troppo datate. Ma già a questo livello è possibile fare qualcosa per ridurre i rischi.
Ad esempio proteggere la cartella administrator è già un buon inizio.
Nel secondo caso l'unica soluzione è quella di seguire l'evoluzione del core (il codice base di Joomla) e mantenerlo aggiornato con le release rilasciate dal gruppo di sviluppo.
Del core fanno parte alcune estensioni (componenti, moduli e plugin) che vengono rilasciate con Joomla stesso. Chiaramente sono da reputare "sicure" visto che fanno parte di Joomla stesso e quindi sono mantenute aggiornate.
Reputare sicura una versione notoriamente (nel senso che l'informazione è di pubblico dominio) buggata è sbagliato. La strada per bucare il sito si trova sempre.
Il terzo caso è la "madre di tutti i guai" dei webmaster. Il fatto che un'estensione si trovi sul sito di joomla.org o che sia utilizzata da migliaia di siti non garantisce la sua sicurezza. L'avvertenza è sempre valida: installare estensioni sviluppate da terze parti riduce il livello di sicurezza del sito.
Ricordo due frasi del docente che ci fece un corso sulla sicurezza informatica:
- La sicurezza complessiva della tua rete è pari al nodo con il livello di sicurezza più basso
- Il computer più sicuro in assoluto è quello non connesso in rete, chiuso in cassaforte e... spento
E la prima massima si può applicare anche ai siti realizzati in Joomla: la sicurezza del tuo sito è pari al componente meno sicuro che hai installato, quello di cui non sai assolutamente nulla.
Chi ti dice che tra i componeti che hai installato non ce ne sia uno buggato? Hai per caso controllato tutto il codice del componente per accertarti che non ci siano falle? Sicuro che non sia possibile un attacco (tipo Sql Injection o Cross-site scripting) attraverso quel componente?
Vedi
Tecniche Hacking su Wikipedia
In conclusione, fare il webmaster e sviluppare siti web è un lavoro ingrato. Non per questo dobbiamo sottrarci ai nostri doveri, anche se il sito è il nostro.
Un sito sicuro in assoluto non esiste, possiamo solo fare in modo di renderlo meno appetibile a chi volesse provare a bucarlo.
E... si, secondo me sei stato molto fortunato... fino ad ora
Ti lascio con una citazione
Il 99% dei problemi di un PC sta tra la sedia e la tastiera