Il nemico corre sul byte

(seconda puntata)
Teschio-hacker

Copyright © 1997 Ghost Computer Club
A cura della redazione del Ghost Computer Club

Proseguiamo il discorso sui virus, entrando maggiormente nei dettagli: in questo secondo appuntamento faremo ampiamente utilizzo di informazioni prelevate in rete, ed in particolar modo dalla faq della Virus-L, una mailing list specificatamente dedicata ai virus. Dove possibile cercheremo di mantenere i termini in inglese, visto che i testi per la stragrande maggioranza sono in inglese, questo per evitare inutili confusioni.

Come abbiamo visto la volta precedente, i virus che infettano i file possono essere suddivisi in due grosse categorie: file infettanti e virus di boot o sistema; i virus infettanti possono essere a loro volta suddivisi in virus ad azione diretta e virus residenti; un virus ad azione diretta sceglie (in vario modo) uno o più programmi da infettare ogni volta che un programma infettato (cioè contenente già il codice virale) è in esecuzione. Un virus residente si installa invece nella memoria RAM e infetta i programmi al momento della loro esecuzione o allo "scoccare" di determinati eventi, quali ad esempio una particolare data, una particolare ora, oppure ancora dopo che il programma è stato eseguito per un dato numero di volte. Talora si parla per i virus ad azione diretta anche come virus NON residenti; il tipico esempio di virus non residente è il virus VIENNA, anche se la maggior parte dei virus sono attualmente residenti. La seconda categoria è quella dei virus detti di sistema o di boot, poichè si "prendono cura" di infettare una porzione di codice eseguibile contenuta in determinate aree di sistema dei dischi detti appunto boot record, che è l'eseguibile che di fatto rende possibile utilizzare correttamente un hard-disk con il sistema operativo. Alcuni tipi di questi virus infettano solo i dischetti, mentre alcuni particolarmente accaniti accudiscono anche gli hard-disk senza che nessuno glielo abbia in realtà richiesto!! (Ma loro sono fatti così; appena vedono un hard-disk solo e abbandonato, lo aggediscono...) Esempi sono Michelangelo, il virus Brain e moltissimi altri. Tutti questi virus sono residenti in memoria. Esiste una categoria intermedia a queste due principali, in grado in realtà di comportarsi sia come virus infettante i files che come virus infettante il boot sector; questi virus sono detti multipartito; il più noto virus di questo tipo è il virus Tequila. Alcuni li chiamando anche boot-and-file. Molti studiosi di virus li suddividono ulteriormente in base al meccanismo di azione oppure in base alla zona di azione.

I virus stealth
I virus stealth sono una particolare categoria di virus che hanno un certo grado di astuzia (o meglio chi li ha fatti era proprio un gran...), in quanto hanno l'abilità di fuorviare il sistema operativo , quindi il pc, quindi noi, facendoci vedere come "buone" alcune zone dell'hard-disk, semplicemente facendoci vedere una copia non rovinata dalla loro azione; vediamo come: un virus stealth in attività nasconde le modifiche che ha creato sui file o sul boot record; poi monitorizza continuamente il nostro comportamento; non appena per qualche motivo richiediamo di vedere una zona che in realtà ha infettato, lui... zac, ci fa vedere la copia; noi (o meglio il pc) vediamo che tutto sembra ok e continuiamo a lavorare... lui pure... (#$$$$@@@@!1@@ e altri insulti censurati). In questo modo inoltre, il virus potrebbe non essere rilevato dal sistema antivirus. Se prendiamo ad esempio il virus brain, uno dei primi virus ad usare la tecnica Stealth, monitorizza le chiamate input ed output al disco, e redirige tutti i tentativi di accesso al boot sector infettato, presso l'area di disco dove è mantenuta una copia originale del boot-sector non infettato. Come naturale contromisura, in questi casi è necessario attuare un avvio da un dischetto "pulito".

Virus polimorfici
Un virus polimorfico è un virus "cangiante", nel senso che ha la capacità di mutare forma, pur rimanendo operativo; per esemplificare il tutto pensate a un individuo che sapete ridere in modo caratteristico; ora immaginate lo stesso individuo con una parrucca; pur essendo mutato fisicamente, la sua caratteristica risata è sempre la medesima. Il grado di polimorfismo può essere molto ampio e vario; naturalmente l'antivirus perchè sia efficace, deve sapere riconoscere tutte le varianti (che sono tutti virus pienamente funzionanti).

Uno delle più sofisticate forme di polimorfismo è il "Mutation Engine" (MtE); grazie a questo "Kit" praticamente ogni virus può essere reso polimorfico tramite chiamate al codice assembler del virus (rese causali da un generatore numerico); naturalmente l'irruzione sulla scena del MtE ha reso ulteriormente dura la vita degli antivirus, che hanno dovuto adottare delle tecniche di contrasto non più semplicemente legate alla pura scansione di stringhe virali caratteristiche ma tecniche di elaborazione probabilistica e matematica.

Infettatori veloci e infettatori lenti
Un virus infettatore veloce è un virus che, una volta caricato in memoria, infetta non solo i programmi
Dark Avenger. Gli infettatori lenti sono virus che invece infettano i files che vengono modificati o creati. Il tipico esempio è il virus Dark Vader.

Sparse virus
Si definisce Sparse un virus che infetta solo occasionalmente (ad esempio solo il decimo programma eseguito) oppure solo i programmi che rientrano in un range di dimensioni. Tutti questi comportamenti vengono effettuati nel tentativo di non essere scoperti. Un virus iper-attivo infatti ha moltissime probabilità di essere scoperto o dall'operatore, o più frequentemente dal programma antivirus.

Compaign virus
È un virus che, invece di modificare un file esistente, crea un nuovo programma che (in modo ignoto all'utente) viene eseguito invece del programma originale. Al termine, il nuovo programma esegue il programma originale così che tutto appare normale. Sui PC di solito questo è compiuto per creare un .COM infetto con lo stesso nome di un file esistente con estensione .EXE. I programmi antivirus più superficiali non scopriranno tali virus.

Armored virus
Un virus CORAZZATO (armored) è un virus che usa speciali accorgimenti per rendere la comprensione del suo codice più ardua. Un buon esempio è il virus WHALE.

Cavity virus
Un virus a cavità è un tipo di virus che sovrascive una porzione del file che infetta con una grandezza (solitamente minima) costante, senza che il file infettato perda la sua funzionalità; in questo modo la lunghezza del file infettato rimane invariata, ma è infettato; un esempio di questo tipo di virus è il virus Lehigh.

Tunnelling virus
Un TUNNELLING VIRUS è uno virus che agisce direttamente sulle chiamate ai registri del DOS ed del BIOS, aggirando così qualsiasi attività di monitoraggio da parte dei sistemi di protezione. Alcuni sistemi antivirus adottano questa tecnica per cercare di poerare anche in fase di sistema infettato.

Virus dropper
Un virus CONTAGOCCE (dropper virus) è un programma che è stato concepito per fungere da veicolo "installante". In parole povere funge da mezzo di trasporto per portare sul sistema operativo i virus. Rappresenta probabilmente un evoluzione di cavallo di troia (vedi la puntata scorsa)Si parla anche di virus inoculatore.

Bombe ANSI
Una bomba ANSI è una sequenza di caratteri, di solito incorporato in un normale file di testo in grado di riprogrammare la tastiera con varie funzioni legate a driver ANSI (ovviamente dannose); ad esempio in questo documento potrebbe essere inserito una serie di tasti che indicano al pc di formattatre il disco fisso non appenda premerai la barra spaziatrice... (ho detto potrebbe....). Va detto comunque che ormai i driver ANSI non vengono più utilizzati dai software in circolazione (non usano più le interfacce a caratteri). L'unico pericolo ancora effettivo consiste nei luoghi ove la grafica ansi è ancora utilizzata, ovvero BBS e siti ftp. Infatti la grafica ansi è utilizzata per abbellire con effetti e colori lo spartano ambiente a caratteri delle BBS. La grafica ANSI utilizza un apposito driver dos chiamato ANSI.SYS per essere apprezzata da pc DOS. Tutto questo è comunque in deciso declino con Windows (3.1 e 95).

Scoperta di virus
Si tende ad associare ai virus azioni devastanti , quali cancellazione o corruzione di file, formattazioni non volute di hard-disk e altri nefasti eventi; in realtà molti virus sono molto più subdoli; un azione così eclatante è anche molto evidente ed alcuni virus sono progettati in modo da diffondersi in modo massiccio lasciando pochissima traccia di sè; in questo modo e almenoi in questa fase, la maggior parte dei virus hanno come priorità quella della loro diffusione più che della loro potenza assoluta; è ovvio che tanto più discreto sarà il comportamewnte di un virus in questa prima fase, tanto più efficace sarà la sua azione a livello globale (n. di macchine infettate). Ci sono diversi sintomi di avvenuta infezione; messaggi, musichette e altre amenità, ma il sintomo più caratteristico di probabile infezione virale è il cambiamento di dimensione di un file; per questo secondo me è buona norma annotarsi per lo meno le dimensioni originali del file command.com, visto che questo è uno dei file più importanti. Altro segno è un repentino calo di risorse ram. Se siete abbastanza pratici e in grado di farlo vi consiglio anche l'esame del boot sector, mediante un editor di dischi (c'è ne sono centinia di tipi); una volta che avete visto un boot sector originale, saprete sicuramente riconoscerlo da uno infettato. Altri sintomi più generici sono una strana ed anomala attività del disco e strani comportamenti hardware (i malfunzionamenti hardware sono dovuti o da danni fisici all'hardware o da virus; cosa preferite?) Ovviamente il metodo più sicuro per determinare la presenza di un virus è l'analisi del file a livello di codice; questo naturalmente è improponibile a livello di utenza normale, per questo motivo si utilizzano i software antivirus hce essenzialmente setacciano i file alla ricerca di stringhe che hanno memorizzato come appartenenti a codici virali; per accrescere l'efficienza, i sistemi antivirus hanno elaborato dei metodi a ricerca euristica che funzionano essenzialmente così: si setaccia alla ricerca di codice virale e anche codice che pur non essendo virale con certezza, potrebbe esserlo in base a caratteristiche particolari; generalizzando moltissimo è come se la polizia arrestasse come criminali tutti i possessori di armi! (è una protezione grezza, ma è meglio non andare per il sottile, perchè è meglo segnalare un falso positivo che un falso negativo.

Oltre ad avere un buon sistema antivirus (e soprattutto recente!!!) prestare attenzione a modifiche improvvise della quantità di memoria; si può facilmente rilevare con il comando mem /c

Anche il messaggio di errore in windows indicante l'impossibilità di accedere al disco a 32 bit, è molto spesso sintomo di una avvenuta infezione da parte di un virus di boot sector.

Qual'è il metodo migliore per rimuovere un virus?

Prima di tutto sfatiamo subito un altro mito che molti venditori sfruttano per vendere nuovi hard-disk: NON È PRATICAMENTE MAI NECESSARIO SOSTITUIRE UN HARD-DISK DOPO UN'INFEZIONE VIRALE!! Chi sostiene questo o è male informato o peggio è in mala-fede!! In realtà esiste una remotissima ipotesi ma non è più di un caso su mille. Altra cosa da sfatare è che sia necessaria una formattazione a basso livello (low-format) anzi spesso è proprio questa a rendere inservibile l'hard-disk. Quello che è assolutamente necessario, è sostituire i file infettati con i medesimi NON infettati, prendendoli da un back-up, ovviamente pulito, e ovviamente effettuato in precedenza all'infezione. Questa ppprocedura rappresenta la soluzione migliore e la più sicura; altra soluzione, molto più comoda e pratica, ma anche molto meno sicura, è utilizzare un cosiddetto programma di disinfezione. Il programma in questione infatti va usato con particolare cautela specie nei casi di infezione del Boot-sector dell'hard-disk, giacchè, come già detto, è una parte molto importante dell'hard-disk, e quindi fare "casino" in questa zona può comportare la perdita di parte o anche di tutti i dati.

Vediamo quindi le procedure più sicure per sopravvivere con sufficiente sicurezza ad una avvenuta infezione virale.

Effettuare l'avvio del PC da un dischetto di emergenza, creato secondo le modalità citate in moltissimi nostri corsi e contenente anche utilità Dos quali MEM, FDISK, CHKDSK, UNFORMAT, SYS.

Verificare con il comando Dos MEM, che la memoria si trovi in condizioni normali.

Effettuare una normale DIR del disco fisso, fermandosi se non è possibile accedere correttamente al disco.

Effettuare la sostituzione del MBR incriminato dando il comando FDISK /MBR

Sostituire il dos boot sector tramite il comando SYS C: avendo prima però cura di sincerarsi che la versione del DOS del dischetto sia la medesima di quella contenuta nell'hard-disk. Prestare attenzione anche alle unità compresse (Doublespace, Drivespace o analoghi) e applicare il comando SYS alle unità fisiche (solitamente H o I) anzichè a quelle virtuali.

Tornerete ad essere infettati da boot-virus, tutte le volte che dimenticherete un dischetto infettato nel drive e poi riavvierete il pc!

RICORDARSI DI TOGLIERE SEMPRE I DISCHETTI!!!!


Home Page

Realizzazione Html a cura di Armando Mancini & Loredana Gallea
Copyright © 1996-1997 Ghost Computer Club