Tipi di virus Un virus e' essenzialmente un programma in grado di produrre una copia di se stesso, e, soprattutto, contenente istruzioni capaci di arrecare danni al sistema nel quale viene eseguito. Esistono vari tipi di virus: Virus di file Sono virus che infettano i files eseguibili, come ad esempio quelli con estensione '.exe' oppure '.com'. Ogni eseguibile e' composto piu' o meno da tre parti: una parte di testata (header), una parte di dati, ed una parte contenente le istruzioni vere e proprie. La testata contiene un 'rimando' (una istruzione di 'salto') all' inizio del blocco di istruzioni. Il virus modifica questo 'rimando' in modo di farlo puntare alla fine del file, dove viene inserito un blocco di istruzioni dannose (il corpo del virus) e comunque, alla fine di tale blocco, 'rimanda' al punto di inizio del blocco di istruzioni originarie. Gli antivirus sono dotati di un motore di scansione che rileva la presenza di questi 'rimandi' fittizi e la presenza di una 'stringa di identificazione', cioe' una sequenza di istruzioni caratteristica di un dato virus. A tale scopo posseggono un database contenente tutte le stringhe dei virus conosciuti. La conclusione ovvia e': per poter essere efficace, un antivirus deve avere un database aggiornato periodicamente. In caso contrario viene a mancare un presupposto essenziale che rende la sua azione quasi nulla. Virus di boot I sistemi operativi dei computers sono formati da un insieme di programmi solitamente residenti su disko. All' atto dell' avvio la macchina ricerca un' area del disko che contiene delle informazioni vitali del disko stesso (MBR Master Boot Record). Una volta letta quest' area, la machina e' in grado di riconoscere le caratteristiche del disko, come ad esempio il numero dei settori. Successivamente viene letto il record di avvio, che e' un' area che contiene le istruzioni per caricare il sistema operativo. Il sitema operativo puo' essere fatto partire dal disko fisso del computer, oppure da un floppy disk. In ogni caso la macchina va a leggere sempre il primo settore del disko, che, nel caso del disko fisso contiene l' MBR, e ne caso del floppy contiene direttamente il record di avvio. Il virus agisce spostando il blocco di istruzioni necessarie all' avvio del sistema operativo (record di avvio) in una zona diversa del disko. Successivamente copia se stesso nella zona che precedentemente conteneva il record di avvio. L' ultima istruzione del virus sara' quella che rendera' nuovamente disponibile il vero record di avvio al sistema. In questo modo il virus (che e' un programma) viene attivato ad ogni avvio della macchina. Se si lascia un floppy disk nel PC spento, all' atto dell' accensione, la macchina ne rilevera' la presenza, e tentera' di caricare il sistema operativo dal floppy. Andra' cosi' a leggere il primo settore, che come sappiamo contiene il virus. Virus companion In ambiente MsDos, se nella stessa directory sono presenti 2 file con lo stesso nome, uno con l' estensione '.com', e l' altro con l' estensione '.exe', il sistema esegue sempre il file con estensione '.com' prima. I virus di tipo companion creano una copia di se stessi con lo stesso nome del file con estensione '.exe' da infettare. Ma con estensione '.com'! Quindi, se viene lanciato il file eseguibile 'pippo' (pippo.exe), il sistema utilizzera' il file pippo.com (che non esisteva originariamente in quanto si tratta del virus). Questo tipo di virus non e' attivo in ambiente Windows 95, ma se viene eseguito all' interno di una finestra Dos, torna ad essere pericoloso! Virus del file system Qesto tipo di virus modifica la FAT (File Allocation Table) del sistema. La FAT contiene l' indice dei nomi e degli indirizzi dei files. Il virus la modifica in modo da essere eseguito prima del programma originale. Virus di macro Questa e' una delle ultime generazioni di virus. Utilizzano delle caratteristiche di certi programmi come Word o Excel. Questi programmi contengono un apposito linguaggio che puo' essere utilizzato per creare delle macro. Una macro non e' altro che un insieme di operazioni (come ad esempio l' apertura di un documento o il suo salvataggio con un nome). E' possibile costruire dei 'modelli' da associare ai documenti, che permettano l' esecuzione delle macro all' atto della loro apertura. Il virus e' in questo caso una macro: contenente operazioni distruttive! Virus a tempo Si tratta di virus che 'dormono' all' interno dei files infetti, e si risvegliano solamente al verificarsi di determinate condizioni , come ad esempio allo scadere di una certa data o di un certo orario. Virus ANSI Si tratta di virus che sfruttano la possibilita (in ambiente MsDos) di associare ai i tasti del computer delle stringhe di caratteri che possono formare dei comandi. Il virus puo' ad esempio associare alla lettera 'v' il comando 'format c:', oppure al tasto INVIO il comando 'del *.exe'! Queste associazioni vengono effettuate all' interno del file config.sys. Cavalli di troia Non si tratta di veri e propri virus, in quanto non sono in grado di replicarsi, ma sono molto pericolosi. Non sono identificabili, perche' si celano sotto le spoglie di un normale programma. E' famoso il cavallo di troia 'PKZIP300.EXE', che non contiene la nuova versione del programma PKZIP (la cui ultima release non e' mai arrivata a 3.0!).