Blog
Rafforzare WordPress senza plugin: 10 passaggi manuali che ogni amministratore deve conoscere
Scopri 10 passaggi essenziali di hardening manuale per proteggere il tuo sito WordPress senza affidarti ai plugin. Pratici, attuabili ed efficaci.
Riepilogo
Molti proprietari di siti WordPress dipendono dai plugin di sicurezza come unica difesa, ma questo può creare un falso senso di sicurezza. Un'installazione WordPress veramente rafforzata richiede configurazioni manuali che nessun plugin può sostituire. Questo articolo fornisce 10 misure concrete di hardening passo dopo passo che puoi implementare immediatamente senza alcun plugin. Dall'impostazione delle giuste autorizzazioni dei file alla disabilitazione di XML-RPC, ogni passaggio affronta una vulnerabilità specifica. Imparerai come bloccare il tuo wp-config.php, rimuovere la navigazione delle directory e altro. Seguendo questi passaggi ridurrai significativamente la superficie di attacco, anche se continuerai a utilizzare plugin di sicurezza come livello aggiuntivo. Alla fine, avrai un sito WordPress manualmente rafforzato che è molto più resiliente agli attacchi comuni.
Introduzione
Hai installato un plugin di sicurezza popolare, configurato il firewall ed eseguito scansioni regolari. Tuttavia, il tuo sito WordPress potrebbe essere ancora vulnerabile. I plugin di sicurezza sono preziosi, ma spesso trascurano i frutti a portata di mano che l'hardening manuale cattura. Affidarsi esclusivamente ai plugin è come chiudere la porta d'ingresso ma lasciare le finestre aperte. In questo articolo imparerai 10 passaggi di hardening manuale che ogni amministratore WordPress dovrebbe eseguire, indipendentemente dai plugin che utilizza. Questi passaggi non richiedono competenze di codifica e possono essere eseguiti in meno di un'ora. Iniziamo a fortificare il tuo sito dalle fondamenta.
1. Impostare le autorizzazioni dei file corrette
Una delle configurazioni errate più comuni sono le autorizzazioni eccessivamente permissive per file e directory. Idealmente, tutti i file dovrebbero essere 644 e le directory 755. Il file wp-config.php è particolarmente sensibile: impostalo a 440 o 400 dopo l'installazione. Utilizza un client FTP o il file manager del tuo host per regolare le autorizzazioni. Se non sei sicuro delle tue impostazioni attuali, esegui un rapido controllo usando uno script o verifica tramite la riga di comando con find /path -type f -exec chmod 644 {} \; e find /path -type d -exec chmod 755 {} \;. Questo semplice cambiamento impedisce agli utenti non autorizzati di leggere o modificare file critici.
2. Disabilitare la modifica dei file dalla dashboard
Per impostazione predefinita, WordPress consente agli amministratori di modificare i file di temi e plugin direttamente dal pannello di amministrazione. Se un attaccante ottiene l'accesso a un account amministratore, può iniettare codice malevolo. Disabilita questa funzionalità aggiungendo la seguente riga al tuo file wp-config.php:
define('DISALLOW_FILE_EDIT', true);
Questo non influisce sulla tua capacità di caricare temi o plugin: rimuove solo l'editor di file inline. Usa un IDE o FTP per modifiche legittime.
3. Disabilitare la navigazione delle directory
Se la navigazione delle directory è abilitata, chiunque può elencare tutti i file nella cartella wp-content/uploads, esponendo potenzialmente dati privati. Previeni questo aggiungendo questa riga al tuo file .htaccess (Apache) o configurazione equivalente:
Options -Indexes
Per Nginx, aggiungi autoindex off; nel blocco del server. Testa visitando un URL di directory; dovresti vedere un errore 403 Forbidden invece di un elenco di file.
4. Disabilitare XML-RPC
XML-RPC è un vecchio protocollo utilizzato per la pubblicazione remota e i trackback. È un vettore comune per attacchi di forza bruta e amplificazione DDoS. A meno che non ne abbia assolutamente bisogno (ad esempio per il plugin Jetpack o l'app mobile), disabilitalo completamente. Aggiungi questo al tuo .htaccess:
# Block WordPress xmlrpc.php requests
<Files xmlrpc.php>
order deny,allow
deny from all
</Files>
In alternativa, usa un plugin o il firewall del tuo host per bloccare l'accesso. Dopo averlo disabilitato, verifica che il tuo sito funzioni ancora: la maggior parte dei plugin moderni non fa più affidamento su XML-RPC.
5. Rimuovere temi e plugin inutilizzati
Ogni tema o plugin extra aumenta la superficie di attacco. Anche se disattivati, i codici obsoleti possono ancora essere sfruttati. Elimina tutti i temi che non stai utilizzando attivamente e rimuovi i plugin che non sono più necessari. Questo è particolarmente importante per i plugin abbandonati che non ricevono più aggiornamenti. Per una guida alla pulizia passo dopo passo, consulta il nostro articolo su il pericolo nascosto dei plugin WordPress abbandonati.
6. Cambiare il prefisso delle tabelle del database
Per impostazione predefinita, WordPress usa wp_ come prefisso delle tabelle nel database. Questo è ampiamente noto e rende più facili gli attacchi SQL injection. Cambia il prefisso con qualcosa di unico durante l'installazione. Se il tuo sito è già live, puoi comunque cambiarlo, anche se richiede più sforzo. Usa un plugin come "Change Table Prefix" o fallo manualmente tramite phpMyAdmin:
- Esporta il tuo database.
- Rinomina tutte le tabelle usando un nuovo prefisso (ad es.
mysec_). - Aggiorna
wp-config.phpcon il nuovo prefisso. - Aggiorna le tabelle
optionseusermetadove viene usato il vecchio prefisso.
Fai sempre un backup prima di tentare questa operazione.
7. Limitare i tentativi di accesso
Gli attacchi di forza bruta sono il modo più comune con cui gli attaccanti ottengono l'accesso. WordPress non ha una limitazione integrata dei tentativi di accesso. Implementalo manualmente aggiungendo codice al functions.php del tuo tema o, meglio, usa un plugin must‑use. In alternativa, il tuo provider di hosting potrebbe offrirlo tramite il pannello di controllo. Se preferisci un plugin, scegline uno leggero e ben codificato. Per una strategia più ampia sulla risposta alle violazioni, dai un'occhiata al nostro flusso di lavoro per la remediation della sicurezza WordPress.
8. Cambiare il nome utente dell'amministratore
Non usare mai "admin" come nome utente: è il primo tentativo in ogni attacco di forza bruta. Se hai già un account con quel nome utente, crea un nuovo account amministratore con un nome univoco, poi elimina quello vecchio. Inoltre, considera di usare un indirizzo email per accedere invece di un nome utente.
9. Rafforzare i salt e le chiavi del database
WordPress usa salt e chiavi per crittografare le sessioni utente e i cookie. Se questi sono compromessi, gli attaccanti possono falsificare le sessioni. Genera nuovi salt forti usando il WordPress Salt Generator. Copia l'output e sostituisci le righe corrispondenti nel tuo wp-config.php. Fallo periodicamente, specialmente dopo un incidente di sicurezza.
10. Abilitare gli aggiornamenti automatici per il core
Mantenere aggiornato il core di WordPress è fondamentale. Abilita gli aggiornamenti automatici per le versioni minori e maggiori aggiungendo questo a wp-config.php:
define('WP_AUTO_UPDATE_CORE', true);
Per le versioni maggiori, potresti voler testare prima su un sito di staging, ma non ritardare gli aggiornamenti di sicurezza. Combina questo con controlli manuali regolari per gli aggiornamenti di plugin e temi.
Conclusione
L'hardening manuale è il fondamento di un sito WordPress sicuro. Questi 10 passaggi affrontano vulnerabilità comuni che scanner e plugin spesso trascurano. Implementandoli, riduci la superficie di attacco e ottieni tranquillità. Ricorda che la sicurezza è un processo continuo: rivisita periodicamente queste configurazioni. Per un approccio completo, consulta la nostra guida proattiva all'audit di sicurezza WordPress. Inizia oggi con un passaggio e costruisci da lì. La sicurezza del tuo sito dipende dalle azioni che intraprendi ora.
