SlideShare a Scribd company logo
1 of 10
Download to read offline
Coevoluzione di malware e anti-malware su mobile
1. INTRODUZIONE
I dispositivi mobili sono diventati parte integrante della vita quotidiana. Tuttavia, la
popolarità e l’utilizzo di questi dispositivi attrae i creatori di malware affinchè ne sviluppino
per attaccarli. Secondo un report di Kaspersky, 884.774 nuovi malware sono stati creati
nel 2015, tre volte tanto quelli del 2014. Symantec ha anche riportato che nel 2015 c’è
stato uno zero-day attack a settimana.
Dunque, affinchè si possano proteggere i dispositivi mobili da queste minacce, i ricercatori e
le società di sicurezza, stanno lavorando allo sviluppo di sistemi anti-malware efficaci ed
efficienti.
Ci sono alcune tecniche per l’analisi e il rilevamento dei malware con efficacia diversa. Due
tipi di tecniche di rilevamento, secondo come il codice viene analizzato, sono l’analisi
dinamica e l’analisi statica. Dato che l’analisi dinamica non può essere eseguita sui
dispositivi mobili a causa di limitazioni in termini di batteria, la stragrande maggioranza
dei metodi proposti nella letteratura si basano sull’analisi statica. Proprio per questo, negli
ultimi anni, gli attaccanti si sono focalizzati sullo sfruttamento delle vulnerabilità
degli strumenti di analisi statica.
La ricerca del perché gli anti-malware siano efficaci contro gli attacchi conosciuti e
sconosciuti, richiede comunque uno studio ulteriore e costituite il primo obiettivo del corrente
documento. Secondariamente, si vuole esplorare lo sviluppo automatico di un anti-
malware, che sia robusto sia contro gli attacchi noti, che con le loro varianti.
È possibile, dunque, suddividere il flusso dello studio in tre sezioni principali:
• evoluzione dei malware mobile
• evoluzione degli anti-malware mobile
• coevoluzione di malware e anti-malware
I ricercatori hanno creato nuovi malware e varianti di malware noti usando il Genetic
Programming (GP) affinché si possa emulare l’evoluzione dei malware mobile e dunque
valutare le prestazioni degli strumenti di analisi già esistenti.
L’obiettivo è generare automaticamente dei nuovi malware che possano essere
usati per rafforzare gli strumenti di analisi.
Gli scrittori dei malware puntano al loro obiettivo in modo che non possano essere rilevati,
usando efficaci strategie evasive come l’offuscamento e la cifratura. Con l’introduzione
di nuovi anti-malware, gli scrittori di malware cercano di evaderli, andando a costruire un
loop. Questo ciclo definisce esattamente il meccanismo di coevoluzione tra malware e
anti-malware, con uno che compete e supera l’altro.
Tipicamente, si richiede un esperto in sicurezza per analizzare il codice ed estrarre i
parametri che possano determinare delle varianti del malware, quindi attraverso il
GP si può creare una rappresentazione del problema. Inoltre, attraverso delle tecniche
di elaborazione coevoluzionale, si sono generati dei sistemi di rilevamento più robusti, che a
loro volta hanno generato sistemi evasivi più sofisticati. Questo approccio ha generato un
malware altamente evasivo, rispetto ai risultati ottenuto con Zelix KlassMaster, un
noto Java Bytecode Obfuscator.
2. MALWARE EVOLUTION: APPROCCIO
Ci sono diversi studi che valutano un anti-malware contro le tecniche di
offuscamento su piattaforme Android. Sono presentate di seguito:
• un sistema di nome ADAM che valuta l’efficacia di sistemi anti-malware contro
campioni malware generati usando tecniche di offuscamento ma preservandone
le funzioni originali [Zheng]
• un sistema di nome DroidCharmeleon che valuta un anti-malware contro
l’offuscamento andando a mutare automaticamente le applicazioni Android
usando tecniche polimorfiche e metamorfiche [Rastogi]
• tecnica basata sulla trasformazione del codice sorgente per creare dei campioni di test
per sistemi di rilevamento di malware su desktop; questa tecnica valuta la resilienza
dell’anti-malware rispetto a varie tecniche di offuscamento [Christodorescu]
• valutazione e testing su come l’anti-malware protegge i dispositivi contro minacce
note; i risultati indicano che tutti i quattro sistemi anti-malware testati producono
un alto tasso di falsi negativi dovuti ai semplici algoritmi di firma impiegati
nei sistemi di rilevamento [Morales]
• malware detector basato su firme semantiche con l’uso di un model checking per il
rilevamento; questo metodo ha dimostrato che l’analisi statica, da sola, non basta
a rilevare i malware e dovrebbe essere accompagnate dalle tecniche
dinamiche [Moser]
3. ANTI-MALWARE EVOLUTION: APPROCCIO
Al fine di coprire il rapido aumento dei malware mobile, molte compagnie hanno introdotto
le loro soluzioni di sicurezza, basate principalmente sull’analisi statica. Tipicamente le
tecniche usate sono:
• rilevamento di app sovraprivilegiate analizzando le chiamate alle API [Felt]
• rilevamento di malware adottando una analisi statica basata sui permessi [Kirin]
• utilizzo di permessi, chiamate API, indirizzi di rete per differenziare software
benigni da software maligni, attraverso tecniche di machine learning [Drebin]
Le applicazioni ad alto e medio rischio sono determinate in una analisi di primo ordine e le
applicazioni che usano offuscamento, cifratura o tecniche di loading dinamico
delle classi vengono estratte da quelle a rischio, in un’analisi di secondo ordine.
Vengono impiegate diverse tecniche di machine learning per la rilevazione dei malware. Un
recente studio sul tema ha impiegato la programmazione genetica assieme a tecniche ben
note quali Support Vector Machine, Bayesian Network, Decision Tree e Artificial
Neural Network. Ciononostante, allo stato attuale esistono solo tre studi che propongo un
sistema di rilevamento delle intrusioni usando l’elaborazione coevoluzionale
(coevolutionary computation).
4. MALWARE EVOLUTION
Lo studio attuale utilizzate la GP per generare malware nuovi e ogni a partire da quelli già
presenti. La figura mostra lo schema di malware evolution.
Inizialmente, i file apk vengono convertiti nei loro codici sorgenti. Vengono usati file smali,
in quanto permettono la conversione di file sorgenti modificati. Effettivamente, Smali può
essere visto come l’Assembly di Dalvix, la Java VM di Android. Va fatto notare
che la conversione in apk è essenziale per valutare i malware generati sugli emulatori dei
dispositivi.
I file Smali sono simili alle classi Java e si compongono di metodi. I Call Graph (CG) di
Smali sono estratti tramite un convertitore. I CG sono grafi di controllo che
rappresentano tutti i cammini che possono essere attraversati durante
l’esecuzione. Ogni CG corrisponde a un albero, ogni metodo è rappresentato da un nodo e
gli archi indicano il flusso tra ogni metodo. Ogni applicazione è rappresentata da un
individuo nel GP e ogni individuo ha alberi di diverse dimensioni in quanto ogni
apk ha un numero variabile di funzioni.
La Genetic Programming è un algoritmo di ricerca population-based ispirata
all’evoluzione naturale. Comincia con una generica popolazione di individui random, che
rappresentano i candidati per la soluzione del problema. Quindi, ogni individuo viene
valutato e riceve un fitness value, che indica quanto sia efficace nel risolvere il
problema e quanto sia vicino alla soluzione. Finchè non viene soddisfatto un criterio
di stop, viene generata nuova popolazione iterativamente usando selezione, crossover e
mutation.
Ogni individuo rappresenta una applicazione Android nel GP. La popolazione iniziale
consiste di malware generici. Il principale obiettivo è quello di creare malware più evasivi
ad ogni generazione applicando gli operatori genetici su di essi. Questi vengono
applicati ai CG, quindi vengono ricreati i file smali e apk.
Dopodichè, gli apk vengono firmati con keyytool e jarsigner, quindi inviati all’emulatore
per calcolare il fitness value, che mostra il grado di evasività del nuovo malware
generato. Per valutarlo nella sua totalità, vengono usati sei diversi emulatori con diversi
sistemi anti-malware basati su tecniche di ML. Mentre gli anti-malware lavorano sugli
attributi statici dell’applicazione, i sistemi basati su ML estraggono le feature dinamiche
dell’applicazione eseguendole su un emulatore per un tempo di dieci minuti.
Un nuovo malware viene eseguito su ogni emulatore separatamente e etichettato come
benigno o maligno dal sistema. L’obiettivo di questo processo è generare un malware che
evada tutti gli anti-malware andando a decrementare il fitness value ad ogni
generazione. Il fitness value è calcolato come il rapporto tra il numero di sistemi che
identificano il software generato come malware e il numero di sistemi totali.
Dato che è difficile ottenere un valore ideale in questo approccio, il GP termina quando si
raggiunge una generazione predeterminata.
4.1 OPERATORI GENETICI
CROSSOVER: Questa operazione scambia gli individui dei sottoalberi. Per ottenere degli
eseguibili, i subtree devono essere compatibili tra di loro. Pertanto, si scambiano solo
metodi che hanno la stessa dichiarazione, lo stesso numero di parametri e lo
stesso tipo ritornato. Questo permette la creazione di nuovi malware a partire da quelli
già esistenti.
Tuttavia, dato che un alto crossover rate incrementa il numero di individui non eseguibili,
questa operazione viene effettuata a un basso rate (0.1). Il crossover, inoltre, garantisce
cambiamenti nelle firme dei malware attraverso lo scambio di codice e ciò
contribuisce al miglioramento dell’evasività.
Sebben il metodo sviluppato abbia un alto grado di accuratezza (97,61%), potrebbe non
rilevare malware lanciato durante i dieci minuti di tempo. Se l’applicazione non è né
eseguibile né malevola, viene assegnato il peggior fitness value (1.0) in modo da
eliminarla dalla prossima generazione.
MUTATION: Questo operatore cambia degli individui selezionati per introdurre della
diversità nella popolazione. Vengono adottate sei tecniche di offuscamento sui subtree di
indivui scelti casualmente. Tali tecniche hanno lo scopo di generare malware diversi
preservandone le funzionalità originali:
• Rename Local Identifier
• junk Code Insertion
• Data Encryption
• Two-fold Code Reordering
• Three-fold Code Reordering
• Register Realignment
4.2 FITNESS FUNCTION
Dato che la fitness function definisce quanto un individuo sia vicino alla soluzione del
problema, definire una buona funzione è molto importante per il GP. Innanzitutto, si effettua
una valutazione per accertarsi che il malware sia eseguibile e presenti
comportamenti malevoli secondo il sistema di rilevamento ML-Based. Se ciò non
è verificato, viene assegnato il peggior fitness value all’individuo.
Quindi, la fitness function usa gli output dei sei sistemi anti-malware.
La tabella mostra gli anti-malware usati. Ognuno di essi è eseguito su un emulatore diverso.
Ogni individuo viene eseguito per un minuto, tempo necessario ad avere dei risultati.
Se un output non può essere ottenuto per un individuo, allora l’anti-malware che non ha
generato il risultato, non viene preso in considerazione nella fitness function per
quell’individuo di quella generazione.
Il fitness value è definito come segue:
𝐹𝐹𝐹𝐹 =
#𝑎𝑎𝑎𝑎𝑎𝑎𝑎𝑎 𝑎𝑎𝑎𝑎𝑎𝑎 𝑎𝑎𝑎𝑎𝑎𝑎𝑎𝑎 𝑑𝑑𝑑𝑑𝑑𝑑𝑑𝑑𝑑𝑑𝑑𝑑𝑑𝑑𝑑𝑑𝑑𝑑 𝑡𝑡ℎ𝑒𝑒 𝑚𝑚𝑚𝑚𝑚𝑚𝑚𝑚𝑚𝑚𝑚𝑚𝑚𝑚
𝑡𝑡𝑡𝑡𝑡𝑡𝑡𝑡𝑡𝑡 # 𝑜𝑜𝑜𝑜 𝑠𝑠𝑠𝑠𝑠𝑠𝑠𝑠𝑠𝑠𝑠𝑠𝑠𝑠
Il valore è compreso tra 0 e 1, con 0 miglior valore che indica che il malware ha eluso
tutti i controlli di tutti i sistemi. Quando il valore è 1, invece, significa che il malware
è stato rilevato da ogni sistema, non è eseguibile o non è malevolo.
5. ANTI-MALWARE EVOLUTION
Inizialmente, sono state usate delle tecniche di Reverse Engineering sulle applicazioni di
Google Play e MalGenome Project. Esse sono state analizzate per estrapolare delle
feature distinguibili, sulla cui base si è effettuata l’evoluzione dell’anti-malware, tramite GP.
5.1 FEATURES
Innanzitutto, sono state estratte le chiamate API e i permessi per ogni applicazione, in
quanto sono gli elementi principali considerati in una analisi statica.
Successivamente, è stata determinata la differenza tra il numero di applicazioni lecite e
malevole che usano quelle API, e se ne sono selezionate le prime 100, in ordine decrescente.
I 40 permessi più discriminativi sono stati selezionati nello stesso modo.
Allo stesso tempo, sono state considerate sei ulteriori feature:
• numero di chiamate API legate al DexClassLoader usato per caricare il codice
a runtime
• numero di chiamate API legati a Crypto, per cifrare il codice
• numero di classi
• numero di goto
• numero di metodi
• numero di permessi
Un individuo, in questo caso, è un albero con le 146 feature sopracitate come nodi terminali
e alcuni operatori come nodi non terminali. Ogni individuo produce un costrutto if, nel
determinare la pericolosità di una applicazione che sta venendo analizzata.
Nella fase di crossover, si creano nuovi costrutti if e nella fase di mutation, si genera un
ultimo nuovo costrutto if andando a mutare una parte casuale dell’albero.
5.2 FITNESS
Il fitness value è calcolato in base al rate di falsi positivi e veri positivi. Il true positive
rate è il rapporto tra le applicazioni denotate come malevoli rispetto a tutte le applicazioni
malevoli; il false positive rate, invece, è il rapporto di tutte le applicazioni classificate
come malevoli, rispetto a tutte le applicazioni lecite.
Dato che il malware evoluto ha ottenuto dei risultati di detection rate del 100%, con un
elevato tasso di false positive, si è incrementato il peso dei falsi positivi nella fitness function.
6. MOBILE MALWARE/ANTI-MALWARE COEVOLUTION
La coevoluzione è la migliore evoluzione degli individui tra diverse specie che si
influenzano a vicenda. Quando una specie evolve, cambia anche la relazione con l’altra
specie. Questa mutua relazione si evolve a sua volta, lungo le diverse generazioni.
Quando questa filosofia è applicata all’informatica, la coevoluzione è usata in quei
problemi che puntano a migliorare diversi sistemi contemporaneamente. Questi
problemi possono essere cooperativi o competitivi: molti problemi nel campo della sicurezza
sono competitivi e sono noti come arms race. Ci sono risorse limitate in ambienti
competitivi e le specie competono tra loro per accaparrarsele.
In un problema competitivo, mentre il fitness value di una specie aumenta, quello
dell’altra specie diminuisce, e viceversa. In questo studio, mentre il malware cerca di
sopravvivere all’anti-malware, quest’ultimo cerca di rilevarlo. L’algoritmo di elaborazione
coevoluzionale viene eseguito finchè non viene ottenuto il miglior individuo oppure si
raggiunge il massimo numero di generazioni consentite (200 generazioni al massimo).
7. PRESTAZIONI DEL MALWARE COEVOLUTO
La tabella mostra i detection rate degli anti-malware commerciali sul malware coevoluto.
Dato che alcuni aspetti evoluzionistici sono stocastici, l’algoritmo viene tipicamente
eseguito un numero di volte n e viene restituito il miglior individuo in output.
Per questo, viene considerato il miglior individuo per ogni famiglia di malware e si può notare
come esso sia capace di sfuggire ai controlli delle soluzioni commerciali.
La tabella seguente, mostra il miglior individuo per ogni famiglia:
• O: malware originale
• C: malware coevoluto
• V : malware rilevato
I risultati mostrano che le soluzioni commerciali sono robuste a diverse famiglie e le
differenze sono imputabili principalmente ai loro metodi di firma e ai loro
database, non disponibili pubblicamente.
Dato che il malware coevoluto è stato valuto sia rispetto alle soluzioni commerciali che
rispetto all’anti-malware coevoluto, si può dire che il meccanismo di coevoluzione ha il
potenziale di sviluppare un malware molto più evasivo rispetto al metodo
evolutivo tradizionale. È necessario far presente che gli anti-malware coevoluti sono stati
testati solo sui malware coevoluti (e che non si sono coevoluti insieme).
È difficile avere un sistema di rilevamento con un perfetto detection rate e un perfetto
false positive rate ed è pertanto necessario impostare un trade-off.
8. PRESTAZIONI DELL’ANTI-MALWARE COEVOLUTO
Il sistema proposto è stato testato anche su nuove varianti di malware già esistenti. Ci sono
tecniche ovvie che funzionano solo sulle stringhe ma altre non banali che funzionano sia sulle
stringhe che sui bytecode degli eseguibili.
L’anti-malware coevoluto rileva la maggior parte dei malware offuscati, anche quello
attraverso la Class Encryption, che cifra e comprime ogni classe ed è la tecnica di
offuscamento più avanzata.

More Related Content

Similar to Coevoluzione di malware e anti malware con algoritmi genetici

Servizi di Sicurezza Gestiti
Servizi di Sicurezza GestitiServizi di Sicurezza Gestiti
Servizi di Sicurezza GestitiAndrea Cirulli
 
B wave Brochure Servizi di Sicurezza Gestiti
B wave Brochure Servizi di Sicurezza GestitiB wave Brochure Servizi di Sicurezza Gestiti
B wave Brochure Servizi di Sicurezza GestitiAndrea Cirulli
 
Progetti Open Source Per La Sicurezza Delle Web Applications
Progetti Open Source Per La Sicurezza Delle Web ApplicationsProgetti Open Source Per La Sicurezza Delle Web Applications
Progetti Open Source Per La Sicurezza Delle Web ApplicationsMarco Morana
 
Extended Summary Of "MadDroid: Characterizing and Detecting Devious Ad Conten...
Extended Summary Of "MadDroid: Characterizing and Detecting Devious Ad Conten...Extended Summary Of "MadDroid: Characterizing and Detecting Devious Ad Conten...
Extended Summary Of "MadDroid: Characterizing and Detecting Devious Ad Conten...AndreaPausig
 
Come Decriptare MedusaLocker E Quanto Costa Recuperare I Dati.pdf
Come Decriptare MedusaLocker E Quanto Costa Recuperare I Dati.pdfCome Decriptare MedusaLocker E Quanto Costa Recuperare I Dati.pdf
Come Decriptare MedusaLocker E Quanto Costa Recuperare I Dati.pdfHelpRansomware
 
HelpRansomware per Il Sole 24 Ore - Focus Cybersecurity.pdf
HelpRansomware per Il Sole 24 Ore - Focus Cybersecurity.pdfHelpRansomware per Il Sole 24 Ore - Focus Cybersecurity.pdf
HelpRansomware per Il Sole 24 Ore - Focus Cybersecurity.pdfHelpRansomware
 
Qual È La Migliore Protezione Ransomware E Come Attivarla Su Windows.pdf
Qual È La Migliore Protezione Ransomware E Come Attivarla Su Windows.pdfQual È La Migliore Protezione Ransomware E Come Attivarla Su Windows.pdf
Qual È La Migliore Protezione Ransomware E Come Attivarla Su Windows.pdfHelpRansomware
 
Spyware: Cos’è, Come Funziona E Come Si Elimina [GUIDA].pdf
Spyware: Cos’è, Come Funziona E Come Si Elimina [GUIDA].pdfSpyware: Cos’è, Come Funziona E Come Si Elimina [GUIDA].pdf
Spyware: Cos’è, Come Funziona E Come Si Elimina [GUIDA].pdfHelpRansomware
 
Summary of "MalNet: A binary-centric network-level profiling of IoT Malware"
Summary of "MalNet: A binary-centric network-level profiling of IoT Malware"Summary of "MalNet: A binary-centric network-level profiling of IoT Malware"
Summary of "MalNet: A binary-centric network-level profiling of IoT Malware"DanieleMaijnelli
 
HelpRansomware garanzia totale del recupero dati La Repubblica.pdf
HelpRansomware garanzia totale del recupero dati La Repubblica.pdfHelpRansomware garanzia totale del recupero dati La Repubblica.pdf
HelpRansomware garanzia totale del recupero dati La Repubblica.pdfHelpRansomware
 
Cyber risks impatti, valutazioni e ragioni light
Cyber risks impatti, valutazioni e ragioni lightCyber risks impatti, valutazioni e ragioni light
Cyber risks impatti, valutazioni e ragioni lightRedazione InnovaPuglia
 
EVENTO PARADIGMA
EVENTO PARADIGMAEVENTO PARADIGMA
EVENTO PARADIGMASWASCAN
 
Per i virus cattivi ci vuole un antivirus buono - by Achab - festival ICT 2015
Per i virus cattivi ci vuole un antivirus buono - by Achab - festival ICT 2015Per i virus cattivi ci vuole un antivirus buono - by Achab - festival ICT 2015
Per i virus cattivi ci vuole un antivirus buono - by Achab - festival ICT 2015festival ICT 2016
 
Qualità del Software
Qualità del SoftwareQualità del Software
Qualità del SoftwareYeser Rema
 
Come Decriptare File Ransomware E Recuperare I Tuoi Dati [2022].pdf
Come Decriptare File Ransomware E Recuperare I Tuoi Dati [2022].pdfCome Decriptare File Ransomware E Recuperare I Tuoi Dati [2022].pdf
Come Decriptare File Ransomware E Recuperare I Tuoi Dati [2022].pdfHelpRansomware
 
GDPR & GDPR - Confindustria Ravenna - Alessandro Rani
GDPR & GDPR - Confindustria Ravenna - Alessandro RaniGDPR & GDPR - Confindustria Ravenna - Alessandro Rani
GDPR & GDPR - Confindustria Ravenna - Alessandro RaniAdalberto Casalboni
 
Progetto e sviluppo di un sistema di rilevamento di anomalie su sistemi infor...
Progetto e sviluppo di un sistema di rilevamento di anomalie su sistemi infor...Progetto e sviluppo di un sistema di rilevamento di anomalie su sistemi infor...
Progetto e sviluppo di un sistema di rilevamento di anomalie su sistemi infor...MichaelFuser
 

Similar to Coevoluzione di malware e anti malware con algoritmi genetici (20)

Infosecurity 2008
Infosecurity 2008Infosecurity 2008
Infosecurity 2008
 
Servizi di Sicurezza Gestiti
Servizi di Sicurezza GestitiServizi di Sicurezza Gestiti
Servizi di Sicurezza Gestiti
 
B wave Brochure Servizi di Sicurezza Gestiti
B wave Brochure Servizi di Sicurezza GestitiB wave Brochure Servizi di Sicurezza Gestiti
B wave Brochure Servizi di Sicurezza Gestiti
 
Progetti Open Source Per La Sicurezza Delle Web Applications
Progetti Open Source Per La Sicurezza Delle Web ApplicationsProgetti Open Source Per La Sicurezza Delle Web Applications
Progetti Open Source Per La Sicurezza Delle Web Applications
 
Extended Summary Of "MadDroid: Characterizing and Detecting Devious Ad Conten...
Extended Summary Of "MadDroid: Characterizing and Detecting Devious Ad Conten...Extended Summary Of "MadDroid: Characterizing and Detecting Devious Ad Conten...
Extended Summary Of "MadDroid: Characterizing and Detecting Devious Ad Conten...
 
Come Decriptare MedusaLocker E Quanto Costa Recuperare I Dati.pdf
Come Decriptare MedusaLocker E Quanto Costa Recuperare I Dati.pdfCome Decriptare MedusaLocker E Quanto Costa Recuperare I Dati.pdf
Come Decriptare MedusaLocker E Quanto Costa Recuperare I Dati.pdf
 
HelpRansomware per Il Sole 24 Ore - Focus Cybersecurity.pdf
HelpRansomware per Il Sole 24 Ore - Focus Cybersecurity.pdfHelpRansomware per Il Sole 24 Ore - Focus Cybersecurity.pdf
HelpRansomware per Il Sole 24 Ore - Focus Cybersecurity.pdf
 
Qual È La Migliore Protezione Ransomware E Come Attivarla Su Windows.pdf
Qual È La Migliore Protezione Ransomware E Come Attivarla Su Windows.pdfQual È La Migliore Protezione Ransomware E Come Attivarla Su Windows.pdf
Qual È La Migliore Protezione Ransomware E Come Attivarla Su Windows.pdf
 
Spyware: Cos’è, Come Funziona E Come Si Elimina [GUIDA].pdf
Spyware: Cos’è, Come Funziona E Come Si Elimina [GUIDA].pdfSpyware: Cos’è, Come Funziona E Come Si Elimina [GUIDA].pdf
Spyware: Cos’è, Come Funziona E Come Si Elimina [GUIDA].pdf
 
Summary of "MalNet: A binary-centric network-level profiling of IoT Malware"
Summary of "MalNet: A binary-centric network-level profiling of IoT Malware"Summary of "MalNet: A binary-centric network-level profiling of IoT Malware"
Summary of "MalNet: A binary-centric network-level profiling of IoT Malware"
 
HelpRansomware garanzia totale del recupero dati La Repubblica.pdf
HelpRansomware garanzia totale del recupero dati La Repubblica.pdfHelpRansomware garanzia totale del recupero dati La Repubblica.pdf
HelpRansomware garanzia totale del recupero dati La Repubblica.pdf
 
Cyber risks impatti, valutazioni e ragioni light
Cyber risks impatti, valutazioni e ragioni lightCyber risks impatti, valutazioni e ragioni light
Cyber risks impatti, valutazioni e ragioni light
 
EVENTO PARADIGMA
EVENTO PARADIGMAEVENTO PARADIGMA
EVENTO PARADIGMA
 
Per i virus cattivi ci vuole un antivirus buono - by Achab - festival ICT 2015
Per i virus cattivi ci vuole un antivirus buono - by Achab - festival ICT 2015Per i virus cattivi ci vuole un antivirus buono - by Achab - festival ICT 2015
Per i virus cattivi ci vuole un antivirus buono - by Achab - festival ICT 2015
 
Antivirus & Antivirus Evasion
Antivirus & Antivirus EvasionAntivirus & Antivirus Evasion
Antivirus & Antivirus Evasion
 
Qualità del Software
Qualità del SoftwareQualità del Software
Qualità del Software
 
Come Decriptare File Ransomware E Recuperare I Tuoi Dati [2022].pdf
Come Decriptare File Ransomware E Recuperare I Tuoi Dati [2022].pdfCome Decriptare File Ransomware E Recuperare I Tuoi Dati [2022].pdf
Come Decriptare File Ransomware E Recuperare I Tuoi Dati [2022].pdf
 
GDPR & GDPR - Confindustria Ravenna - Alessandro Rani
GDPR & GDPR - Confindustria Ravenna - Alessandro RaniGDPR & GDPR - Confindustria Ravenna - Alessandro Rani
GDPR & GDPR - Confindustria Ravenna - Alessandro Rani
 
Sicurezza nelle web apps
Sicurezza nelle web appsSicurezza nelle web apps
Sicurezza nelle web apps
 
Progetto e sviluppo di un sistema di rilevamento di anomalie su sistemi infor...
Progetto e sviluppo di un sistema di rilevamento di anomalie su sistemi infor...Progetto e sviluppo di un sistema di rilevamento di anomalie su sistemi infor...
Progetto e sviluppo di un sistema di rilevamento di anomalie su sistemi infor...
 

More from Antonio Tandoi

Cibi omonimi a personaggi storici
Cibi omonimi a personaggi storiciCibi omonimi a personaggi storici
Cibi omonimi a personaggi storiciAntonio Tandoi
 
La Rosa Bianca, i ragazzi che si opposero a Hitler
La Rosa Bianca, i ragazzi che si opposero a HitlerLa Rosa Bianca, i ragazzi che si opposero a Hitler
La Rosa Bianca, i ragazzi che si opposero a HitlerAntonio Tandoi
 
Dante in veste di medico - La medicina nella Divina Commedia
Dante in veste di medico - La medicina nella Divina CommediaDante in veste di medico - La medicina nella Divina Commedia
Dante in veste di medico - La medicina nella Divina CommediaAntonio Tandoi
 
La seconda guerra punica - Storia completa
La seconda guerra punica - Storia completaLa seconda guerra punica - Storia completa
La seconda guerra punica - Storia completaAntonio Tandoi
 
Grecia contro Cartagine: la battaglia di Hymera
Grecia contro Cartagine: la battaglia di HymeraGrecia contro Cartagine: la battaglia di Hymera
Grecia contro Cartagine: la battaglia di HymeraAntonio Tandoi
 
Storia dei simboli matematici
Storia dei simboli matematiciStoria dei simboli matematici
Storia dei simboli matematiciAntonio Tandoi
 
Situazione politica del Venezuela
Situazione politica del VenezuelaSituazione politica del Venezuela
Situazione politica del VenezuelaAntonio Tandoi
 
Dispensa di Cyber Security
Dispensa di Cyber SecurityDispensa di Cyber Security
Dispensa di Cyber SecurityAntonio Tandoi
 
Il sistema visivo umano
Il sistema visivo umanoIl sistema visivo umano
Il sistema visivo umanoAntonio Tandoi
 
Il modello standard della materia
Il modello standard della materiaIl modello standard della materia
Il modello standard della materiaAntonio Tandoi
 
Funzionamento della Scala Richter
Funzionamento della Scala RichterFunzionamento della Scala Richter
Funzionamento della Scala RichterAntonio Tandoi
 
Un sistema di video streaming per contenuti streaming immersivi e riduzione d...
Un sistema di video streaming per contenuti streaming immersivi e riduzione d...Un sistema di video streaming per contenuti streaming immersivi e riduzione d...
Un sistema di video streaming per contenuti streaming immersivi e riduzione d...Antonio Tandoi
 
Tcp Westwood - Stima della banda
Tcp Westwood - Stima della bandaTcp Westwood - Stima della banda
Tcp Westwood - Stima della bandaAntonio Tandoi
 
Tcp - Congestion avoidance and control
Tcp - Congestion avoidance and controlTcp - Congestion avoidance and control
Tcp - Congestion avoidance and controlAntonio Tandoi
 
Page ranking - Portare ordine sul web
Page ranking - Portare ordine sul webPage ranking - Portare ordine sul web
Page ranking - Portare ordine sul webAntonio Tandoi
 
Ingegneria della conoscenza
Ingegneria della conoscenzaIngegneria della conoscenza
Ingegneria della conoscenzaAntonio Tandoi
 

More from Antonio Tandoi (20)

Cibi omonimi a personaggi storici
Cibi omonimi a personaggi storiciCibi omonimi a personaggi storici
Cibi omonimi a personaggi storici
 
La Rosa Bianca, i ragazzi che si opposero a Hitler
La Rosa Bianca, i ragazzi che si opposero a HitlerLa Rosa Bianca, i ragazzi che si opposero a Hitler
La Rosa Bianca, i ragazzi che si opposero a Hitler
 
Dante in veste di medico - La medicina nella Divina Commedia
Dante in veste di medico - La medicina nella Divina CommediaDante in veste di medico - La medicina nella Divina Commedia
Dante in veste di medico - La medicina nella Divina Commedia
 
La corsa al Polo Sud
La corsa al Polo SudLa corsa al Polo Sud
La corsa al Polo Sud
 
La seconda guerra punica - Storia completa
La seconda guerra punica - Storia completaLa seconda guerra punica - Storia completa
La seconda guerra punica - Storia completa
 
Grecia contro Cartagine: la battaglia di Hymera
Grecia contro Cartagine: la battaglia di HymeraGrecia contro Cartagine: la battaglia di Hymera
Grecia contro Cartagine: la battaglia di Hymera
 
Storia dei simboli matematici
Storia dei simboli matematiciStoria dei simboli matematici
Storia dei simboli matematici
 
Situazione politica del Venezuela
Situazione politica del VenezuelaSituazione politica del Venezuela
Situazione politica del Venezuela
 
Dispensa di Cyber Security
Dispensa di Cyber SecurityDispensa di Cyber Security
Dispensa di Cyber Security
 
Dispensa di PL-SQL
Dispensa di PL-SQLDispensa di PL-SQL
Dispensa di PL-SQL
 
Il sistema visivo umano
Il sistema visivo umanoIl sistema visivo umano
Il sistema visivo umano
 
Il modello standard della materia
Il modello standard della materiaIl modello standard della materia
Il modello standard della materia
 
Funzionamento della Scala Richter
Funzionamento della Scala RichterFunzionamento della Scala Richter
Funzionamento della Scala Richter
 
Un sistema di video streaming per contenuti streaming immersivi e riduzione d...
Un sistema di video streaming per contenuti streaming immersivi e riduzione d...Un sistema di video streaming per contenuti streaming immersivi e riduzione d...
Un sistema di video streaming per contenuti streaming immersivi e riduzione d...
 
Tcp Westwood - Stima della banda
Tcp Westwood - Stima della bandaTcp Westwood - Stima della banda
Tcp Westwood - Stima della banda
 
Tcp - Congestion avoidance and control
Tcp - Congestion avoidance and controlTcp - Congestion avoidance and control
Tcp - Congestion avoidance and control
 
QR Code Security
QR Code SecurityQR Code Security
QR Code Security
 
Page ranking - Portare ordine sul web
Page ranking - Portare ordine sul webPage ranking - Portare ordine sul web
Page ranking - Portare ordine sul web
 
Descrizione di NO-SQL
Descrizione di NO-SQLDescrizione di NO-SQL
Descrizione di NO-SQL
 
Ingegneria della conoscenza
Ingegneria della conoscenzaIngegneria della conoscenza
Ingegneria della conoscenza
 

Coevoluzione di malware e anti malware con algoritmi genetici

  • 1. Coevoluzione di malware e anti-malware su mobile 1. INTRODUZIONE I dispositivi mobili sono diventati parte integrante della vita quotidiana. Tuttavia, la popolarità e l’utilizzo di questi dispositivi attrae i creatori di malware affinchè ne sviluppino per attaccarli. Secondo un report di Kaspersky, 884.774 nuovi malware sono stati creati nel 2015, tre volte tanto quelli del 2014. Symantec ha anche riportato che nel 2015 c’è stato uno zero-day attack a settimana. Dunque, affinchè si possano proteggere i dispositivi mobili da queste minacce, i ricercatori e le società di sicurezza, stanno lavorando allo sviluppo di sistemi anti-malware efficaci ed efficienti. Ci sono alcune tecniche per l’analisi e il rilevamento dei malware con efficacia diversa. Due tipi di tecniche di rilevamento, secondo come il codice viene analizzato, sono l’analisi dinamica e l’analisi statica. Dato che l’analisi dinamica non può essere eseguita sui dispositivi mobili a causa di limitazioni in termini di batteria, la stragrande maggioranza dei metodi proposti nella letteratura si basano sull’analisi statica. Proprio per questo, negli ultimi anni, gli attaccanti si sono focalizzati sullo sfruttamento delle vulnerabilità degli strumenti di analisi statica. La ricerca del perché gli anti-malware siano efficaci contro gli attacchi conosciuti e sconosciuti, richiede comunque uno studio ulteriore e costituite il primo obiettivo del corrente documento. Secondariamente, si vuole esplorare lo sviluppo automatico di un anti- malware, che sia robusto sia contro gli attacchi noti, che con le loro varianti. È possibile, dunque, suddividere il flusso dello studio in tre sezioni principali: • evoluzione dei malware mobile • evoluzione degli anti-malware mobile • coevoluzione di malware e anti-malware I ricercatori hanno creato nuovi malware e varianti di malware noti usando il Genetic Programming (GP) affinché si possa emulare l’evoluzione dei malware mobile e dunque valutare le prestazioni degli strumenti di analisi già esistenti.
  • 2. L’obiettivo è generare automaticamente dei nuovi malware che possano essere usati per rafforzare gli strumenti di analisi. Gli scrittori dei malware puntano al loro obiettivo in modo che non possano essere rilevati, usando efficaci strategie evasive come l’offuscamento e la cifratura. Con l’introduzione di nuovi anti-malware, gli scrittori di malware cercano di evaderli, andando a costruire un loop. Questo ciclo definisce esattamente il meccanismo di coevoluzione tra malware e anti-malware, con uno che compete e supera l’altro. Tipicamente, si richiede un esperto in sicurezza per analizzare il codice ed estrarre i parametri che possano determinare delle varianti del malware, quindi attraverso il GP si può creare una rappresentazione del problema. Inoltre, attraverso delle tecniche di elaborazione coevoluzionale, si sono generati dei sistemi di rilevamento più robusti, che a loro volta hanno generato sistemi evasivi più sofisticati. Questo approccio ha generato un malware altamente evasivo, rispetto ai risultati ottenuto con Zelix KlassMaster, un noto Java Bytecode Obfuscator. 2. MALWARE EVOLUTION: APPROCCIO Ci sono diversi studi che valutano un anti-malware contro le tecniche di offuscamento su piattaforme Android. Sono presentate di seguito: • un sistema di nome ADAM che valuta l’efficacia di sistemi anti-malware contro campioni malware generati usando tecniche di offuscamento ma preservandone le funzioni originali [Zheng] • un sistema di nome DroidCharmeleon che valuta un anti-malware contro l’offuscamento andando a mutare automaticamente le applicazioni Android usando tecniche polimorfiche e metamorfiche [Rastogi] • tecnica basata sulla trasformazione del codice sorgente per creare dei campioni di test per sistemi di rilevamento di malware su desktop; questa tecnica valuta la resilienza dell’anti-malware rispetto a varie tecniche di offuscamento [Christodorescu] • valutazione e testing su come l’anti-malware protegge i dispositivi contro minacce note; i risultati indicano che tutti i quattro sistemi anti-malware testati producono un alto tasso di falsi negativi dovuti ai semplici algoritmi di firma impiegati nei sistemi di rilevamento [Morales] • malware detector basato su firme semantiche con l’uso di un model checking per il rilevamento; questo metodo ha dimostrato che l’analisi statica, da sola, non basta a rilevare i malware e dovrebbe essere accompagnate dalle tecniche dinamiche [Moser]
  • 3. 3. ANTI-MALWARE EVOLUTION: APPROCCIO Al fine di coprire il rapido aumento dei malware mobile, molte compagnie hanno introdotto le loro soluzioni di sicurezza, basate principalmente sull’analisi statica. Tipicamente le tecniche usate sono: • rilevamento di app sovraprivilegiate analizzando le chiamate alle API [Felt] • rilevamento di malware adottando una analisi statica basata sui permessi [Kirin] • utilizzo di permessi, chiamate API, indirizzi di rete per differenziare software benigni da software maligni, attraverso tecniche di machine learning [Drebin] Le applicazioni ad alto e medio rischio sono determinate in una analisi di primo ordine e le applicazioni che usano offuscamento, cifratura o tecniche di loading dinamico delle classi vengono estratte da quelle a rischio, in un’analisi di secondo ordine. Vengono impiegate diverse tecniche di machine learning per la rilevazione dei malware. Un recente studio sul tema ha impiegato la programmazione genetica assieme a tecniche ben note quali Support Vector Machine, Bayesian Network, Decision Tree e Artificial Neural Network. Ciononostante, allo stato attuale esistono solo tre studi che propongo un sistema di rilevamento delle intrusioni usando l’elaborazione coevoluzionale (coevolutionary computation). 4. MALWARE EVOLUTION Lo studio attuale utilizzate la GP per generare malware nuovi e ogni a partire da quelli già presenti. La figura mostra lo schema di malware evolution.
  • 4. Inizialmente, i file apk vengono convertiti nei loro codici sorgenti. Vengono usati file smali, in quanto permettono la conversione di file sorgenti modificati. Effettivamente, Smali può essere visto come l’Assembly di Dalvix, la Java VM di Android. Va fatto notare che la conversione in apk è essenziale per valutare i malware generati sugli emulatori dei dispositivi. I file Smali sono simili alle classi Java e si compongono di metodi. I Call Graph (CG) di Smali sono estratti tramite un convertitore. I CG sono grafi di controllo che rappresentano tutti i cammini che possono essere attraversati durante l’esecuzione. Ogni CG corrisponde a un albero, ogni metodo è rappresentato da un nodo e gli archi indicano il flusso tra ogni metodo. Ogni applicazione è rappresentata da un individuo nel GP e ogni individuo ha alberi di diverse dimensioni in quanto ogni apk ha un numero variabile di funzioni. La Genetic Programming è un algoritmo di ricerca population-based ispirata all’evoluzione naturale. Comincia con una generica popolazione di individui random, che rappresentano i candidati per la soluzione del problema. Quindi, ogni individuo viene valutato e riceve un fitness value, che indica quanto sia efficace nel risolvere il problema e quanto sia vicino alla soluzione. Finchè non viene soddisfatto un criterio di stop, viene generata nuova popolazione iterativamente usando selezione, crossover e mutation. Ogni individuo rappresenta una applicazione Android nel GP. La popolazione iniziale consiste di malware generici. Il principale obiettivo è quello di creare malware più evasivi ad ogni generazione applicando gli operatori genetici su di essi. Questi vengono applicati ai CG, quindi vengono ricreati i file smali e apk. Dopodichè, gli apk vengono firmati con keyytool e jarsigner, quindi inviati all’emulatore per calcolare il fitness value, che mostra il grado di evasività del nuovo malware generato. Per valutarlo nella sua totalità, vengono usati sei diversi emulatori con diversi sistemi anti-malware basati su tecniche di ML. Mentre gli anti-malware lavorano sugli attributi statici dell’applicazione, i sistemi basati su ML estraggono le feature dinamiche dell’applicazione eseguendole su un emulatore per un tempo di dieci minuti. Un nuovo malware viene eseguito su ogni emulatore separatamente e etichettato come benigno o maligno dal sistema. L’obiettivo di questo processo è generare un malware che evada tutti gli anti-malware andando a decrementare il fitness value ad ogni generazione. Il fitness value è calcolato come il rapporto tra il numero di sistemi che identificano il software generato come malware e il numero di sistemi totali. Dato che è difficile ottenere un valore ideale in questo approccio, il GP termina quando si raggiunge una generazione predeterminata.
  • 5. 4.1 OPERATORI GENETICI CROSSOVER: Questa operazione scambia gli individui dei sottoalberi. Per ottenere degli eseguibili, i subtree devono essere compatibili tra di loro. Pertanto, si scambiano solo metodi che hanno la stessa dichiarazione, lo stesso numero di parametri e lo stesso tipo ritornato. Questo permette la creazione di nuovi malware a partire da quelli già esistenti. Tuttavia, dato che un alto crossover rate incrementa il numero di individui non eseguibili, questa operazione viene effettuata a un basso rate (0.1). Il crossover, inoltre, garantisce cambiamenti nelle firme dei malware attraverso lo scambio di codice e ciò contribuisce al miglioramento dell’evasività. Sebben il metodo sviluppato abbia un alto grado di accuratezza (97,61%), potrebbe non rilevare malware lanciato durante i dieci minuti di tempo. Se l’applicazione non è né eseguibile né malevola, viene assegnato il peggior fitness value (1.0) in modo da eliminarla dalla prossima generazione. MUTATION: Questo operatore cambia degli individui selezionati per introdurre della diversità nella popolazione. Vengono adottate sei tecniche di offuscamento sui subtree di indivui scelti casualmente. Tali tecniche hanno lo scopo di generare malware diversi preservandone le funzionalità originali: • Rename Local Identifier • junk Code Insertion • Data Encryption • Two-fold Code Reordering • Three-fold Code Reordering • Register Realignment 4.2 FITNESS FUNCTION Dato che la fitness function definisce quanto un individuo sia vicino alla soluzione del problema, definire una buona funzione è molto importante per il GP. Innanzitutto, si effettua una valutazione per accertarsi che il malware sia eseguibile e presenti comportamenti malevoli secondo il sistema di rilevamento ML-Based. Se ciò non è verificato, viene assegnato il peggior fitness value all’individuo. Quindi, la fitness function usa gli output dei sei sistemi anti-malware. La tabella mostra gli anti-malware usati. Ognuno di essi è eseguito su un emulatore diverso. Ogni individuo viene eseguito per un minuto, tempo necessario ad avere dei risultati.
  • 6. Se un output non può essere ottenuto per un individuo, allora l’anti-malware che non ha generato il risultato, non viene preso in considerazione nella fitness function per quell’individuo di quella generazione. Il fitness value è definito come segue: 𝐹𝐹𝐹𝐹 = #𝑎𝑎𝑎𝑎𝑎𝑎𝑎𝑎 𝑎𝑎𝑎𝑎𝑎𝑎 𝑎𝑎𝑎𝑎𝑎𝑎𝑎𝑎 𝑑𝑑𝑑𝑑𝑑𝑑𝑑𝑑𝑑𝑑𝑑𝑑𝑑𝑑𝑑𝑑𝑑𝑑 𝑡𝑡ℎ𝑒𝑒 𝑚𝑚𝑚𝑚𝑚𝑚𝑚𝑚𝑚𝑚𝑚𝑚𝑚𝑚 𝑡𝑡𝑡𝑡𝑡𝑡𝑡𝑡𝑡𝑡 # 𝑜𝑜𝑜𝑜 𝑠𝑠𝑠𝑠𝑠𝑠𝑠𝑠𝑠𝑠𝑠𝑠𝑠𝑠 Il valore è compreso tra 0 e 1, con 0 miglior valore che indica che il malware ha eluso tutti i controlli di tutti i sistemi. Quando il valore è 1, invece, significa che il malware è stato rilevato da ogni sistema, non è eseguibile o non è malevolo. 5. ANTI-MALWARE EVOLUTION Inizialmente, sono state usate delle tecniche di Reverse Engineering sulle applicazioni di Google Play e MalGenome Project. Esse sono state analizzate per estrapolare delle feature distinguibili, sulla cui base si è effettuata l’evoluzione dell’anti-malware, tramite GP.
  • 7. 5.1 FEATURES Innanzitutto, sono state estratte le chiamate API e i permessi per ogni applicazione, in quanto sono gli elementi principali considerati in una analisi statica. Successivamente, è stata determinata la differenza tra il numero di applicazioni lecite e malevole che usano quelle API, e se ne sono selezionate le prime 100, in ordine decrescente. I 40 permessi più discriminativi sono stati selezionati nello stesso modo. Allo stesso tempo, sono state considerate sei ulteriori feature: • numero di chiamate API legate al DexClassLoader usato per caricare il codice a runtime • numero di chiamate API legati a Crypto, per cifrare il codice • numero di classi • numero di goto • numero di metodi • numero di permessi Un individuo, in questo caso, è un albero con le 146 feature sopracitate come nodi terminali e alcuni operatori come nodi non terminali. Ogni individuo produce un costrutto if, nel determinare la pericolosità di una applicazione che sta venendo analizzata. Nella fase di crossover, si creano nuovi costrutti if e nella fase di mutation, si genera un ultimo nuovo costrutto if andando a mutare una parte casuale dell’albero. 5.2 FITNESS Il fitness value è calcolato in base al rate di falsi positivi e veri positivi. Il true positive rate è il rapporto tra le applicazioni denotate come malevoli rispetto a tutte le applicazioni malevoli; il false positive rate, invece, è il rapporto di tutte le applicazioni classificate come malevoli, rispetto a tutte le applicazioni lecite. Dato che il malware evoluto ha ottenuto dei risultati di detection rate del 100%, con un elevato tasso di false positive, si è incrementato il peso dei falsi positivi nella fitness function.
  • 8. 6. MOBILE MALWARE/ANTI-MALWARE COEVOLUTION La coevoluzione è la migliore evoluzione degli individui tra diverse specie che si influenzano a vicenda. Quando una specie evolve, cambia anche la relazione con l’altra specie. Questa mutua relazione si evolve a sua volta, lungo le diverse generazioni. Quando questa filosofia è applicata all’informatica, la coevoluzione è usata in quei problemi che puntano a migliorare diversi sistemi contemporaneamente. Questi problemi possono essere cooperativi o competitivi: molti problemi nel campo della sicurezza sono competitivi e sono noti come arms race. Ci sono risorse limitate in ambienti competitivi e le specie competono tra loro per accaparrarsele. In un problema competitivo, mentre il fitness value di una specie aumenta, quello dell’altra specie diminuisce, e viceversa. In questo studio, mentre il malware cerca di sopravvivere all’anti-malware, quest’ultimo cerca di rilevarlo. L’algoritmo di elaborazione coevoluzionale viene eseguito finchè non viene ottenuto il miglior individuo oppure si raggiunge il massimo numero di generazioni consentite (200 generazioni al massimo).
  • 9. 7. PRESTAZIONI DEL MALWARE COEVOLUTO La tabella mostra i detection rate degli anti-malware commerciali sul malware coevoluto. Dato che alcuni aspetti evoluzionistici sono stocastici, l’algoritmo viene tipicamente eseguito un numero di volte n e viene restituito il miglior individuo in output. Per questo, viene considerato il miglior individuo per ogni famiglia di malware e si può notare come esso sia capace di sfuggire ai controlli delle soluzioni commerciali. La tabella seguente, mostra il miglior individuo per ogni famiglia: • O: malware originale • C: malware coevoluto • V : malware rilevato I risultati mostrano che le soluzioni commerciali sono robuste a diverse famiglie e le differenze sono imputabili principalmente ai loro metodi di firma e ai loro database, non disponibili pubblicamente. Dato che il malware coevoluto è stato valuto sia rispetto alle soluzioni commerciali che rispetto all’anti-malware coevoluto, si può dire che il meccanismo di coevoluzione ha il potenziale di sviluppare un malware molto più evasivo rispetto al metodo evolutivo tradizionale. È necessario far presente che gli anti-malware coevoluti sono stati testati solo sui malware coevoluti (e che non si sono coevoluti insieme). È difficile avere un sistema di rilevamento con un perfetto detection rate e un perfetto false positive rate ed è pertanto necessario impostare un trade-off.
  • 10. 8. PRESTAZIONI DELL’ANTI-MALWARE COEVOLUTO Il sistema proposto è stato testato anche su nuove varianti di malware già esistenti. Ci sono tecniche ovvie che funzionano solo sulle stringhe ma altre non banali che funzionano sia sulle stringhe che sui bytecode degli eseguibili. L’anti-malware coevoluto rileva la maggior parte dei malware offuscati, anche quello attraverso la Class Encryption, che cifra e comprime ogni classe ed è la tecnica di offuscamento più avanzata.