Virus senza file: cosa sono e come combatterli

La prima volta che sono incappato in un virus senza file, ci credevo a stento.
Come fa a esistere un virus senza file? E perché esiste?

Una delle tecniche più sofisticate con cui oggi un virus si può nascondere è quella di non avere un file in cui insidiarsi.
Se infatti un virus è capace di fare il suo (sporco) lavoro stando solo all’interno della memoria RAM senza lasciare tracce in giro… avrà vita facile. Questo perchè gli antivirus che fanno la scansione dei file, difficilmente si accorgeranno di questo virus.
E dopo un riavvio, il virus potrebbe anche sparire se non è legato a un file presente su disco, cosa che rende ancora più complesso tracciarne a posteriori l’attività.

A cosa serve un virus che lavora solo in RAM e non riparte dopo un riavvio?
E’ presto detto: le operazioni che oggi gli hacker e gli spammer fanno sono rapidissime, possono durare poche ore o anche pochi minuti.

Ecco che sulle macchine infettate il virus che gira in RAM per qualche minuto può fare il bello e il cattivo tempo: esegue le sue azioni maligne e poi nessuno lo becca più.
Il virus sarà anche durato poco, ma avrà presumibilmente fatto il lavoro per cui era stato creato.

Ma c’è un altro sistema grazie al quale i virus possono nascondersi dai software antivirus e rintanarsi indisturbati laddove spesso un antivirus non arriva: si pensi al registro di Windows o a qualche virus che scrive nel firmware di dischi e periferiche di archiviazione.

Come si prendono questo tipo di virus?

Un possibile veicolo di infezione sono i sistemi di banner pubblicitari: un banner cracckato (o costruito ad arte) può far eseguire al browser di turno del codice che fa solo in memoria… e il gioco è fatto. Il problema è che raramente ci si accorge di questo tipo di infezioni, tecnicamente note come Malvertising.

Come funzionano questi virus?

Per capire meglio come funzionano questo tipo di virus prendo ad esempio il virus Poweliks che ormai fa parte della “letteratura” dei virus.
Questo virus si nasconde all’interno del registro, all’interno di una chiave “nulla”.

In questo caso viene mandata in esecuzione una versione zombie di dllhost.exe e una versione portable di powershell, quindi praticamente il virus è un amministratore di sistema.

Alla primissima comparsa di questo virus, nessun antivirus era in grado di rilevare la sua presenza in quanto non si trattava di un file, ma appunto si nascondeva dove gli antivirus non avrebbero mai cercato.

Per questo virus particolare, anche se veniva arrestato il processo del virus e tirato giù dalla memoria, al riavvio successivo questo andava in esecuzione in quanto si trovava in una chiave di registro responsabile dell’avvio automatico dei programmi alla partenza del PC.

Come ci si può difendere?

Che la sicurezza sia un processo e la corsa contro l’ultima infezione sia un battaglia infinita è ormai assodato, ma c’è qualcosa che si può fare per arginare i virus che lavorano senza file?

Diciamo che è necessario ricorrere ad antivirus e software di protezione che lavorano e intercettano il malware anche su base comportamentale, ossia che non solo controllino i file (operazione che va sempre bene), ma controllino anche quello che va in memoria, come si comporta la macchina, se la macchina si collega a indirizzi IP ritenuti pericolosi e se l’utente, anche a sua insaputa, apre delle pagine web provenienti da siti che sono in blacklist o classificati come dannosi e fraudolenti.

Anche l’utilizzo di sistemi hardware e software che facciano uso di blacklist dinamiche e sistemi di URL reputation (cioè liste o classifiche che dicano quanto è buono o sospetto un indirizzo internet) possono facilitare il blocco di queste minace.