Ripulisci e gestisci il sito

Per mantenere il sito pulito ed evitare future violazioni, ti serviranno quanto segue:

  • Accesso come amministratore di shell o di terminale ai server del tuo sito: web, database, file
  • Conoscenza dei comandi della shell o del terminale
  • Conoscenza del codice (come PHP o JavaScript)
  • Spazio di archiviazione per creare backup del tuo sito, inclusi file, database e immagini

Azioni successive

In questo passaggio verranno trattati diversi argomenti:

  • Dove individuare risorse aggiuntive se ritieni che l'hacker abbia intenzione di ottenere le informazioni personali degli utenti (ad esempio, con le pagine di phishing).
  • L'opzione per utilizzare l'opzione Rimuovi URL in Search Console per velocizzare la rimozione di URL indesiderati creati dall'hacker come completamente nuovi, visibili agli utenti, che non vuoi che vengano mostrati nei risultati della Ricerca Google.
  • L'opzione per chiedere a Google di ripetere la scansione degli URL in Search Console per velocizzare l'elaborazione da parte di Google delle pagine pulite, ovvero quelle nuove o aggiornate di recente, che vuoi visualizzare nei risultati della Ricerca Google.
  • Installazione della versione più recente e sicura del software.
  • Rimozione di applicazioni o plug-in non necessari o inutilizzati che potrebbero rendere il tuo sito più vulnerabile in futuro.
  • Ripristino dei contenuti validi ed eliminazione dei contenuti dell'hacker.
  • Correzione della vulnerabilità della causa principale sfruttata dall'hacker.
  • Modifica di tutte le password.
  • Hai intenzione di mantenere il tuo sito sicuro.

1. Individua risorse di assistenza

Se dal tuo sito hai ottenuto informazioni riservate degli utenti (ad esempio perché è stato effettuato un attacco di phishing), ti consigliamo di prendere in considerazione le eventuali responsabilità aziendali, normative o legali prima di iniziare a ripulire il sito o eliminare eventuali file. Nei casi di phishing, antiphishing.org offre risorse utili come, ad esempio, il documento Cosa fare se il tuo sito è stato compromesso dai phisher.

2. Valuta l'ipotesi di accelerare la rimozione degli URL creati dall'hacker

Se l'hacker ha creato URL completamente nuovi e visibili agli utenti, puoi rimuovere più rapidamente queste pagine dai risultati della Ricerca Google utilizzando la funzionalità Rimuovi URL in Search Console. Questo passaggio è facoltativo. Se elimini le pagine e configuri il server in modo che restituisca un codice di stato 404, con il passare del tempo le pagine verranno gradualmente escluse dall'indice di Google.

  • La decisione di utilizzare la rimozione degli URL dipenderà probabilmente dal numero di nuove pagine indesiderate create (troppe pagine potrebbero essere ingombranti da includere nella pagina Rimuovi URL), nonché dal potenziale danno che queste pagine potrebbero causare agli utenti. Per evitare che le pagine inviate tramite la funzione di rimozione degli URL vengano visualizzate nei risultati di ricerca, assicurati che anche le pagine siano configurate in modo da restituire una risposta 404 "File non trovato" per gli URL indesiderati e rimossi.
  • Non utilizzare questo strumento per richiedere la rimozione di pagine precedentemente non in regola e che sono state solo danneggiate dall'hacker. È consigliabile che queste pagine vengano visualizzate nei risultati di ricerca dopo il processo di pulizia. La funzione Rimozione URL è indicata solo per le pagine che non desideri mai più visualizzare nei risultati.

3. Valuta l'ipotesi di accelerare l'elaborazione delle pagine pulite da parte di Google

Se disponi di pagine pulite nuove o aggiornate, puoi chiedere a Google di ripetere la scansione degli URL in Search Console per inviare queste pagine all'indice di Google. Questa operazione è facoltativa; se ignori questo passaggio, è probabile che le pagine nuove o modificate vengano sottoposte a scansione ed elaborate nel tempo.

4. Avvia la pulizia del/i server.

A questo punto, puoi iniziare a pulire il sito in base agli appunti che hai preso durante Valuta il danno e Identifica la vulnerabilità. Il percorso da eseguire in questo passaggio dipende dal tipo di backup a tua disposizione:

  • Copia di backup pulita e aggiornata
  • Copia di backup pulita, ma obsoleta
  • Nessuna copia di backup disponibile

Innanzitutto, verifica che la copia di backup sia stata creata prima che il tuo sito fosse compromesso.

Copia di backup pulita e aggiornata

  1. Ripristina la copia di backup.
  2. Installa eventuali upgrade, aggiornamenti o patch disponibili per il software Sono inclusi il software per il sistema operativo (se controlli il server) e tutte le applicazioni, come il sistema di gestione dei contenuti, la piattaforma di e-commerce, i plug-in o i modelli.
  3. Potresti rimuovere dal server il software che il sito non utilizza più (ad esempio, widget, plug-in o applicazioni) .
  4. Correggi la vulnerabilità.
  5. Assicurati che tutti i problemi rilevati durante il passaggio Valuta il danno siano stati risolti.
  6. Modifica un'altra volta le password per tutti gli account correlati al sito (ad esempio, gli accessi per l'accesso FTP, l'accesso al database, gli amministratori di sistema e gli account CMS). Nei sistemi basati su Unix:
passwd admin1

Copia di backup pulita, ma obsoleta

  1. Crea un'immagine disco del tuo sito attuale anche se è ancora infetto. Questa copia è solo per sicurezza. Contrassegna la copia come infetta per distinguerla dalle altre. In un sistema basato su Unix, l'immagine del disco creata potrebbe essere:
dd if=/dev/sda bs=1024 conv=noerror,sync | gzip -c -9 \
> /mirror/full-backup-20120125-infected.gz
  1. Crea una copia di backup del file system del server, inclusi immagini e file multimediali. Se disponi di un database, esegui il backup anche del database.
tar -pczf full-backup-20120125-infected.tar.gz www/
mysqldump -u root -p --all-databases | gzip -9 \
> fulldb_backup-20120125-infected.sql
  1. Ripristina la copia di backup pulita ma obsoleta sul server.
  2. Valuta se è possibile eliminare software dal tuo server (ad es. widget, plug-in o applicazioni) che il sito non utilizza più.
  3. Esegui l'upgrade di tutto il software, incluso il sistema operativo (se controlli il server) e di tutte le applicazioni software, come sistema di gestione dei contenuti, piattaforma di e-commerce, plug-in e modelli. Assicurati di controllare e installare gli aggiornamenti e le patch di sicurezza disponibili.
  4. Correggi la vulnerabilità.
  5. Esegui un diff sito in modo manuale o automatico, tra la copia di backup pulita e la copia infetta corrente.
diff -qr www/ backups/full-backup-20120124/
  1. Carica nuovi contenuti puliti che vuoi conservare dalla copia infetta sul server aggiornato.
rsync -avz /backups/full-backup-20120124/www/clean-file.jpg /www/
  1. Verifica che ogni URL indicato nella sezione Valuta il danno sia stato corretto.
  2. Cambia di nuovo le password di tutti gli account correlati al sito (ad esempio, gli accessi per l'accesso FTP, l'accesso al database, gli amministratori di sistema e gli account CMS). Nei sistemi basati su Unix:
$passwd admin1

Nessuna copia di backup disponibile

Esegui due copie di backup del tuo sito anche se è ancora infetto. Avere un backup in più ti aiuterà a recuperare i contenuti eliminati per errore o ti consentirà di ripristinare i dati e riprovare in caso di problemi. Contrassegna ogni copia di backup come "infetta" come riferimento per il futuro.

Una delle copie di backup sarà un'immagine del disco o "versione clone" del tuo sito. Questo formato semplifica ulteriormente il ripristino di contenuti. Puoi lasciare da parte l'immagine del disco per un'emergenza. In un sistema basato su Unix, utilizza il seguente codice per creare un'immagine disco:

dd if=/dev/sda bs=1024 conv=noerror,sync | gzip -c -9 \
> /mirror/full-backup-20120125-infected.gz

L'altro backup sarà una copia del file system del server, che include immagini e file multimediali. Se hai un database, esegui anche il backup del database.

tar -pczf full-backup-20120125-infected.tar.gz www/
mysqldump -u root -p --all-databases | gzip -9 \
> fulldb_backup-20120125-infected.sql

Se non disponi di un'immagine disco, esegui due backup del database e due backup del file system.

Per ripulire i contenuti del sito nella nuova copia del file system di backup (non nel server stesso):

  1. Se dalla tua indagine precedente hai riscontrato autorizzazioni per i file troppo permissive, procedi a correggerle. Assicurati di eseguire questa operazione sulla copia di backup, non sul server stesso.
  2. Inoltre, nella copia di backup, pulisci tutti i file corrispondenti agli URL individuati come compromessi al passaggio Valuta il danno. Potrebbe trattarsi di file di configurazione del server, JavaScript, HTML o PHP.
  3. Assicurati di rimuovere anche (invio di una risposta 404) per i nuovi file creati dall'hacker, che potresti aver o meno inviato utilizzando lo strumento per la rimozione degli URL in Search Console.
  4. Correggi la vulnerabilità, se presente nel tuo codice o nelle password decifrate. Le librerie di convalida dell'input o le verifiche di sicurezza possono essere utili.
  5. Se il sito ha un database, inizia a ripulire i record modificati dall'hacker nel backup. Poco prima di pensare di aver finito, esegui un controllo su più record per assicurarti che il database sembri pulito.
  6. Modifica un'altra volta le password di tutti gli account correlati al sito (ad esempio, gli accessi per l'accesso FTP, l'accesso al database, gli amministratori di sistema e gli account CMS). Nei sistemi basati su Unix, utilizza il seguente codice:
$passwd admin1

A questo punto, la copia di backup del tuo sito precedentemente infetta dovrebbe contenere solo dati puliti. Conserva questa copia pulita e procedi con l'operazione numero 5.

5. Rimuovi il software non necessario

Valuta se puoi rimuovere software presenti sul server, ad esempio widget, plug-in o applicazioni, che il sito non utilizza più. Ciò può aumentare la sicurezza e semplificare la manutenzione futura.

6. Ripulisci tutti i server

  1. Esegui una nuova installazione, anziché solo un upgrade. Gli upgrade possono lasciare file da una versione precedente. Se un file infetto rimane sul server, è più probabile che il sito venga compromesso di nuovo.
    • La nuova installazione dovrebbe includere il sistema operativo (se controlli il server) e tutte le applicazioni software, come il sistema di gestione dei contenuti, la piattaforma di e-commerce, i plug-in e i modelli. Assicurati di verificare la disponibilità di aggiornamenti e patch di sicurezza.
  2. Trasferisci i contenuti in regola dalla copia del file system di backup pulita ai server appena installati. Caricare e ripristinare solo database o file puliti noti. Assicurati di mantenere le autorizzazioni appropriate per i file e di non sovrascrivere i file di sistema appena installati.
  3. Esegui un'ultima modifica delle password di tutti gli account correlati al sito (ad esempio, gli accessi per l'accesso FTP, l'accesso al database, gli amministratori di sistema e gli account CMS). Nei sistemi basati su Unix, utilizza il seguente codice:
passwd admin1

7. Crea un piano di manutenzione a lungo termine

Ti consigliamo vivamente di procedere come segue:

  • Esegui regolarmente una copia automatica di backup del sito.
  • Preoccupati di mantenere sempre aggiornato il software.
  • Comprendi le prassi di sicurezza di tutte le applicazioni, tutti i plug-in e altri software di terze parti prima di installarli sul tuo server. Una vulnerabilità della sicurezza di un'applicazione software può influire sulla sicurezza dell'intero sito.
  • Richiedi la creazione di password complesse.
  • Mantieni sicuri tutti i dispositivi utilizzati per accedere alla macchina (sistema operativo e browser aggiornati).

8. Verifica il completamento della pulizia

Assicurati che la risposta alle seguenti domande sia sempre "sì":

  • Ho adottato le misure appropriate nel caso in cui l'hacker abbia ottenuto le informazioni personali degli utenti?
  • Il mio sito esegue la versione del software più recente e sicura?
  • Ho rimosso tutte le applicazioni o i plug-in non necessari o inutilizzati che potrebbero rendere il mio sito più vulnerabile in futuro?
  • Ho ripristinato i miei contenuti ed eliminato quelli dell'hacker?
  • Ho risolto l'origine principale della vulnerabilità che ha reso possibile la violazione del mio sito?
  • Dispongo di un piano per mantenere sicuro il mio sito?

Ora puoi riportare il sito online.