Aller au contenu principal

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:

  1. Quanti account amministratore ci sono? Nella maggior parte dei siti, più del necessario. Ognuno è una chiave completa.
  2. Un redattore ha bisogno di poter installare plugin? No. Eppure i ruoli si allargano col tempo, plugin dopo plugin, e nessuno li restringe.
  3. 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_EDIT attivo
  • 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.

Irrobustimento (hardening) avanzato di WordPress | AIFORYA