VBS.PeachyPDF@mm

(Rielaborazione dall'articolo di Bernardo Quintero - hispasec.com)

Chi è

Il primo worm al mondo che si presenta in un file PDF (Portable Document Format), il famoso formato di Adobe Acrobat. Può essere chiamato anche OUTLOOK.PDFWorm o VBS.Zulu.pdf@mm.

La notizia è stata data da http://www.hispasec.com/unaaldia.asp?id=1017

Il fatto che si presenti in un file .pdf non è l'unica novità: questo prototipo si distribuisce utilizzando funzioni di Outlook mai viste prima in un worm.
E' dunque un virus da laboratorio, e si tratta di un seme che potrebbe far proliferare questo tipo di virus inseriti in archivi PDF, un formato finora considerato sicuro per gli utenti.

Progettato come prova concettuale, questo worm non è stato ottimizzato per una diffusione di massa. Tra le altre limitazioni del progetto, è necessario che l'utente da infettare abbia una versione completa di Acrobat, dato che non funziona con il solo Acrobat Reader, che è l'applicazione distribuita gratuitamente installata dalla maggior parte degli utenti.

Il realizzatore di questo worm è Zulu, un argentino ampiamente conosciuto nel mondo virale per le sue costanti innovazioni nel settore dei worms, autore tra l'altro di "BubbleBoy", "Freelinks", "The_Fly", "Monopoly" e "Life_Stages".

Da dove caspio arriva

L'autore si è dato da fare per dotare questo prototipo di un certo polimorfismo nel suo aspetto.
Il worm può arrivarci allegato ad una mail con uno dei seguenti testi che sceglie a caso per comporre oggetto, corpo e nome del file con il quale si invia.

L'oggetto è scelto a caso tra

"You have one minute to find the peach"
"Find the peach"
"Find"
"Peach"
"Joke"

Con una probabilità del 50%, l'oggetto può essere preceduto dal prefisso "Fw:" per simulare un inoltro o con il segno "!" alla fine, mentre c'è una possibilità su tre che il testo sia scritto completamente in maiuscolo.

Il corpo del messaggio è scelto a caso tra

"Try finding the peach"
"Try this"
"Interesting search"
"I don't usually send this things, but..."
[oppure il testo scelto dall'oggetto]

Come per l'oggetto, il worm può effettuare alcune modifiche nel corpo del messaggio, come iniziare con il carattere "> ", convertire tutto il testo in maiuscolo o finire con il punto esclamativo "!". Infine, con una probabilità dell'80%, può includere alcune delle seguenti emoticons: " :-)", " :)", " =)" o " :-]".

Il nome del file allegato viene scelto tra i seguenti:

"find.pdf"
"peach.pdf"
"find the peach.pdf"
"find_the_peach.pdf"
"joke.pdf"
"search.pdf"

Con una probabilità di 1 su 3, il nome del file può apparire in caratteri maiuscoli o, con la stessa probabilità, avere in maiuscolo solo la prima lettera.

Come si prende

Automaticamente aprendo la mail o il suo allegato, se si ha una versione di IE/OE non aggiornata e senza le restrizioni sull'esecuzione degli script, e con l'anteprima attivata.

Cosa fa

In dettaglio

Cerca di ingannarci simulando un gioco...

Quando l'utente apre il file allegato, per il quale è necessario avere installato Acrobat, può visualizzare una schermata che simula un gioco.

"You have un minute to find the peach!"
[Hai un minuto per trovare la pesca!]

Sotto a questo testo, appare un grafico formato da quadretti di 18x13 con miniature di posteriori nudi. Se ne può vedere l'immagine in http://www.hispasec.com/pdfworm.gif

Di seguito, si viene invitati a fare doppio clic su un'icona per vedere la soluzione del gioco, che in realtà attiverà il worm, scritto in VBS, e che viaggia incorporato nel file PDf.

Infine, troviamo una nota che tenterà di impedire che l'utente esegua lo script da una versione incompleta di Adobe Acrobat, come nel caso di Acrobat Reader.

"Note: Acrobat full version (not Acrobat Reader) is needed to show de solution."

Se si prova ad eseguirlo da Acrobat Reader, il worm non può portare a termine la sua azione e appaiono messaggi di errore indicanti che taluni metodi o funzioni non sono disponibili.

Il worm prende il controllo...

Se l'utente possiede la versione completa di Adobe Acrobat e fa doppio clic sull'icona, si esegue il worm sviluppato in VBS. Esistono tre versioni che si differenziano principalmente nell'estensione e nell'uso della cifratura a seconda del formato utilizzato: 1.0 in VBS (Visual Basic Script), 1.1 in VBE (VBScript Encoded) e 1.2 in WSF (Windows Script File), ma tutte svolgono praticamente le stesse funzioni.

La prima azione del worm, per non mettere sull'avviso l'utente e fargli proseguire la simulazione del supposto gioco, consiste nel creare un file .JPG e mostrare la relativa immagine.

Poi, il worm inizia la sua routine di infezione, e per prima cosa deve individuare il file PDF al quale allegarsi. Questo si rende necessario perchè Adobe Acrobat utilizza una directory temporanea di Windows per modificare ed eseguire il file allegato ricevuto inizialmente (il .VBS, .VBE o .WSF a seconda della versione), e il worm non conosce il percorso esatto dell'ubicazione del PDF nel quale viaggiava.

Per localizzare il file, il virus utilizza come riferimento l'estensione e la dimensione, cercando files PDF tra 168.230 e 168.250 bytes. Nel codice del worm troviamo due routines per questa operazione, una che utilizza Word nel caso in cui l'utente lo abbia installato nel sistema, e che consiste nell'effettuare la ricerca in tutte le unità esistenti, mentre l'altra routine, se non si utilizzano le funzioni di Word, cerca ricorsivamente nelle directory per mezzo del codice in Visual Basic Script.

Routine di diffusione...

Una volta localizzato il file PDF nel quale viaggerà, il worm cerca gli indirizzi di posta a cui autoinviarsi. Il metodo utilizzato è un'altra delle innovazioni mai viste in altri prototipi, e che si differenzia dalla tipica routine basata su oggetti di Outlook tipica di Melissa. In questo caso, vengono scorse tutte le cartelle di Outlook e tutti i contatti della rubrica (cercando fino ai primi tre indirizzi di ogni contatto), riunendo in una variabile dimensionata tutti gli indirizzi di posta elettronica rilevati.

In seguito, realizza un filtro di tutti gli indirizzi raccolti nella variabile per evitare duplicati e nello stesso tempo filtra l'indirizzo dell'utente già infetto che trova nella configurazione SMTP esistente nel registro di Windows. Si regola su un limite massimo di 100 messaggi per ogni infezione ed evita di propagarsi due volte nello stesso sistema, per cui inserisce la seguente stringa nel registro di Windows che indicherà l'infezione:

HKLM\Software\OUTLOOK.PDFWorm\"Version 1.x. By Zulu"

Il numero massimo dei 100 indirizzi raccolti si include nel campo CCN (copia conoscenza nascosta) di un messaggio di posta elettronica le cui caratteristiche (oggetto, corpo e file allegato) sono state descritte all'inizio di questa analisi. In ultimo, si assicura di cancellare il messaggio una volta inviato, così come il file PDF situato nella cartella temporanea, per evitare che l'utente se ne accorga.

Ultime considerazioni...

Come sua abitudine, Zulu non ha incluso alcuna routine distruttiva. L'obiettivo del worm consiste nel dimostrare che i file PDF possono contenere virus, trojans o altro codice maligno.

Da questo momento, gli utenti dovranno prendere le loro precauzioni con i file PDF non richiesti, mentre i programmi antivirus dovranno supportare un nuovo formato per proteggere gli utenti. Per ora nessuna di queste applicazioni è in grado di individuare questo worm, né tanto meno di ripulire un sistema infetto.

 

Demo innocua del virus per verificare le firme.