Valuta la risposta

 


Cerca in vialattea.net
 

Vuoi che ti siano segnalate le nuove risposte di chiedi all'esperto ?
Scrivi qui sotto il tuo indirizzo e-mail e invia!

16-09-2005

Condividi    versione stampabile    

Vorrei avere un chiarimento riguardo agli antivirus. Come funzionano? Ma soprattutto come fanno le società a ricercare i virus? Spero possiate darmi un chiarimento a riguardo.

(Risponde Luca Fini)

In una risposta precedente abbiamo trattato delle tecniche usate dai cosiddetti virus per diffondersi da un computer all'altro.

I programmi antivirus basano la loro azione sostanzialmente sull'analisi della memoria e dei dischi del computer per cercare di individuare programmi o porzioni di programma riconoscibili come virus.

La più semplice delle tecniche di riconoscimento si basa sulla ricerca della "firma" (signature) del virus: dato che il virus non è altro che un frammento di programma all'interno di un file eseguibile, o della memoria se già pronto all'esecuzione, il programma antivirus non fa altro che cercare le sequenze di istruzioni che sono caratteristiche dei virus noti. Il programma deve essere dotato di un elenco di "firme", e ciascuna firma deve essere abbastanza ampia da individuare correttamente il virus (ovvero la sequenza di istruzioni che rappresenta la firma deve essere contenuta solo nel virus e non in uno qualunque dei migliaia di programmi funzionanti sul computer), per non generare falsi allarmi.

L'attività più complessa per chi realizza programmi antivirus consiste nel preparare la lista dei virus: si tratta infatti di analizzare le caratteristiche di ciascun nuovo virus che appare sulla scena ed individuare una firma univoca analizzandolo accuratamente. Inoltre occorre disporre di una rete di collaboratori che segnalano tempestivamente i nuovi virus in modo che possa essere aggiornata la lista delle firme prima che il virus si diffonda troppo.

Ovviamente questa tecnica ha due limitazioni principali: 1) è in grado di individuare solo virus già conosciuti ed analizzati; 2) è abbastanza facile da aggirare da parte dei virus più "smaliziati", detti polimorfici, che ogni volta che infettano un nuovo computer cambiano forma, ad esempio invertendo la posizione di alcune istruzioni rispetto ad altre.

Per affrontare questi problemi sono stati sviluppati metodi euristici che analizzano i programmi sulla base delle loro azioni per valutare la probabilità che quel particolare programma sia un virus. La logica di questo approccio si basa sul fatto che, per agire, i virus devono compiere una serie di operazioni abbastanza tipiche (ad esempio leggere e modificare la data di un file, scrivere in coda ad un file contenente un programma eseguibile, ecc.) e quindi un virus dovrebbe essere riconoscibile in base al suo "comportamento". Naturalmente anche programmi legittimi possono aver bisogno di eseguire le stesse operazioni, quindi non è sufficiente individuare alcune specifiche operazioni come sicuri indicatori di un virus, ma occorre valutare l'insieme delle operazioni svolte dal programma. I programmi di riconoscimento euristico quindi analizzano le operazioni compiute dai programmi, assegnano a ciascuna un punteggio in base alla probabilità che l'operazione sia un indicatore di virus e segnalano come affetti da virus i programmi il cui punteggio supera una soglia prestabilita.

Questa tecnica, come è evidente, non fornisce risultati certi, ma solo indicatori di probabilità e quindi può creare falsi allarmi, però è in grado di rilevare anche virus sconosciuti e non si fa ingannare dai virus polimorfici.

I sistemi di protezione antivirus utilizzano talvolta anche un terzo meccanismo, che funziona esattamente al contrario del riconoscimento dei file eseguibili modificati da virus e consiste nel riconoscere i files eseguibili sicuramente non modificati. La tecnica consiste nel calcolare una firma di ciascun file eseguibile e confrontarla con la firma calcolata su una versione del file sicuramente non modificata da alcun virus. Anche questo metodo ha i suoi inconvenienti: innanzitutto occorre avere una raccolta di tutte le firme dei file eseguibili che sia affidabile; questa deve essere  poi aggiornata ogni volta che si modifica la versione di un programma o si installa un nuovo programma o libreria, inoltre è opporetuno che sia memorizzata su un supporto non modificabile (ad esempio un CD) per evitare che un virus particolarmente cattivo cambi la firma del file sano con quella del file infetto.

 

Ti è piaciuta questa risposta? Ti è risultata utile?
Se si, ti invitiamo a sostenere "Chiedi all'esperto" con una piccola donazione, che servirà a coprire le spese di gestione del sito.

 

 
   © 1997-2012 - vialattea.net - Tutti i diritti riservati
Credits | Libro degli ospiti | Privacy | Area esperti