Il tuo sito WordPress è stato hackerato.
Lo pulisco, chiudo la porta da cui sono entrati e ti scrivo per esteso cosa ho trovato. Costa 500 euro, prezzo chiuso, e la persona che ci lavora sono io.
500 euro
prezzo chiuso, un sito
Appena mandi il modulo ti arriva una email con le tre cose da fare mentre aspetti, quelle qui sotto. Sono poche, si fanno da soli e non richiedono di sapere niente di tecnico.
Poi ti scrivo io, dopo aver guardato il sito da fuori. I lavori li prendo in ordine di arrivo. Se il tuo ha una scadenza che non può aspettare scrivimelo subito, e vediamo come farlo passare avanti.
Tre cose, mentre aspetti.
Le puoi fare da solo, anche se non sei una persona tecnica, e sono le tre che evitano di peggiorare la situazione prima che ci metta mano io.
- 01
Metti il sito in manutenzione
Se il pannello dell'hosting ha una voce per mettere lo spazio in manutenzione, usala, e se non la trovi chiedila al supporto. Va bene anche una pagina di cortesia. Serve a due cose, cioè non far arrivare altri visitatori su una pagina che li può danneggiare, e non far peggiorare la posizione su Google mentre il sito mostra contenuti che non sono tuoi.
- 02
Cambia le password, tutte
Amministratore di WordPress, pannello dell'hosting, FTP e le caselle di posta del dominio. Quella del database lasciala a me, perché cambiarla senza toccare anche un file del sito lo spegne. Se la stessa password la usi altrove, cambiala anche lì. Da sola non risolve niente, perché chi è entrato di solito ha lasciato un'altra via, ma toglie la più comoda.
- 03
Fatti dare dall'hosting l'ultimo backup, e non ripristinarlo
Chiedi al supporto quali copie ha e di che data, e falle mettere da parte prima che scadano, perché molti hosting le tengono per pochi giorni. Ripristinare adesso è la mossa sbagliata, ed è quella che rovina di più il lavoro. Spesso il sito era già compromesso quando quella copia è stata fatta, quindi il ripristino riporta indietro il contenuto e riporta indietro anche quello che ci hanno messo dentro, cancellando le tracce che servivano a capire da dove sono entrati.
Le mosse che costano care.
Non ripristinare un backup. È la prima cosa che viene in mente e quasi sempre è la peggiore. Di solito, quando qualcuno se ne accorge, il sito è compromesso da un pezzo, quindi la copia di ieri contiene già tutto, e una copia più vecchia ti fa perdere quello che hai pubblicato da allora senza dirti se era pulita. In più cancella una parte delle tracce che servono a capire da dove sono entrati.
Non cancellare file a caso e non reinstallare il tema. I file di WordPress si possono rimettere identici in qualsiasi momento, ma quelli del tema e dei plugin possono contenere le tue personalizzazioni, e quelle fatte nei file non stanno da nessun'altra parte. Cancellati quelli, senza una copia le personalizzazioni non tornano.
Non cambiare hosting adesso. Portare un sito compromesso da un'altra parte sposta il problema e basta, perché quello che c'è dentro viaggia insieme ai file. Prima si pulisce, poi se il posto era sbagliato lo si cambia con calma.
Non chiedere a Google di togliere l'avviso finché il sito è sporco. Una richiesta mandata troppo presto allunga i tempi di quelle dopo. Si chiede quando il sito è davvero pulito, e se ne hai già mandata una si aspetta l'esito.
I segni che lo dicono davvero.
Se non sei sicuro che sia successo, questi sono i cinque segni che si vedono più spesso. Se ne riconosci uno, vale la pena guardare.
- 01
Google ha messo un avviso sul tuo sito
Nei risultati compare la scritta "Questo sito potrebbe essere compromesso", oppure il browser mette una schermata rossa prima di aprirlo. È il segno che si nota per primo, perché arriva insieme al crollo delle visite.
- 02
Il sito porta i visitatori da un'altra parte
Tu lo apri e sembra normale, ma chi arriva da Google finisce su una pagina che non è tua. Spesso succede solo da telefono, o solo la prima volta, perché chi è entrato ha lasciato una regola che riconosce chi sta guardando. È il motivo per cui di solito te lo segnala un cliente prima che te ne accorga tu.
- 03
Sono comparse pagine che non hai scritto tu
Decine o centinaia di pagine, di solito con caratteri giapponesi o con nomi di farmaci, che nel pannello di WordPress non si vedono. Le trovi cercando il tuo dominio su Google. Servono a chi è entrato per vendere qualcosa usando il credito che il tuo sito si è fatto negli anni.
- 04
L'hosting ti ha scritto, o ha sospeso lo spazio
Quasi sempre per invio di posta indesiderata partita dal tuo spazio, o per un consumo di risorse fuori misura. Se lo spazio è stato sospeso il sito è già offline, e la posta del tuo dominio potrebbe essere finita in una lista nera, che è un secondo problema da risolvere a parte.
- 05
Ci sono utenti amministratori che non hai creato
Nomi che non conosci con i permessi più alti, oppure il tuo utente che all'improvviso non entra più. Se li cancelli e il giorno dopo tornano, vuol dire che c'è del codice che li ricrea, ed è il segno che il problema non è l'utente.
Prima capire, poi pulire.
Comincio dalla copia di tutto, file e database, in modo che si possa sempre tornare indietro. Poi confronto i file del sito con le versioni originali di WordPress, del tema e dei plugin, che è il modo per vedere in fretta cosa è stato aggiunto o modificato e cosa invece è al suo posto.
La parte che richiede più tempo non è togliere il codice, è trovare tutto quello che è stato lasciato indietro. Chi entra in un sito quasi sempre si prepara una seconda porta, un file dall'aria innocua in una cartella dove nessuno guarda, una riga dentro un plugin vero, un'operazione programmata che rimette dentro tutto dopo che tu hai pulito. Se ne resta anche solo una, il sito torna sporco.
Poi guardo da dove sono entrati, usando i log degli accessi, le date dei file e le versioni di quello che era installato. È la parte che decide se il sito resta pulito. Non sempre le tracce bastano, perché su certi hosting i log durano pochi giorni, e quando è così te lo scrivo. Alla fine rimetto i file originali tenendo da parte le personalizzazioni che erano nel tema, tolgo quello che era stato messo nel database, elimino gli utenti che non ci devono essere, aggiorno tutto, rigenero le chiavi di sicurezza e sistemo i permessi.
Se il sito era segnalato da Google, la revisione la chiedo io quando è pulito. E ti mando una pagina scritta in parole semplici con cosa ho trovato, da dove sono entrati quando le tracce bastano a dirlo, e cosa conviene tenere d'occhio, che è la parte che ti resta anche se un domani il sito lo segue un altro.
Il perimetro, detto prima.
Dentro i 500 euro ci sono queste cose:
- Un sito, una installazione di WordPress, un hosting.
- La copia di sicurezza di file e database prima di toccare qualsiasi cosa.
- La pulizia dei file e del database, e la rimozione delle vie di ingresso lasciate aperte.
- Aggiornamenti di WordPress, tema e plugin, e le chiavi di sicurezza rigenerate.
- La richiesta di revisione a Google, se il sito era segnalato.
- Una pagina scritta in parole semplici con cosa ho trovato e da dove sono entrati, quando le tracce bastano a dirlo.
- Trenta giorni di garanzia. Se il sito torna sporco, torno e non paghi di nuovo, anche se non si era capito da dove erano entrati.
E queste invece restano fuori:
- Il rifacimento del sito, se quello che trovo dice che va rifatto. È un lavoro a parte e si quota dopo.
- La pulizia di altre installazioni sullo stesso spazio, che si quota a parte.
- Il recupero della reputazione della posta, se il dominio era finito in una lista nera.
- La cura del sito nel tempo, che è una cosa a sé e si decide dopo, a mente fredda.
Un lavoro come questo non si può misurare del tutto prima di aprirlo. Può succedere che sullo stesso spazio ci siano tre siti e siano compromessi tutti, che l'hosting sia il punto di ingresso e non il tuo sito, o che il sito non stia nel perimetro che hai appena letto.
In quel caso mi fermo e te lo dico, con quello che ho visto e quanto costa andare avanti. Decidi tu. Se non prosegui, quello che hai pagato copre il lavoro fatto fino a lì, cioè la copia di sicurezza e la pagina con quello che ho visto. Il resto te lo restituisco.
Le chiavi, e come me le dai.
Mi serve l'accesso al pannello dell'hosting, oppure FTP o SFTP più il database, e un utente amministratore di WordPress. Se Google ha segnalato il sito serve anche Search Console, e per quella basta che tu mi aggiunga come utente con accesso completo, senza darmi la password del tuo account Google.
Le password non me le mandi per email o in chat. Il modo più semplice è che tu mi crei un accesso apposta, che a lavoro finito cancelli in dieci secondi. Se non è possibile ci sentiamo e me le detti a voce. In tutti e due i casi le password le cambi tu quando ho finito.
Il lavoro si paga prima di cominciare, con bonifico o con un link di pagamento.
Quello che mi chiedono prima.
Su un sito normale il lavoro è di mezza giornata, a volte di una giornata. Quello che allunga i tempi non è la pulizia, sono le attese, cioè il supporto dell'hosting che risponde il giorno dopo, o le credenziali che arrivano a pezzi. La revisione di Google, se il sito era segnalato, ha tempi suoi, di solito qualche giorno e a volte di più, e non dipende da me.
Sì, da quando lo mettiamo in manutenzione a quando è pulito, ed è meglio così. Se il sito sta portando i visitatori altrove o Google lo ha segnalato, tenerlo online fa danno a te e a chi ci arriva. Al posto del sito metto una pagina di cortesia, così chi passa legge che torna a breve invece di finire su una pagina che non è tua. L'avviso di Google invece resta finché la revisione non passa, e la revisione si chiede a sito pulito.
No, e la prima cosa che faccio è la copia di tutto, file e database, prima di toccare qualsiasi cosa. Quello che tolgo è quello che ha messo dentro chi è entrato. Se una pagina tua era stata modificata provo a rimetterla com'era, e se non c'è modo te lo dico.
Nella grande maggioranza dei casi da un plugin o da un tema con una falla nota, lasciato senza aggiornamenti. Poi ci sono le password deboli provate a tappeto, i temi o i plugin scaricati da siti che li regalano con dentro qualcosa in più, e più di rado l'hosting condiviso dove il vicino compromesso arriva anche da te. Da dove sono entrati nel tuo caso lo scrivo nella pagina finale, con la data quando i log la conservano. Se la via di ingresso resta aperta, la pulizia dura fino alla prossima volta.
Sì, e su un caso semplice a volte basta. Prima di fargli togliere qualcosa però fatti dare dall'hosting una copia di file e database, così non sparisce niente che dopo serve. Un plugin di scansione trova i file malevoli più comuni e ti aiuta a toglierli, e se il sito torna a posto e non ricapita hai risolto spendendo zero. Dove quegli strumenti fanno più fatica è il codice nascosto dentro il database e le vie di ingresso lasciate aperte, che non hanno l'aspetto di un file infetto. Se lo hai già provato e il sito è tornato sporco dopo qualche giorno, il problema è quello.
Il pannello dell'hosting, oppure FTP o SFTP più il database, e un utente amministratore di WordPress. Se Google ha segnalato il sito serve anche Search Console, e per quella basta che tu mi aggiunga come utente con accesso completo. Le password non me le mandi per email o in chat. O mi crei un accesso apposta, che poi cancelli, oppure ci sentiamo e me le detti a voce. In tutti e due i casi le password le cambi tu a lavoro finito.
Per trenta giorni, se il sito torna sporco, torno e non paghi di nuovo. Vale anche se le tracce non bastavano a dire da dove erano entrati. Restano fuori le cause nuove, per esempio un plugin che installi dopo o un computer con un programma malevolo che ruba le password mentre le scrivi. In quel caso è un lavoro nuovo e te lo dico.
A sito pulito, a volte viene fuori che c'era anche un altro problema, cioè che quel sito sta reggendo un pezzo di lavoro per cui non è fatto, come gli ordini, i preventivi o i dati dei clienti tenuti insieme a mano. Se è il tuo caso ne parliamo con calma dopo, e costruire quella parte è il mio mestiere di tutti i giorni. Prima però si rimette in piedi il sito.
Scrivimi l'indirizzo del sito, chi è l'hosting e cosa vedi, anche solo tre righe. Ti rispondo io, e nel frattempo hai già le tre cose da fare.