Win32/Conficker.B e varianti

Gioxx  —  19/01/2009 — 28 Comments

Non sono ancora sparito dalla circolazione, ci sto andando particolarmente vicino durante questi giorni. Perché? Tutto sotto lo stesso nome con qualche piccola variazione di lettere: W32/Conficker.A o W32/Conficker.B o ancora W32/Downadup e W32/Downadup.B.

Rogna nata a Dicembre 2008, nettamente peggiorata a gennaio 2009, tutto basato sulla enorme vulnerabilità Microsoft descritta dal bollettino di sicurezza MS08-67. Qualcosa come 3000 e più PC di clienti aziendali (seguiti direttamente o indirettamente) sono finiti nella trappola dell’ormai superato “Conficker.A” che sta evolvendosi ora nella variante .B sempre più complessa e difficile da sconfiggere.

Costantemente in contatto con i laboratori Sophos ed un dipendente TrendMicro si affronta, ora dopo ora, un codice poliformico scritto davvero bene, in grado di inginocchiare le difese di una rete LAN sicura o insicura indistintamente, sfruttando quel punto remoto dimenticato da Dio. Entrato grazie alla falla del bollettino sopra descritto è in grado di diffondersi effettuando un brute-force sulle cartelle condivise in rete, provando password già dichiarate da Sophos fino a scoprirle, per poi replicarsi attraverso file *.ini di autorun e processi schedulati nelle Operazioni Pianificate di Windows, chiaramente spegnendo il servizio Server e inibendo l’ingresso a siti web che potrebbero “metterlo in pericolo“.

Chi è Conficker?

Se quello che vi ho sommariamente descritto sopra non basta, vi propongo il testo redatto da Feliciano Intini, CSA di Microsoft Italia, che seguo costantemente attraverso il suo blog (e grazie al quale riesco a tenermi costantemente informato sull’evoluzione di quest’infezione):

Il problema è che questa nuova variante del worm non solo tenta la propagazione sfruttando i sistemi non ancora aggiornati con la patch MS08-067, ma tenta di replicarsi utilizzando password deboli delle utenze amministrative. Questo tipo di dinamica sta provocando due effetti collaterali significativi: il tentativo massiccio (migliaia di tentativi) di indovinare la password con questo dictionary attack può causare delle serie congestioni di rete (e quindi a catena un collasso della connettività di rete) e un vero e proprio DoS verso i sistemi di autenticazione che utilizzano l’account lockout (ossia il blocco dell’utenza dopo un certo numero di password errate). In seguito a queste considerazioni, invito gli amministratori di sicurezza (gli utenti finali non sono interessati, se aggiornati con la patch, come dovrebbero, e se al riparo dietro un firewall di rete non aperto alle share) a rivedere il livello di aggiornamento dei loro sistemi rispetto alla patch MS08-067 e il livello di robustezza delle password amministrative di rete come indicato dal link che vi ho proposto. A partire da ieri, dopo la scoperta da parte del nostro MMPC, tutti i maggiori vendor antivirus stanno aggiornando le loro firme per permettere il rilevamento di questa nuova variante.

blogs.technet.com/feliciano_intini/archive/2008/12/31/auguri-col-worm-la-variante-conficker-b-in-circolazione-in-italia.aspx

Si tratta di un lavoro assolutamente fantastico, lasciatemelo dire. Chi ha progettato e realizzato il codice di cotanto caos è preparato ed estremamente sadico nel ricercare la perfezione di un codice in grado di sopravvivere ed essere difficilmente abbattuto in via definitiva. In ufficio non si fa altro che lavorare da giorni per cercare di arginare i danni e chiudere qualsiasi “porta di servizio” possa essere sfruttata per continuare a danneggiare i PC in lan. Non basta avere un team di sistemisti Microsoft che cura l’Active Directory di un importante cliente e marchio italiano molto conosciuto (non posso fare nomi ovviamente), sono stati colti di sorpresa anche loro.

L’infezione nello specifico

Pubblico parte delle informazioni disponibili a tutti gli utenti nella scheda di analisi Mal/Conficker-A su Sophos.com:

Mal/Conficker-A is a worm for the Windows platform.
Mal/Conficker-A may spreads through Windows file shares protected with weak passwords, by copying itself to removable storage devices and by exploiting the MS08-067 Windows Server service vulnerability.

Mal/Conficker-A will attempt to copy itself to the following location:
<System>\<random filename>
(e.g. C:\windows\system32\zdtnx.g)

This file is set up to run as a service, also using a random name, when Windows starts. Mal/Conficker-A modifies permissions on the service registry entries so that they are not visible to the user.

The registry entries added by Mal/Confiker-A are under:
HKLM\SYSTEM\CurrentControlSet\Services\<random service name>

The random service name will also be added to the list of services referenced by:
HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\SvcHost\netsvcs

When spreading to removable media Mal/Conficker-A attempts to create the following hidden files:
<Removable Drive Root>\autorun.inf
<Removable Drive Root>\RECYCLER\S-x-x-x-xxx-xxx-xxx-x\<Random Letters>.dll (where x represents a random digit)

L’analisi continua per pagine, potete dare anche voi una occhiata.

Risoluzione & Materiale da scaricare

Giusto quattro giorni fa, in collaborazione con Sophos, abbiamo applicato una procedura di protezione davvero invasiva che basa il suo funzionamento sull’antivirus “di casa“, EndPoint. Ho caricato su GxWare.org il documento PDF mandato dai laboratori a tutti i collaboratori e partner Sophos in giro per il mondo (in lingua inglese, comunque facilmente comprensibile):

downloads.gxware.org/index.php?dir=pdf/&file=w32.conficker.emergency-cleanup.pdf

Lanciando la sera di giovedì 15/01 una scansione “extensive” su tutti i client rimasti accesi ed una seconda la mattina di venerdì 16/01, siamo riusciti a tenere a bada l’infezione, rallentando di parecchio il lavoro degli utenti ovviamente scocciati ma ignari del fastidio provocato dal codice virale, rogna per noi e disagio per loro. Durante il pomeriggio (sempre di venerdì, ndr) un codice batch, sviluppato velocissimamente da un mio collega, riusciva già a cancellare ogni rimasuglio del worm. Basa il suo funzionamento sui Removal Tool rilasciati da BitDefender (bitdefender.com/VIRUS-1000462-en–Win32.Worm.Downadup.Gen.html) e F-Secure (f-secure.com/v-descs/worm_w32_downadup_gen.shtml).

Il batch a fine processo lascia un file .lj all’interno della cartella System32 di Windows. Terzultima e penultima riga prevedono quindi la cancellazione di quel file perfettamente inutile rilevato talvolta come malevolo ma molto probabilmente falso positivo facilmente disinfettabile (o eliminabile):

net share admin$ /delete
\\serverXX.XX.XX\confickera\bitdefender\antidownadup\Anti-Downadup.exe
\\serverXX.XX.XX\confickera\fsecure\fdownadup\f-downadup.exe --disinfect
del c:\windows\system32\*.lj
del c:\winnt\system32\*.lj
del %windir%\tasks\at*.*

Serve (è meglio fare) un reboot a fine processo.

Procedure aggiornate Microsoft

Il 5 gennaio scorso è stata rilasciata una procedura aggiornata quotidianamente (fino a venerdì compreso, ndr) e molto discussa da professionisti del settore sul blog di “ITASUPPORT“, il blog dedicato al supporto Enterprise, sempre su Technet:

blogs.technet.com/itasupport/archive/2009/01/05/sicurezza-aggiornamento-riguardo-al-worm-win32-conficker-b.aspx

Cita:

Il modo migliore per rimuovere il virus è utilizzare l’Antivirus installato nel sistema in quanto riduce i tempi di scansione e permette di limitare le reinfezioni.

In caso non sia rilevabile, si può utilizzare la versione Online di Windows Live OneCare Safety scanner oppure il tool standalone Microsoft Malicious Software Removal Tool disponibile gratuitamente ed entrambi in grado di rilevare e rimuovere il virus e le sue varianti.

e suggerisce in seguito una rimozione manuale nel caso in cui l’antivirus incluso nel sistema non riesca a fare piazza pulita, senza lesinare sui consigli per il presente tanto quanto il futuro della rete aziendale:

  1. NON loggarsi nei server con utenza di dominio se possibile, specialmente NON come Domain Admin. Utilizzare un utente locale. Il malware impersona l’utente loggato interattivamente e accede alle risorse di rete usando queste credenziali.
  2. Arrestare il servizio “Server” e “Task Scheduler” = questo rimuove la share Admin$ dal sistema in modo tale che il malware non possa diffondersi tramite questo metodo. Da notare che è fatto solo temporaneamente, specialmente nei server di produzione nei quali sarà impattata la disponibilità dei servizi di rete.

Insieme a tanti altri citati nell’elenco numerico delle operazioni da seguire passo passo. Ho generato un documento PDF della documentazione, anch’esso caricato su GxWare.org e disponibile per il download:

downloads.gxware.org/index.php?dir=pdf/&file=w32.conficker.microsoft-cleanup.pdf

Bloccare i siti web di riferimento

Conficker riesce a rilevare l’IP della macchina attaccata grazie a siti web di pubblico dominio e conosciuti da molti. Così cita la scheda tecnica di Sophos:

Once active the worm will attempt to determine the public IP address of the infected computer by visiting one or more of the following websites:

www.whatsmyipaddress.com
www.getmyip.org
www.whatismyip.org
checkip.dyndns.org

Ai quali si sono aggiunti poco dopo ebay.com, cnn.com, msn.com e aol.com. Volendogli mettere “i bastoni tra le ruote” si può fare riferimento al proxy aziendale andando a modificare le regole riguardanti i siti web da bloccare a qualsiasi utenza. Nel caso del cliente da me controllato, la piattaforma scelta (qualche tempo fa ormai) è il Web Appliace di Sophos. Il lavoro è semplice e veloce, basta aggiungere nella lista ad “Alto rischio” i siti web interessati:

Chiaramente così facendo il worm, che si connette alle risorse della rete con l’utente “interattivo” connesso in quel momento alla macchina, non potrà in alcun modo richiedere “il GETIP” ai siti web sopra citati. Si può adottare lo stesso procedimento con Squid (magari facendo puntare le richieste a 127.0.0.1) o con altri software / hardware preposti alla funzione di filtraggio della navigazione.

L’attuale blocco via Sophos AV

La procedura che attualmente blocca l’infezione chiudendola “all’angolo” è nata da un ragionamento malato del sottoscritto, pensato insieme ai colleghi e discusso con Milano (sede Sophos Italia) giusto per avere delle conferme di funzionamento prima dell’attivazione.

E’ semplice:

  1. Creazione di una scansione pianificata “a vuoto” su tutte le macchine aziendali. Si piazza la sorgente di scansione su floppy e supporti USB rimovibili affinché duri molto poco (con la speranza che pochi in azienda a quell’ora abbiano connesso penne e hard disk esterni USB alle proprie macchine) senza spuntare alcuna opzione aggiuntiva come la ricerca di ADware o HIPS. Così facendo la scansione “girerà a vuoto” ma riuscirà a bloccare immediatamente processi infetti in RAM (ancora prima che tenti di accedere a Floppy e dispositivi di memoria USB).
  2. L’agente Sophos sempre attivo sulla macchina (nella Tray di sistema) rileverà, durante una successiva scansione pianificata ed extensive, eventuali file malevoli bloccandone e precludendone l’attivazione, proprio come suggerito da documentazione dei laboratori.
  3. Al successivo riavvio il processo creato automaticamente dal Conficker verrà rilevato e bloccato, sarà quindi impossibile per lui rigenerare il codice malevolo sulla macchina (quindi la DLL) così da continuare la propagazione.
  4. Il virus non viene ancora cancellato (in attesa di suggerimenti dall’azienda) ma rimane bloccato nel PC. Gli utenti potranno nuovamente lavorare senza problema alcuno e senza avere il servizio Server disattivato sulle macchine di produzione.

In conclusione

Allo stato attuale la situazione è “stabile e finalmente sotto controllo“, nell’attesa che da Milano o dai laboratori Sophos salti fuori un nuovo documento di intervento e nuove definizioni in grado di eliminare completamente i file infetti riportando lo stato della macchina a quello che era prima dell’infezione. Quando possibile aggiornerò il post segnalando nuovi sviluppi.

In bocca al lupo a tutti coloro che si trovano nella stessa situazione. Il mio parere su chi ha realizzato tutto questo l’ho già espresso qualche giorno fa.

×

Attenzione

Questo post è stato scritto più di 5 mesi fa, potrebbe non essere aggiornato. Per qualsiasi dubbio ti invito a lasciare un commento per chiedere ulteriori informazioni! :-)

Condividi l'articolo con i tuoi contatti: