
» continua
Una delle più innovative, e nel contempo insidiose, fonti per la propagazione del malware è sicuramente stato l'avvento del malware metamorfico. Per comprendere il concetto - ma anche il "cugino", il malware polimorfico - è necessaria una conoscenza di base delle tecniche di crittografia del malware.
I virus "cifrati"
Nel più semplice dei modelli, un virus cifrato consiste in una virus decryption routine (VDR) e in un encrypted virus body (EVB). L'esecuzione di un'applicazione infetta consente al VDR di decifrare l'EVB, che a sua volta permette al virus di raggiungere gli obiettivi per cui è stato creato. Nella fase di propagazione, il virus si cifra di nuovo e si "attacca" a un'altra applicazione host. Una nuova chiave è generata casualmente con ogni copia, alterando in tal modo l'aspetto del codice. Tuttavia, il VDR rimane costante e questa è la sua debolezza intrinseca, perché può portare all'individuazione attraverso il riconoscimento della signature.
I virus polimorfici
Il polimorfismo, che letteralmente vuol dire "cambiamendo d'aspetto”, aggiunge un ulteriore elemento al codice crittografato, un mutation engine (ME), che può essenzialmente modificare il codice di un altro programma, senza variarne la funzionalità.
Per esempio, un ME può modificare il codice di un VDR con ogni replica, pur mantenendo la sua capacità di decifrare l'EVB. La continua alterazione del VDR è ottenuta utilizzando specifiche tecniche, come l'inserimento di codice spazzatura o il riordinamento delle istruzioni. Tuttavia, la conservazione del corpo decifrato del virus è il suo tallone d'Achille, in quanto fornisce una forma di signature complessa. Di conseguenza, le tecniche avanzate, quali la scansione generica di decifratura, l'analisi euristica negativa e l'uso di tecnologie di emulazione e virtualizzazione hanno dimostrato di essere efficaci nei metodi di rilevazione polimorfica.
I virus metaformici
Eliminando le carenze del polimorfismo, il malware metamorfico ha portato i virus mutanti a un livello superiore. Invece di mutare l'EVB e riapplicare una copertura crittografica, il metamorfismo impiega il ME per trasformare il virus stesso. Servendosi di una fase di disassemblaggio, il codice viene rappresentato come un meta-linguaggio che va a definire la "funzione" finale, ignorando il mondo in cui il codice realizza tale funzione. Così, dopo l'analisi, il riassemblaggio e il morphing del codice, il risultato finale è che il nuovo codice non assomiglia assolutamente alla sua originale sintassi, ma è funzionalmente lo stesso.
Il malware metamorfico ha la capacità di alterare completamente il suo codice - e di modificare il proprio modello di segnature - a ogni ciclo e questa è una prova del suo significativo potere di eludere le tecniche antivirus.
Un prototipo di questo tipo è il virus Win32.Metaphor (conosciuto anche come Win32.Etap o Win32/Simile). Questo virus fece la sua comparsa nel 2002, seguito da numerose varianti. Nonostante il suo payload non fosse critico (vari messaggi venivano visualizzati a seconda della data), l'uso delle più innovative e avanzate tecniche metamorfiche ha portato a una notevole propagazione ed elusione degli antivirus.
La combinazione di entry point obscuring (EPO), la permutazione pseudo codificata, la riduzione delle dimensioni, l'analisi antiemulazione della marcatura temporale, routine avanzate di infezione e la compatibilità cross-platform con Linux hanno creato una nuova classe di malware, che rappresenta una minaccia di livello superiore con codice non metamorfico.
I rimedi
Anche se non esistono metodologie definitive e onnicomprensive per il rilevamento di questa classe di malware che è in continua evoluzione, l'identificazione è comunque possibile. Il metamorfismo rivela la sua intrinseca debolezza dovuta alla necessità di autoanalisi: è infatti in grado di analizzare il proprio codice, quindi in teoria può essere analizzato anche da altri programmi.
Per esaminare euristicamente le funzioni post-morfiche del codice sono stati sviluppati efficaci metodi utilizzando tecniche di emulazione. Inoltre, continua a crescere la ricerca di metodi quali i sistemi automatizzati di replica, la somiglianza tra gli indici, l'analisi geometrica e il rintracciamento degli emulatori.
Nonostante gli avanzamenti nell'individuazione e nella prevenzione, i creatori di virus stanno dando vita a più sofisticati ed efficienti motori di mutazione e a nuove tecniche di oscuramento. Fino a quando non sarà sviluppato un metodo per l'identificazione definitiva, nuove forme di codice metamorfico continueranno a propagarsi e rappresenteranno una sfida per la comunità delle sicurezza.
La protezione da un qualsiasi tipo di malware metamorfico utilizzando un approccio multilivello è il modo migliore per affrontare le minacce alla gestione della piattaforma. Software antivirus aggiornati di frequente, restrizioni dell'accesso remoto e il rispetto del monitoraggio dovrebbero essere impiegati sia a livello di server sia di utente finale.
Rete e firewall personali dovrebbero blocare ogni porta di servizio non utilizzata. I server di posta elettronica dovrebbero utilizzare filtri per i contenuti ed eseguire la scansione dei file. Infine, dovrebbe essere sviluppato, applicato, mantenuto e fatto rispettare un preciso ed efficace insieme di policy di sicurezza. In situazioni estreme, quando si tratta di dati particolarmente sensibili, possono essere prese in considerazione misure di sicurezza supplementari, come l'analisi dell'emulazione in tempo reale e la segmentazione di rete specializzate.
