malware "segmentato"

5

Ho svolto ricerche su come funzionano gli strumenti anti-malware e mi sento come se mi mancasse qualcosa con un'analisi euristica.

Ciò che ho imparato finora
I programmi anti-malware possono utilizzare analisi euristiche e firme per determinare se un programma è malware o meno. Gli autori di malware utilizzano il codice polimorfico per evitare il riconoscimento della firma e offuscare le azioni all'interno del codice per evitare alcune euristiche.

Lo scenario
Se un autore di malware dovesse segmentare il proprio codice in una moltitudine di file binari diversi, questo potrebbe essere rilevato? Sto immaginando uno scenario in cui un semplice keylogger che utilizza molti eseguibili polimorfici per la registrazione di chiavi, la ricezione di comandi e l'invio di dati, in modo da apparire come strumenti benigni.

Mi sembra che questo potrebbe creare una grande quantità di falsi positivi con programmi che utilizzano una o due combinazioni di tasti e altri piccoli strumenti.

Le mie domande
È qualcosa che potrebbe essere un modo efficace per evitare il rilevamento?
Ci sono dei modi per proteggere da questo, se non ci sono già?

    
posta Wrathbelle 11.11.2015 - 00:58
fonte

1 risposta

3

Scrivo malware per test di sicurezza professionali da oltre 20 anni. L'evasione del rilevamento AV è uno dei requisiti comuni dei nostri clienti. L'approccio dipende da quale meccanismo di scansione deve essere eluso.

Il rilevamento basato su pattern è molto semplice nell'ambiente AV. È come un'espressione regolare che tenta di identificare una parte comune del malware specifico. Se il malware viene modificato per quanto riguarda questa firma di identificazione, il rilevamento non funzionerà più. La modifica dei frammenti di codice (ad esempio stringhe, nomi interni) o la posizione del blocco di codice nel binario vengono eseguite rapidamente e avranno esito positivo.

Un rilevamento euristico fa qualcosa di simile ma non con blocchi di codice ma con "azioni". Un'azione sarebbe aprire un file, scrivere una stringa e chiudere di nuovo il file. Una sequenza sospetta su un file system Windows potrebbe creare un file e aggiungervi immediatamente il flag nascosto. La maggior parte dei prodotti AV dichiara questo malevolo. E nella maggior parte dei casi lo è (quante applicazioni legittime lo fanno?). Ma se attendi qualche secondo tra queste due attività o fai qualcos'altro nel mezzo (come aprire un altro file nel frattempo) l'euristica mancherà alla connessione originale tra le attività iniziali.

La divisione delle attività in più file binari in esecuzione come istanze multi-thread potrebbe causare un effetto simile. Questo perché il software AV non può correlare molte azioni a più processi. La sfida potrebbe essere che devi distribuire tutti i tuoi binari sull'host di destinazione per stabilire il tuo framework. Ma questo potrebbe sollevare alcune bandiere durante l'analisi euristica (download multipli, download di un altro binario dopo l'esecuzione o estrazione di più eseguibili da un singolo binario). Di solito sto scaricando parti aggiuntive e abbandono l'originale "downloader". Funziona bene, genera piccoli file binari ed è efficiente. Il rilevamento AV funziona piuttosto male con file ultra piccoli e semplici.

Non ho mai avuto un caso in cui non fosse possibile aggirare il rilevamento AV. Potrebbe volerci più tempo del solito. Questo potrebbe essere il motivo per cui alcune persone chiamano l'olio di serpente AV.

    
risposta data 04.06.2016 - 21:01
fonte

Leggi altre domande sui tag