Originariamente pubblicato in data 01/10/1996
A
C
C
O
M
A
Z
Z
I
Virus al microscopio elettronico
Virus al microscopio elettronico
Un articolo introduttivo che spiega cosa sia un virus per calcolatore, come funziona, come si riproduce
Un calcolatore è solo un complicato ammasso di circuiti che sa eseguire delle semplici istruzioni, una dopo l'altra, molto in fretta. Il più lento dei calcolatori moderni arriva ad eseguire venticinque milioni di microistruzioni ogni secondo, e i più veloci superano di mille volte quella velocità di elaborazione. Una sequenza di istruzioni che viene eseguita dal calcolatore è un programma: e un virus altro non è se non una modifica effettuata ad un programma esistente, per scopi maligni. Spieghiamoci con un esempio.
Possiamo immaginare che un calcolatore sia un cuoco, molto ma molto stupido, che per svolgere il suo lavoro segue pedissequamente delle ricette che qualcuno ha scritto per lui. Queste ricette sono, per l'appunto, sequenze di istruzioni: prendi la farina, prendi un uovo, mescolali per cinque minuti, aggiungi un etto di zucchero... Il ricettario del nostro cuoco è scritto in italiano, visto che egli è di nazionalità italiana (questo è molto importante per motivi che esamineremo tra poco).Adesso immaginiamo che qualche malintenzionato, sapendo della debolezza del cuoco, penetri nella cucina, agguanti una delle ricette, e scriva sul bordo superiore di questa: "Prendi, una per una, tutte le tue ricette, e scrivi sul bordo superiore, prima dell'inizio di ciascuna, queste stesse parole. Poi guarda l'orologio: se oggi è venerdì 13, prendi un fiammifero e brucia tutte le ricette che vedi. Altrimenti prosegui ad eseguire la ricetta sottostante come se nulla fosse accaduto."
Il furfante che si è introdotto in cucina è il creatore del virus, e il virus è proprio costituito da queste poche istruzioni aggiunte a una delle ricette del nostro cuoco ignaro. Qualunque cuoco umano, vedendo istruzioni come queste, scuoterebbe perplesso il capo e si rifiuterebbe di eseguirle; ma il nostro calcolatore non ha buon senso, e quando gli viene proposto questa ricetta modificata, questo programma al quale è stato aggiunto un prologo maligno, lo esegue senza farsi problemi.
Il virus, dunque, si moltiplica, perché il cuoco lo ricopia su tutte le sue ricette. E per di più il virus non si limita a questo, ma quando arriverà il fatidico venerdì 13 costringerà il povero cuoco a distruggere tutte le sue preziose ricette pazientemente accumulate nel corso di una vita.
A questo punto si impongono alcune considerazioni. Innanzitutto, il virus può propagarsi solamente se qualcuno prende uno dei programmi (le ricette) modificati, lo trasporta su un altro calcolatore e lo esegue su questo. Un virus non può apparire spontaneamente su una macchina, non si propaga attraverso l'aria, non si attacca semplicemente inserendo un disco infetto in un calcolatore; si riproduce solamente quando viene eseguito un programma modificato. Un calcolatore, dunque, sul quale non vengono eseguiti programmi provenienti da sorgenti sconosciute è perfettamente al sicuro. Disgraziatamente, tra i possessori di computer personali è diffusa l'usanza (del resto illegale) di scambiare programmi: visto che è assai semplice duplicare un programma, all'acquirente di un videogioco simpatico oppure di un potente programma per l'analisi statistica di dati economici non costa nulla fare una copia del programma originale per un amico. Si calcola che, ogni due copie esistenti in circolazione di un programma, una sia illegale. Questa abitudine facilita moltissimo i creatori di virus, che non debbono far altro che mettere le mani su un programma relativamente nuovo, infettarlo con il loro virus e distribuirlo ad alcuni conoscenti per vedere il loro malsano prodotto distribuirsi a macchia d'olio tra tutti i possessori di un computer che praticano lo scambio di programmi.
D'altra parte, ciascun modello di calcolatore comprende un linguaggio molto differente da quello usato su ogni altro modello e su ogni altra marca. È quanto anticipavamo sopra, dicendo che il nostro cuoco della metafora capisce solamente l'italiano: se una delle sue ricette modificate viene passata a un cuoco indiano, questo secondo personaggio non potrà eseguire la ricetta, e pertanto non vedrà il suo patrimonio di ricette-programmi contaminato dal virus. Per questo motivo, nessun virus potrà mai contaminare tutti i calcolatori del nostro pianeta: essi sono troppi, e troppo diversi tra di loro. Un virus creato per macchine Windows non può, per esempio, torcere un baffo a un Macintosh e viceversa. Dare istruzioni che tutti questi calcolatori possano capire è tanto impossibile quanto fare un discorso comprensibile a tutte le persone che vivono sulla Terra: ci sono troppe lingue e troppi dialetti perché questo possa accadere. Sarebbe necessario tradurre il virus, ma questo equivarrebbe a uno sforzo di programmazione tanto grande che nessun malintenzionato, e neppure una banda di criminali, potrebbe mai realizzare. Per non parlare poi della necessità di portare una copia del virus su ciascuna macchina esistente al mondo.
Il sistema nel quale i virus sono più comuni è, prevedibilmente, il sistema più popolare: Windows. Si calcola che ogni mese, in media, vengano messi in circolazione circa 30 nuovi virus per Win. Su Internet esistono addirittura riviste elettroniche periodiche che spiegano come sia possibile creare un virus, in tutti i dettagli: la più diffusa si chiama 40 Hex (dal nome dellinterrupt 40 esadecimale, il meccanismo di Ms Dos che i virus usano per riprodursi).
Il secondo sistema più diffuso al mondo, Macintosh, è molto più sicuro: lultimo virus conosciuto per questa macchina si è diffuso nel marzo 1994. I motivi di questa maggior stabilità sono due: Macintosh è un sistema più professionale del PC, e dunque meno diffuso tra i ragazzini immorali, egocentrici e genialoidi che preparano i virus; inoltre, il sistema operativo Macintosh è più avanzato e dunque meno facilmente pervertibile di MsDos.
Abbiamo appena detto che un virus è creato specificatamente per un tipo di calcolatore. Anche gli antivirus, quei programmi che scoprono i virus e li uccidono, sono dunque validi solo per un tipo di macchina. Ci sono molti antivirus in circolazione, e alcuni sono anche gratuiti. Quelli commerciali hanno il vantaggio di venire aggiornati regolarmente, di solito allinizio di ogni mese.
Chi deve procurarsi un antivirus e usarlo periodicamente? Tutti quelli che ricevono frequentemente programmi. Per esempio, chi possiede un modem e lo utilizza per ricevere programmi di dominio pubblico e shareware (questo è lecito) dovrebbe tutelarsi esaminando ogni applicazione ricevuta con lantivirus, dopo avere decompresso il software e prima di eseguirlo per la prima volta. Esistono anche antivirus preventivi, per vengono installati nel sistema una volta per tutte e cercano di intercettare i virus alla loro prima apparizione, senza che lutente faccia nulla. Sono una gran cosa, ma non bisogna fidarsi troppo: è già successo che un malintenzionato esamini lantivirus per trovare un modo per aggirarlo. In nessun caso bisogna installare più di un antivirus preventivo nel proprio sistema: se ce ne fossero due o più finirebbero per darsi la caccia a vicenda, compromettendo la stabilità del sistema.
Antivirus: una applicazione studiata per combattere i virus. Ne esistono di due tipi: preventive (cercano di intercettare il virus prima che possa riprodursi) e curative (cercano di riconoscere la presenza di virus nel sistema e di eliminarli.
Boot blocks: spazio che si trova su ogni disco (sia floppy che rigido), e che contiene le informazioni utilizzate dal calcolatore quando viene acceso. La sua natura delicata e vitale lo rende un obiettivo di molti virus.
Cavallo di Troia: Programma nocivo per un calcolatore che maschera la sua natura. Il Cavallo di Troia si finge un programma utile o divertente, e quando viene eseguito scatena la propria natura dannosa.
Macrovirus: programma che si riproduce allinterno di Microsoft Word. Innocuo per chi non usa quel programma.
Sistema operativo: Il software che consente a un calcolatore di funzionare. Windows costituisce il sistema operativo delle macchine basate su processori Intel. Mac OS è il sistema operativo dei Macintosh.
Virus: un programmino che, in modo subdolo, crea ulteriori copie di se stesso e le introduce allinterno di applicazioni e software di sistema. In alcuni casi parte del codice del virus è studiato per danneggiare il calcolatore sul quale esso gira.
VTOC: Sigla di Volume Table of Contents, ovvero indice del disco. Si tratta di quella parte del disco (floppy o rigido) che memorizza lindice dei documenti contenuti nel disco. E uno degli obiettivi privilegiati dei virus.