Nascondere virus agli antivirus

Creato il 09 febbraio 2011 da Hnikarr
Abbiamo già parlato a lungo dei vari tipi di virus che si possono incontrare, in Rete e non; abbiamo anche specificato che in realtà bisognerebbe parlare di malware, non di virus, ma per semplicità continueremo a usare il termine più comune, benché improprio. Per ogni tipo di virus, come sappiamo, esistono appositi programmi per trovarli ed eliminarli: gli antivirus sono i più famosi, ma non sono gli unici e sono efficaci solo contro alcune categorie di virus molto precise. A ogni modo, è sempre importante controllare con un antivirus ogni file che scarichiamo da internet, prima di aprirlo: questo ci metterà al sicuro nella maggior parte dei casi.
Ma non sempre.
Esistono infatti virus che possono sfuggire anche agli antivirus più aggiornati, nonché agli altri programmi di sicurezza antimalware. E non si tratta di virus, speciali, anzi: nella maggior parte dei casi, sono trojan, oppure keylogger accessibili a tutti, o almeno a tutti quelli che si divertono a infettare i computer altrui. La cosa che li rende particolari è un'altra, ossia un trattamento a cui i loro creatori li sottopongono, prima di diffonderli: un trattamento che serve a nasconderli agli antivirus, mascherandoli in modo da sembrare programmi innocui. Un trattamento che li rende FUD (fully undetectable, cioè introvabili per tutti gli antivirus), oppure UD (undetectable, introvabili solo per alcuni antivirus), come si dice in gergo. Ma che trattamento è?
Per capire meglio, due parole su come fanno gli antivirus a riconoscere i virus.
Quando eseguiamo la scansione di un file con un antivirus, l'antivirus analizza la struttura del file, alla ricerca di particolari porzioni di codice che sono caratteristiche dei virus. Se in un file sono presenti queste parti di codice, allora l'antivirus lo riconosce come virus e ci segnala che il file è infetto. A seconda del tipo di codice che trova, poi, ci saprà anche dire di che tipo di virus si tratti, perché ogni tipo di virus ha caratteristiche diverse e un codice diverso. Gli aggiornamenti dell'antivirus servono proprio a mantenerlo sempre informato sui nuovi tipi di virus e sulle caratteristiche del loro codice: in questo modo, l'antivirus saprà di volta in volta riconoscere le infezioni e rispondere di conseguenza. Possiamo paragonarlo a un esame del sangue: l'antivirus analizza il file, studia al microscopio la sua struttura e, a seconda dei risultati che ottiene sotto certi parametri, ci dirà se il file sia sano oppure malato, ma anche che tipo di malattia abbia. Questo per dirla in modo molto semplice.
Tutto si riconduce, dunque, al codice del virus e alle caratteristiche che lo rendono un virus. Se noi vogliamo che il nostro virus non sia riconosciuto, dovremo pertanto trovare un modo per ingannare l'antivirus e non fargli vedere queste caratteristiche. Dovremo nasconderle.
Il sistema più usato per nascondere un virus consiste proprio nel modificare, oppure nel mascherare, le parti di codice che un antivirus riconosce come virus. Bastano piccole modifiche, che di solito non alterano il funzionamento del virus, ma rendono solo più complicato riconoscerlo. Descrivere le tecniche e i sistemi per nascondere un virus andrebbe al di là degli scopi di questo articolo: chi è capace di farlo, sa già come fare e non ha bisogno che glielo dica io: chi non è capace, che almeno faccia la fatica di impararlo da solo, se proprio vuole divertirsi a infettare gli altri. Vedremo piuttosto come proteggerci dai virus mimetizzati.
Diciamo subito che non c'è un sistema sicuro per proteggersi. Se un virus è stato occultato a regola d'arte, non saremo in grado di localizzarlo, almeno non nei primi giorni: non fino a che un produttore di antivirus non ne avrà ottenuto un esemplare da analizzare e classificare, insomma. La migliore soluzione è dunque prevenire.Per evitare di scaricare files infetti, scarichiamo sempre e solo dai siti ufficiali dei programmi. Le crack sono particolarmente a rischio, perché molto spesso sono utilizzate come veicoli per i trojan e altri virus: se possibile, evitiamole. Non apriamo link o allegati da e-mail sospette, giriamo alla larga da siti sospetti e così via. Le solite raccomandazioni che valgono sempre, per evitare i virus.Possiamo però aggiungerne un'altra. Abbiamo scaricato un file e non sappiamo se sia pulito, oppure se ci sia qualche virus nascosto. Il nostro antivirus lo segnala come pulito, ma possiamo fidarci? Se è una crack per un programma o un videogioco, io direi di no: meglio non fidarsi. Proviamo a sentire il parere di altri antivirus, già che ci siamo. Tra i tanti, uno di loro potrebbe riconoscere un virus nascosto. Come fare?Col sito NoVirusThanks. Si tratta di un sito che ci offre la possibilità di caricare un file, di dimensioni non superiori ai 20 MB, e controllarlo con 24 antivirus diversi. Siccome molti sistemi per nascondere un virus lo rendono introvabile solo per alcuni antivirus, ma non per tutti, controllare un file con molti antivirus diversi può essere sufficiente per scoprire se nasconde qualche "sorpresa".In ogni caso, l'arma migliore è sempre la prevenzione. Evitiamo comportamenti a rischio, files sospetti e siti non sicuri, e le probabilità di trovare un virus invisibile agli antivirus diminuiranno parecchio.