Salve a tutti,
vorrei condividere la soluzione ad un attacco SQL Injection che ho subito svariate volte sul mio sito.
Soluzione trovata grazie ad un consiglio di un amico ingegnere informatico.
Avevo precedentemente risolto il problema ma per "metà".
Infatti tramite ricerca col software "Notepad ++" ero riuscito a trovare quale era il codice malevolo che era stato iniettato all'interno di alcuni file del mio sito (ad esempio il file index.php che si trova nella root del server che ospita il sito stesso).
nel mio caso il codice era il seguente:
**********************************************************************************
Facendo una ricerca all'interno dei files più importanti del mio sito avevo eliminato manualmente tale stringa da agni file in sui si presentava, perdendo anche un sacco di tempo.
Credevo di aver ripulito tutto e quindi risolto ed invece il problema si ripresentava. Il sito era anche stato bannato da google con un messaggio di warning per i navigatori. (era un delirio!).
Comunque la soluzione è questa:
Entrare nell'amministrazione del prorio sito Jooma.
Disabilitare tutti i plugin, componenti e moduli che hanno dal lato sito dei form da compilare per gli utenti.
[infatti è tramite i form che vengono inserite delle stringhe di comando che causano i code injection.
I plugin scadenti non effettuano alcun controllo sui dati immessi scrivendo il tutto all'interno del nostro database che poi verrà in qualche modo richiamato successivamente.
Ad esempio se all' interno di un ipotetico campo "nome utente" viene inserito un codice particolare, questo andrà ad inserire direttamente nel database del nostro sito quel codice bastardo noto come SQL Injection!!]
OK. Superato questo passaggio preventivo, la seconda operazione sarà la seguente:
Tramite un qualsiasi software che permette di trasferire file attraverso il protocollo FTP (tipo Filezilla)
copiamo tutti i file e cartelle, che sono nella cartella che si trova sul server remoto che ospita il nostro sito, sul nosto pc locale.
terza fase:
tramite il software "notepad++", facilmente reperibile sul web, effettuare un "CERCA/TROVA NEI FILE..." (che permette di cercare un testo all'interno di tutti i files contenuti in una determinata cartella) selezionando la cartella che ospita tutti i files del sito che abbiamo copiato sul pc locale.
Quindi nel campo Trova inseriamo il codice malevolo che avremo precedentemente scovato molto probabilmente nel file index.php e spuntiamo la voce "solo parole intere".
Ora clicchiamo "Trova tutti".
Se siamo infetti visualizzeremo una sfilza di files infetti con quel codice inserito.
Verificata " l'infezione " procediamo con la medesima operazione ma questa vola anziché cliccare su "Trova tutti" clicchiamo su " Sostituisci nel file" dopo aver inserito uno spazio nel campo "Sostituisci con" .
A questo punto il nostro "simpatico" codice sarà sostituito da un bello spazio vuoto!!
Operazione successiva trasferire (IMPORTANTE!!: sovrascrivendo) tutti i file del nostro sito da locale a remoto sempre tramite software FTP.
Fatto ciò effettuare due operazioni di sicurezza:
cambiare la password sia dell'amministratore di joomla sia del database del nostro sito.
Ultima operazione:
Installiamo il plugin Akeeba Backup( software che permette di effettuare appunto un backup completo sia del sito che del database) sul nostro sito e facciamo appunto il backup.
Effettuato il backup copiamo il file stesso di backup sul nostro pc in locale per avere una copia sicura ed evitare che lo stesso venga sovrascritto da un backup successivo.
PS. Logicamente se pensiamo che i plugin che abbiamo disattivato precedentemente possano essere la causa del problema sostituiamoli con altri plugin più sicuri
FINE
PS.2: Facciamo anche un controllo antivirus sul nostro pc locale.. non si sa mai.. potremmo essere noi stessi gli "untori" del nostro sito!!!
**************************************************
come da suggerimento di
mau_develop Disinstalliamo i componenti o plugin che pensiamo non siano sicuri
e oltre alle password dell'amministrazione e del database cambiamo anche la password FTP e teniamo sempre aggiornato il sito e conseguenti plugin.
sempre su suggerimento di
mau_develop controllare nelle cartelle che contengono immagini che non vi siano file strani (cioè con estensioni di file di tipo non immagine), io per esempio nella cartella del mio sito ho trovato un bel img.php con relativo codice malevolo all'interno, in questo caso ho eliminato tale file.