Irrobustimento (hardening) avanzato di WordPress
Par AIFORYA — 30 luglio 2026 — 13 de lecture
In questa pagina (8)
Introduzione: irrobustire non significa aggiungere, significa togliere
L'hardening viene quasi sempre presentato come un elenco di cose da installare. È il contrario. Irrobustire un sistema significa ridurre ciò che può fare, e la maggior parte delle misure di questa pagina non richiede alcun programma aggiuntivo.
Il principio unico da cui discendono tutte:
non ci si protegge da una falla sconosciuta, si riduce ciò che quella falla può raggiungere.
Questo articolo dà per fatte le basi — password solide, doppio fattore, aggiornamenti in ordine, backup collaudati. Se non è così, cominci da l'audit di sicurezza in 10 minuti.
1. L'esecuzione — la misura che neutralizza la più grande famiglia di attacchi
Vietare l'esecuzione di PHP nella cartella dei caricamenti. Una sola regola di configurazione del server, e neutralizza un'intera classe di vulnerabilità: quelle in cui un aggressore riesce a depositare un file e poi a richiamarlo.
È la misura con il miglior rapporto tra sforzo ed effetto di tutto questo elenco, e resta assente dalla maggior parte delle installazioni perché non è visibile dalla bacheca di WordPress.
Vietare la modifica dei file dall'amministrazione (DISALLOW_FILE_EDIT). Un account amministratore compromesso non può più scrivere codice dal browser. Non impedisce l'intrusione: impedisce che diventi controllo totale.
Disattivare l'installazione di plugin dall'amministrazione sui siti in cui il rilascio passa da un altro canale (DISALLOW_FILE_MODS). È più restrittivo e non si adatta a tutti i flussi di lavoro — ma dove si adatta, chiude la via principale alla persistenza.
2. I permessi — precisi, non permissivi
La regola non è «il più restrittivo possibile», è «scrittura solo dove serve».
- I file di configurazione non hanno bisogno di essere scrivibili dal server web in condizioni normali.
- La cartella dei caricamenti ha bisogno della scrittura; quella dei plugin no, salvo durante un aggiornamento.
- Un permesso troppo aperto su una sola cartella annulla il rigore di tutte le altre.
⚠ L'errore frequente: applicare permessi molto restrittivi, poi allentarli «temporaneamente» per sbloccare un aggiornamento — e dimenticarsene. Annoti la data quando lo fa; è l'unico modo perché venga ristretto di nuovo.
3. Le capacità — il punto che quasi nessuno guarda
WordPress assegna capacità per ruolo, e la maggior parte dei siti usa i ruoli predefiniti senza mai rivederli.
Tre domande che quasi sempre fanno emergere qualcosa:
- Quanti account amministratore ci sono? Nella maggior parte dei siti, più del necessario. Ognuno è una chiave completa.
- Un redattore ha bisogno di poter installare plugin? No. Eppure i ruoli si allargano col tempo, plugin dopo plugin, e nessuno li restringe.
- Restano account di persone che se ne sono andate? Un account inattivo con privilegi è una porta che nessuno sorveglia più.
Il correttivo non è tecnico, è organizzativo: una revisione degli account ogni trimestre, con la data annotata.
4. La superficie di amministrazione
- Limitare i tentativi di accesso. Non ferma un attacco mirato, ma elimina il rumore di fondo che satura i registri e nasconde ciò che conta.
- Limitare l'accesso all'amministrazione per indirizzo IP quando la squadra è stabile. È la misura più efficace di questa sezione e la meno compatibile con il lavoro in mobilità — da valutare consapevolmente.
- Ridurre le informazioni esposte. Non come protezione: come igiene. Non se ne aspetti alcun effetto reale.
- Sorvegliare l'integrità dei file. Non si riconosce un attacco sconosciuto; si riconosce benissimo che un file è cambiato senza che lo si sappia. È il principio spiegato in la protezione proattiva contro le minacce zero-day.
5. Ciò che NON protegge, nonostante le apparenze
- Nascondere la versione di WordPress. Uno scanner automatico prova la falla, non legge un numero.
- Spostare la pagina di accesso. Utile contro il rumore, nullo di fronte a una falla in un plugin: lo sfruttamento non passa dal modulo.
- Un punteggio di sicurezza in una bacheca. Un indicatore che non scende mai non misura nulla.
- Accumulare plugin di sicurezza. Due firewall non proteggono il doppio; aggiungono due superfici e un conflitto probabile.
6. Il protocollo, in una pagina
- Esecuzione PHP vietata nella cartella dei caricamenti — cominci da qui
-
DISALLOW_FILE_EDITattivo - Permessi rivisti: scrittura solo dove serve, con una data su ogni eccezione
- Account amministratore contati e ridotti al numero necessario
- Account inattivi eliminati, non disattivati
- Capacità per ruolo riviste: chi può installare, chi può pubblicare?
- Tentativi di accesso limitati
- Sorveglianza dell'integrità attiva, con un avviso che raggiunge una persona in giornata
- Ripristino davvero collaudato, almeno una volta, in un ambiente separato
- Numero di plugin ridotto — veda verificare i propri plugin in 5 passi
Conclusione
L'hardening avanzato non consiste nell'impilare difese: consiste nel ridurre ciò che una falla può raggiungere. Le due misure più redditizie di questa pagina — vietare l'esecuzione di PHP nei caricamenti e ridurre il numero di account privilegiati — non costano alcun programma e non compaiono in nessuna bacheca.
È proprio per questo che vengono applicate di rado: non c'è nulla da installare, nulla da mostrare e nessun punteggio che salga.
La prova che dice a che punto è: se un account amministratore venisse compromesso stasera, che cosa potrebbe fare l'aggressore che oggi non si può impedire? L'elenco di quelle azioni è il suo piano di lavoro.
Per continuare: la protezione proattiva contro le minacce zero-day, l'audit di sicurezza in 10 minuti e verificare i propri plugin in 5 passi. Le nostre estensioni premium sono disponibili con rimborso integrale entro 14 giorni: vedere il catalogo.