W.Triplicate

Alias:  

Descrizione tecnica:

Il "Triplicate" è un macro virus multi-piattaforma, che infetta alcuni componenti della suite Office97: documenti Word, presentazioni PowerPoint e fogli Excel. Il virus non manifesta se stesso in alcun modo e non possiede effetti distruttivi per i dati. Questo è il primo macro virus conosciuto capace di infettare i documenti di tre diverse applicazioni di Office97.

Il virus disabilita la protezione antivirus di Excel e di PowerPoint modificando tutte le possibili chiavi di riferimento (nei rami Current_User, Local_Machine e Users) presenti all'interno del Registro di sistema. Per tale scopo il virus usa delle normali istruzioni in Visual Basic for Applications (VBA).

Il virus presenta 3 procedure VBA5 in tutti i file infettati (documenti Excel, Word e PowerPoint): la procedura "DocumentClose()" per Word, "Workbook_Deactivate()" per Excel e "actionhook()" per PowerPoint. Le routine di infezione del virus sono separate in tre diversi sottoinsiemi. Ogni sottoinsieme è attivato a seconda del tipo di applicazione Office in cui viene letto il documento infettato.

Di questo virus esistono almeno quattro versioni conosciute. Due di loro contengono soltanto delle correzioni a degli errori presenti nella prima versione del virus, ma la terza possiede alcune nuove e importanti caratteristiche. Quest'ultima versione del virus usa una falla nella sicurezza di Word97 per infettare dei computer remoti attraverso Internet. Un apposito documento Word è stato messo in un sito hacker sul World Wide Web. Quando questo documento viene prelevato e aperto da Word, l'applicativo viene forzato a prelevare e caricare in memoria un modello infetto presente sul sito hacker. In questo caso, la protezione anti-macro di Word97 non viene attivata, l'utente non riceve alcun messaggio riguardante la presenza delle macro nel modello e queste vengono eseguite infettando il sistema.

Il virus contiene dei commenti:

"Triplilcate.a": <!--1nternal-->

Triplicate v0.1 /1nternal

"Triplilcate.b": <!--1nternal-->

Triplicate v0.11 /1nternal

"Triplilcate.c": <!--1nternal-->

Triplicate v0.2 /1nternal

"Triplilcate.d": <!--1nternal-->

Triplicate v0.21 /1nternal

 Infezione attraverso i documenti Word

Quando il virus viene attivato attraverso la lettura di un documento Word, prima di tutto disabilita la protezione anti-macro di Word e controlla il modello generale NORMAL.DOT per stabilire se è già stato infettato. In caso negativo, il virus comincia ad infettare altri componenti di Office97. Tale operazione si svolge in tre fasi: infezione di Word, di Excel e di PowerPoint.

  1. L'infezione di Word rappresenta l'operazione più semplice eseguita dal virus, quest'ultimo infatti si limita a copiare il proprio codice all'interno del modello generale (NORMAL.DOT).
  2. L'infezione di Excel è più complessa. In primo luogo, il virus esegue una nuova istanza di Excel usando la funzione CreateObject("Excel.Application"). Quindi il virus controlla la presenza del file BOOK1 nella cartella di startup di Excel. Se il file è assente, il virus infetta Excel. Durante quest'operazione il virus disabilita la protezione anti-macro di Excel, crea un nuovo WorkBook copiando in esso il proprio codice e salva il file con il nome BOOK1 nella cartella di startup di Excel. Ogni foglio elettronico che si trova all'interno di questa cartella viene caricato automaticamente da Excel al momento del suo avvio, quindi l'ambiente di Excel verrà infettato alla prossima esecuzione dell'applicativo.
  3. L'infezione di PowerPoint è abbastanza simile a quella di Excel: il virus crea una nuova istanza di PowerPoint, controlla l'esistenza del file 'Blank Presentation.pot' nella cartella dei modelli di PowerPoint e all'interno del file di presentazione tenta di localizzare il modulo "Triplicate". Se questo modulo risulta assente, il virus infetta PowerPoint: disabilita la protezione antivirus nel Registro di sistema, crea il modulo "Triplicate" nel file 'Blank Presentation.pot' e copia in esso il proprio codice. Quindi, crea un nuova forma nella presentazione, con l'altezza e la larghezza di una normale diapositiva, e imposta la procedura di attivazione per la forma ad "actionhook()" (tale procedura verrà attivata quando l'utente fa clic con il mouse sulla forma).

Infine, il virus infetta il documento Word corrente. Questa particolare routine di infezione viene eseguita soltanto nel caso in cui il virus sia stato caricato da un modello infetto ed un nuovo documento non ancora infetto viene chiuso dall'utente.

 Infezione attraverso fogli elettronici e presentazioni

Le procedure di infezione di Excel e PowerPoint sono quasi del tutto uguali ad eccezione di alcuni, piccoli dettagli.

Il file BOOK1 nella cartella di startup di Excel viene usato dal virus come indicatore dell'infezione di Office. Dunque, quando viene eseguito da un foglio elettronico infetto, la prima operazione svolta da virus consiste nel controllare la presenza del file BOOK1; se questo non esiste il virus comincerà ad infettare le applicazioni Office, partendo da Word.

  1. Il virus crea l'oggetto Word.Application. Per compiere tale operazione, il virus non usa la funzione CreateObject(), ma la GetObject(). Quest'ultima funzione ritorna un oggetto creato a partire dall'istanza corrente di Word (non ne esegue una seconda). Per infettare il modello NORMAL.DOT il virus ha la necessità di accedere ad esso in scrittura, e questo non è possibile se il modello è già stato aperto da una precedente istanza di Word. Se invece Word non risulta tra i processi attivi, allora il virus ne crea una prima istanza.
  2. Una volta ottenuto l'oggetto dell'applicazione Word, il virus esegue la sua routine di infezione. Il virus cancella tutto il codice presente nel modello NORMAL.DOT e crea la procedura 'DisableAV()' - dove viene copiato una pezzo di codice virale - che viene eseguita e poi cancellata subito dopo. Questa breve procedura, costituita da sole otto linee di codice, ha il compito di disabilitare la protezione antivirus di Excel e PowerPoint. Quindi il virus copia il suo codice dal file infetto al modello generale, completando così l'infezione di Word.
  3. In questa fase vengono infettate le applicazioni Excel e PowerPoint. Il virus infetta la cartella di startup di Excel partendo da una presentazione di PowerPoint, o inserisce il suo codice nel modello di PowerPoint, come descritto sopra (esecuzione del virus da un documento Word infetto).

La procedura di attivazione in PowerPoint possiede un'ulteriore caratteristica: il virus esegue la procedura di infezione a seconda del valore assunto da un contatore casuale. L'infezione viene attivata con una probabilità su sette.