Mindset dell'autore del malware

3

Sto studiando le caratteristiche del malware comuni e ho un po 'di difficoltà a comprendere le scelte progettuali che gli autori di malware fanno. Molte di queste scelte sembrano ruotare intorno a rendere la vita difficile a un analista umano di distinguere il malware, mentre potenzialmente rendono il malware molto facile per un sistema automatico contrassegnarlo come "probabilmente dannoso". Sono curioso di vedere se qualcuno può dirmi quale sia la logica dietro a tali scelte di design.

Ad esempio, alcune tattiche di anti-reverse engineering. Sì, potrebbero rendere più difficile per l'analista invertire il malware, ma le tattiche come i callback TLS potrebbero essere segnalate come sospette, soprattutto perché il malware non è quasi mai firmato, mentre la maggior parte dei software legittimi che utilizzano tali tecniche per scopi anti-RE è.

Un altro esempio potrebbe essere la tattica anti-VM. La maggior parte degli emulatori AV scade dopo un breve periodo. Non è necessario rilevare l'emulatore. Basta fare qualcosa per pochi secondi (oltre a qualcosa che ovviamente ritardare, come chiamare sleep ()), invece di fare controlli estremamente rumorosi come provare ad aprire un gruppo di chiavi di registro VMWare e VirtualBox. L'unico caso in cui non si può sopravvivere alla VM è quando c'è un umano che analizza il campione, e se un umano sufficientemente motivato sta analizzando un programma, stanno andando per poterlo invertire alla fine , allora perché preoccuparsi anche?

Forse non sono abbastanza esperto nel campo della creazione di malware per capire lo scopo di tutto questo, ma mi sembra che il tipo di sistemi che un autore di malware cercherebbe di bypassare sarebbe per lo più sistemi automatizzati. Ad esempio, i motori antivirus o le sandbox automatizzate che le aziende AV utilizzano per analizzare nuovi campioni potenzialmente dannosi che classificano tali campioni in pile "definitivamente non nocive, di scarto" e "potenzialmente dannose; invia per revisione umana". L'obiettivo principale dell'autore del malware sembrerebbe quello di impedire a quei sistemi automatici di contrassegnare il programma come sospetto per ridurre la possibilità che il malware finisca di fronte a un analista umano per cominciare, non leggermente frustrante per l'analista umano che alla fine sarà in grado comunque di analizzare il malware.

So che alcuni autori di malware sono solo degli script kiddies, ma suppongo che almeno alcuni di loro si impegnino a fare scelte di sviluppo del software. Immagino che sappiano più di me sull'argomento, dato che fanno lo sviluppo di malware per vivere. Ma non riesco a capire alcune delle decisioni di progettazione che prendono. Qualcuno può spiegarmi la logica dietro queste decisioni?

    
posta The_Masticator 26.10.2018 - 03:23
fonte

2 risposte

2

Penso che forse stai dando troppo credito agli autori di malware in termini di comprensione * dell'anti-reverse-engineering (e forse anche del troppo credito per gli sviluppatori di software professionali;). Nella mia esperienza, la maggior parte degli autori di malware utilizza il proprio insieme di tecniche "preferite" con piccole variazioni (molte volte basate su codice di altri autori o ricercatori), allo stesso modo in cui un webdev potrebbe utilizzare lo stesso codice di sanitizzazione dell'input ogni volta che scrivono un campo password, indipendentemente dal codice dell'applicazione sottostante.

Inoltre, per quanto riguarda il dire, "perché non tiene conto della tattica x": il malware è cat-and-mouse; anche se hai creato il "migliore" codice anti-re, se è usato abbastanza diventerà una firma di rilevamento.

Infine, tieni presente che nessun malware è impermeabile all'analisi, quindi è più simile a DRM sui giochi; cerca di ottenere quante più infezioni possibili prima che si rompano. Potresti passare mesi a creare fantasiosi schemi anti-re per un singolo pezzo di malware solo per vederlo rotto e trasformato in una firma in un paio di giorni comunque, quindi è probabilmente meglio cercare quantità di malware rispetto alla qualità delle difese anti-re.

    
risposta data 04.01.2019 - 21:13
fonte
0

Fanno queste scelte progettuali per 1 o 2 motivi principali:

1) Sono diretti a perché loro oi loro superiori hanno intelligenza su come progettare e implementare per una particolare campagna, operazione o obiettivo. Forse sanno qualcosa che non sai.

2) Stanno facendo soldi, quindi vogliono continuare a fare soldi. Loro fanno più soldi di noi e continuano a farlo. Non cambierà, quindi la loro formula funziona. Se non è rotto, perché aggiustarlo?

Raramente il malware è pieno di funzionalità e privo di bug, come Moker , ma succede . Direi che Moker è forse un raro outlier ai tuoi criteri, ma è uno. Sicuramente incontra la barra per entrambe le funzionalità anti-RE e AV-bypass.

Direi che:

A) La conclusione che questo concetto di malware che hai in mente che sovrascrive su anti-RE e underfocus su AV-bypass è forse rotto sin dall'inizio. Direi che qualsiasi autore di malware vuole chiaramente entrambi e che questi concetti non funzionano l'uno contro l'altro. In realtà, direi che sono logaritmicamente sane, cioè sono scalabili in tutte le direzioni. Quello che penso tu non stia includendo nel tuo pensiero è che è semplicemente facile catturare le caratteristiche e il comportamento del malware una volta che sono conosciuti - una volta che sono stati provocati ... e poi entra in ogni AV esistente (o forse 20 dei 30 su VirusTotal ... ma almeno 3 o più). La durata della maggior parte dei malware non dura oltre i 3 mesi e la maggior parte delle famiglie di malware non supera i 3 anni. Tuttavia, si vedono alcuni Vawtrak nella tua Dridex nel nostro attuale Geogone di terza generazione (4-gen?). C'è il riutilizzo del codice, ma è spesso difficile da trovare e non chiaro.

B) Gli autori di malware, in questi giorni, hanno bisogno di idee Beyond-the Dropper nella maggior parte delle situazioni. Ciò significa che hanno bisogno della loro logica malevola per nascondersi in bella vista. Il loro focus è in realtà forse su né AV-bypass né tecniche anti-RE, ma piuttosto su Tecniche di Process Injection . È lì che possono passare la maggior parte del tempo, bang-for buck saggio. Il resto del loro codice può essere piuttosto copypasta al confronto. Getta alcune cripte diverse sul muro e guarda cosa attacca.

    
risposta data 10.01.2019 - 21:30
fonte

Leggi altre domande sui tag