Avete appena scoperto che il vostro sito WordPress è infetto: può essere defacciato, e/o ospitare una o più pagine di phishing, possono essere state inserite centinaia di pagine “pirata” di un falso sito di ecommerce, o vi potrebbe esser arrivata la notifica dell’invio dallo stesso di email di spam.... indifferente, i sintomi possono essere i più vari.
Cosa fare adesso?
Per prima cosa, effettuate un backup completo del sito infetto, salvatelo su un DVD, etichettatelo specificando anche la data, e riponetelo in un cassetto.
Perché conservare il backup su un DVD? Non posso salvarlo semplicemente in una partizione del disco del mio PC, o su uno storage in cloud? No, non è prudente farlo, perché ancora non avete la minima idea di cosa possa esser stato inserito nel vostro sito infetto, ed è possibile che ci siano dei contenuti che non sarebbe per nulla igienico conservare sul proprio PC: virus, spyware, ma anche contenuti pedopornografici… Inoltre, se lo mantenete per es. sul vostro PC, è possibile che le normali scansioni antivirus (che voi sicuramente effettuate) facciano il loro sporco lavoro, individuino nel vostro backup i contenuti infetti e li vadano quindi a cancellare. |
A questo punto, se disponete di un backup del vostro sito, l’operazione è (relativamente) semplice:
- cancellate tutti i contenuti attuali (sia file che database)
- ripristinateli dal vostro backup
NOTA: se disponete di diversi set di backup, cercate di utilizzare sempre quello meno recente; per ipotesi, se disponete di un backup di sei mesi prima, e nel frattempo al sito non sono state effettuate modifiche importanti, allora è quello il backup migliore da usare.
Questo perché alcune infezioni possono restare latenti per settimane/messi prima di manifestarsi, e quindi è possibile che il backup effettuato dieci giorni prima sia in realtà già infetto. - cambiate tutte le password degli amministratori
- cambiate la password del database mysql (nota: dopo averlo fatto, ricordatevi anche di aggiornarla nel file wp-config.php
- cambiate le saltkey nel file wp-config.php
- procedete a mettere in sicurezza il vostro sito:
- aggiornando WordPress all’ultima versione
- aggiornando tutti i plugin all’ultima versione
- aggiornando il tema all’ultima versione
- disabilitando e cancellando ogni plugin non effettivamente utilizzato
- disabilitando e cancellando ogni tema non utilizzato (compresi i temi standard di WordPress)
- installando dei plugin di sicurezza e configurandoli in maniera il più possibile restrittiva
Nota: esistono parecchi plugin “di sicurezza”, ognuno dei quali ha le proprie particolarità; non è sempre possibile installarne più di uno, perché spesso interferiscono uno con l’altro. Una buona coppia di plugin, che è possibile utilizzare “in tandem”, è costituita da Sucuri Security ed iThemes Security. - a meno che non vi sia strettamente necessario, attraverso uno dei plugin di sicurezza (oppure, meglio, in maniera manuale) disabilitate XMLRPC.
- per i prossimi due o tre mesi, monitorate il vostro sito con estrema attenzione (a tale scopo vi saranno di prezioso aiuto i plugin di sicurezza)
E se invece non disponete di un backup?
Se non disponete di un backup allora la situazione è molto più complicata, e ripristinare il vostro sito vi sarà molto più difficile.
Per prima cosa, valutate se affidarvi ad un professionista con una preparazione specifica. Il costo non sarà contenuto (anche le operazioni di bonifica più semplici richiedono competenze, tempo e pazienza... ), ma si tratta di operazioni che non lasciano molto spazio all'improvvisazione.
Vi segnaliamo a questo proposito il servizio di bonifica offerto da Sucuri che, ad un costo contenuto, è in grado di risolvere egregiamente ed efficacemente infezioni non particolarmente gravi.
Se invece decidete di provare ad effettuare l’operazione da soli, l’operazione sarà sicuramente più complessa ed impegnativa; accenniamo qui di seguito solo una scaletta delle operazioni fondamentali da eseguire:, senza fornire specifiche istruzioni di dettaglio. Questo genere di operazioni presuppone che l’operatore sia in possesso di un livello di conoscenza ed esperienza adeguato:
- cancellate tutti i contenuti evidentemente infetti
Potranno essere singoli file nella root, come pure nascosti in sub-sub-sub-sub-directory delle quali, pur essendo perfettamente “legittime”, neppure sospettavate l’esistenza. Oppure possono essere intere directory “pirata”, create dall’infezione.
In linea di principio: - file e directory modificati di recente sono estremamente sospetti, e quasi sicuramente infetti
- ma anche file e directory dei quali la data di creazione o ultima modifica risulti non essere recente possono essere sospetti, in quanto spesso la data ne viene artificialmente alterata in modo da “mimetizzarli” (una volta è capitato di trovare, all’interno di un sito WordPress creato da appena tre mesi, dei file che risultavano apparentemente esser stati creati quasi un anno prima… ovviamente si trattava di contenuti infetti, la cui data era stata artificialmente modificata dal software che li aveva iniettati)
- prendete nota di tutti i plugin installati, e cancellatene le relative directory
Questo perché si farà prima a reinstallarli ex-novo che non a verificarli, bonificarli ed aggiornarli - cancellate tutti i temi di WordPress non utilizzati
- cercate di accedere all’interfaccia amministrativa di WordPress; quasi sicuramente non ci riuscirete, perché una delle prime conseguenze di una qualsiasi infezione è quella di modificare le credenziali di accesso di tutti gli utenti con privilegi di amministrazione (e talvolta addirittura di tutti gli utenti…)
Potete intervenire reimpostando la password degli amministratori da phpMyAdmin - usando phpMyAdmin verificate la situazione degli utenti con privilegi di amministrazione nella tabella wp_users: è possibile che l’infezione non solo abbia modificato le credenziali degli amministratori esistenti, ma anche che ne abbia creato di nuovi, oppure abbia modificato le credenziali ed il profilo di altri utenti rendendoli amministratori.
Cancellate quelli che non riconoscete e reimpostate le credenziali di accesso degli altri - Accedete all’interfaccia amministrativa di WordPress, e dalla pagina degli aggiornamenti prima effettuate l’aggiornamento di WordPress (se necessario) e poi reinstallatelo completamente tramite la funzione “reinstallare ora”
(Questa funzione riscriverà completamente tutti i file del core di WordPress, compresi alcuni che potrebbero esser non stati modificati dall’aggiornamento, e quindi essere tuttora infetti). - verificate tutti i file presenti nel sito; a questo punto, ogni file presente nel sito che non risulti appena creato è da ritenersi “sospetto”, e va indagato manualmente (compresi i file della directory /wp-content/uploads : per lo più si tratterà di immagini, caricate sul sito nel corso del tempo, ma in mezzo a queste potrebbero essere mimetizzati altri file infetti di vario tipo)
- reinstallate e riconfigurate tutti i plugin
Nota: utilizzate solo ed esclusivamente plugin scaricati dal repository ufficiale di WordPress oppure direttamente dal sito del produttore.
Qualsiasi plugin scaricato da altre fonti (compresi i famigerati plugin “nulled”) è quasi sicuramente infetto o portatore di una qualche vulnerabilità. - effettuate uno scan antivirus/antimalware di tutto il sito, utilizzando almeno due prodotti differenti
- mettete in sicurezza il vostro sito, come in precedenza descritto, e monitoratelo con ancor maggiore attenzione.
Quanto sopra esposto parte dal presupposto che ad essere infetti siano solo i file, e non il database. Fortunatamente, la maggior parte delle infezioni infatti coinvolge solo i file, lasciando il database praticamente intatto.
Se però fosse compromesso anche il database, le operazioni di scansione e bonifica sarebbero ancor più complesse.
Se avete bisogno di assistenza specifica nella bonifica o messa in sicurezza del vostro sito WordPress, contattate liberamente il nostro servizio di assistenza.