ripristinare Joomla dopo un hack - parte 2

 

Evoluzione degli hacking

In un precedente articolo abbiamo visto come è possibile analizzare un sito che è stato oggetto di un hacking ed effettuarne il ripristino e metterlo in sicurezza.

Rispetto al precedente articolo è aumentato il numero di siti in cui l'intervento dell'hacker non è più dettato da fini di vanità, ma da scopi pratici quali quelli di avere un sito per spedire spam o per redirigere il traffico proveniente dai motori di ricerca a siti terzi. In questi casi, oltre a fare le modifiche atte allo scopo da raggiungere, l'hacker si premura di lasciare un qualcosa che gli permetta di riguadagnare velocemente il controllo del sito quando il suo hack sia stato neutralizzato.

Questo qualcosa è un file php che permette l'esecuzione di comandi remoti e che è nascosto tra le migliaia di files che compongono l'installazione di Joomla!. Ove il server lo consenta, l'hacker si premura di impostare la data di questo o di questi files in modo che coincida con quella dell'installazione originaria del cms o delle estensioni installate in modo da renderlo indistinguibile.

Come spiegato nel citato articolo, quando l'hacker ha sparso cavalli di troia per tutto il sito, è inutile ricaricare il backup o sovrascrivere la versione di Joomla con una versione più recente, o con una versione appena scaricata e quindi sicura, dato che l'operazione ripristinerà il sito solo momentaneamente non andando a sovrascrivere i cavalli di troia. All'hacker basterà richiamare uno di questi per ripristinare il controllo del sito.

Ripristino del sito 'bucato'

Vediamo ora come sia possibile rimettere in sicurezza un sito, in una maniera differente e più drastica rispetto a quella già descritta.

Backup

Come sempre la prima cosa da fare è un backup del sito, tanto dei file che del data base. Scaricate il sito,esportate un dump del db e comprimete il tutto. tenete a portata di ano il sito non compresso, tra poco servirà.

Nuova installazione

Recuperate ora i pacchetti di joomla e di tutte le estensioni che avete sul sito on line, possibilmente nelle stesse versioni e installate tutto su una macchina di test. Se non disponete di un server di test potrete utilizzare una virtual machine oppure, alla peggio, una delle varie soluzioni wamp disponibili in rete.

Sincronizzare i siti

Ora è necesario trasferire i dati del vecchio sito sul nuovo.

Per prima cosa ci occuperemo del data base, che è l'aspetto meno critico del problema. Infatti all'interno del db non può essere inserito niente che danneggi direttamente il nostro sito, possono però essere introdotti, nei testi degli articoli, iframe e javascript che danneggino i visitatori e lo facciano escludere dai motori di ricerca. E' però sufficiente una ricerca nel dump del DB, che è un file di testo, per trovare e correggere questi problemi. Fatto ciò, caricheremo il vecchio file di dump al posto del database appena ottenuto con la nuova installazione appena eseguita.

Ora occupiamoci del file system: qui è necessario procedere con grande attenzione onde evitare di trasferire anche i cavalli di troia. Dobbiamo trasferire le immagini ed i documenti presenti sul vecchio sito nel nuovo. Sicuramente dovremo trasferire il contenuto di /images/stories l'eventuale cartella destinata ai downloads e le immagini eventualmente posizionate all'interno dei componenti (ad esempio le immagini di categorie e prodotti in virtuemart). Nel compiere questa operazione dovremo assicurarci che ogni file sia esattamente del tipo desiderato: non fidatevi delle estensioni ogni file deve essere controllato. Potete usare uno dei vari tool presenti su internet o nei sistemi *nix per effettuare il controllo velocemente, ma controllate con attenzione qualsiasi file individuato come file di testo.

Test di funzionamento

Se tutto è andato come doveva a questo punto avrete una copia funzionante e assolutamente pulita del sito che era stato bucato. Verificate che siano presenti tutte le immagini, i documenti e i download. Nel caso verificate le operazioni indicate nella seconda parte del punto precedente.

Aggiornare il sito

La copia del sito che ora avete ottenuto è sì pulita, ma è la stessa che già vi hanno bucato; pertanto, prima di procedere alla messa on line provvedete ad eseguire tutti gli aggiornamenti disponibili. Su questo stesso sito troverete poi vari consigli relativi alla sicurezza ed un utile plugin per intercettare una notevole parte dei possibili attacchi.

Trasferire in linea

Prima di trasferire la copia ottenuta in linea è necessario cancellare ogni file presente sul filesystem del server di produzione: solo in questo modo si potrà essere sicuri di non aver fatto un lavoro inutile. Ciò fatto trasferite in linea il sito (files e database); ricordatevi di aggiornare il file configuration.php, ma non usate quello vecchio se non dopo attenta verifica del contenuto.

Analisi dell'hack

Ora che il sito è stato ripristinato è necessario verificare di aver chiuso la porta da cui era entrato l'hacker. Teoricamente ciò andrebbe fatto prima di rimettere on line il sito, ma questa operazione è spesso lunga ed i tempi di inattività del sito debbono essere brevi: valutate voi se sia rischiabile il danno di immagine di un sito nuovamente bucato o meno. Sappiate che finché non avrete capito come ha fatto l'hacker a prendere il controllo del sito non potrete essere sicuri che non lo faccia nuovamente.

Hosting

Non è detto che l'hacker sia entrato dal vostro sito, sono noti vari casi in cui il problema è stato riconducibile ad un altro sito ospitato sul medesimo server in hosting condiviso: massima attenzione pertanto a chi vi fornisce il servizio in questione, se si tratta di un sito funzionale alla vostra attività chiedete garanzie non sconti.

Conclusioni

Questo è un metodo alternativo di recupero di un hack che ben si adatta al CMS in questione.Le operazioni qui descritte richiedono una certa competenza quindi procedete con calma, pazienza e molta attenzione.

 

Aggiungi commento

Please note: URL in text are not linked and user's site address is only for internal use and is not published.

Comments are human checked. All spam will be removed, so don't waste your time and, especially, mine!

Codice di sicurezza
Aggiorna