Devi eseguire una risposta a un incidente, puoi assumere un'azienda come Trustwave, ma suppongo che tu non abbia i fondi per un investimento così grande.
Dato che stai usando un popolare sistema CMS aperto, sarà un obiettivo di attacco. È anche costruito su altri componenti open source, quindi potrebbero esserne influenzati. Naturalmente, ci sono un certo numero di altre vulnerabilità che sono possibili dato un numero qualsiasi di componenti di terze parti, built-in o birra fatta in casa. Puoi trovare un elenco di exploit e bug recenti su Elenco del database NIST CVE di Vulner Typo3 .
Ci sono alcune cose che potrebbero causare una massiccia infezione che sembra indiscriminata. Se le autorizzazioni dei file e delle directory non sono impostate correttamente, o se la proprietà di file e directory non è configurata correttamente, questo potrebbe essere il primo problema. Potrebbero esserci anche alcuni script o software che sono vulnerabili e hanno la capacità di eseguire codice arbitrario, e quindi possono scrivere e aggiungere qualsiasi file trovato. Se ha la capacità di eseguire arbitrariamente i comandi della shell, è facile cercare tutti i file php e iniettare il codice con poche righe di codice.
Un'altra possibilità potrebbe essere un difetto in un altro strumento che stai utilizzando, forse una console di gestione basata sul Web per l'hosting o un'applicazione di supporto come phpMyAdmin o qualche altro codice casuale è vulnerabile.
In ogni caso, il primo posto dove iniziare la tua indagine è esaminando i registri delle attività. Comincerei con i tuoi log di accesso ssh per determinare se qualcuno effettuasse l'accesso direttamente quando non credi di averlo fatto. Successivamente, dovresti controllare i log di accesso al tuo server. Se c'è qualche difetto in qualche applicazione web, probabilmente hanno dovuto impartire un comando contro la tua pagina. Potrebbero aver cercato su Google una determinata stringa di codice HTML in google e il target di tutti i siti che hanno trovato in generale. È così, probabilmente stanno rieseguendo il loro attacco ogni tanto per reinfettarti se non hai trovato il buco. Cercare le voci di registro che sembrano avere SQL injection o XSS. Questo potrebbe essere un processo laborioso, ma se pensi di conoscere il periodo di tempo in cui sei stato colpito, questo dovrebbe aiutare a limitare la tua ricerca.
Un altro controllo è che hai rimosso qualsiasi installazione o altri file che consiglia di rimuovere che potrebbero consentire a un utente malintenzionato di ripristinare i valori predefiniti, ecc. Inoltre, assicurati di utilizzare password solide e univoche. Dopo un attacco, consiglierei sempre di cambiare le password come precauzione.
Infine, ci sono spesso indizi nel codice exploit stesso. Lo hanno infettato per reindirizzare verso un determinato sito, hanno "greetz" o qualcos'altro che potresti essere in grado di google e trovare qualcun altro che parla di un forum? A meno che l'attacco non sia contro il tuo codice personalizzato, è probabile che qualcun altro sia stato colpito in modo simile.