La presente tesi, dal taglio estremamente tecnico, introduce gli scenari di applicazione dei malware, ne descrive le parti e, soprattutto, dettaglia, passo dopo passo, come costruire un malware in grado di bypassare le più comuni tecniche di detection. Per lo sviluppo di questo software ci siamo avvalsi di diverse tecnologie. Il nucleo del progetto è stato scritto interamente in C++, per sfruttare la potenza delle API Windows, mentre, per la fase di persistenza, è stato fatto largo usato del framework Metasploit. Nello specifico, è stato utilizzato l'handler generico di Metasploit, in piena aderenza alla filosofia del riuso del codice, ed è stato completamente riscritto il modulo "persistence_exe.rb" inserendovi nuove tecniche di persistenza. Nel presente elaborato verrà posta particolare attenzione nel mostrare non tanto lo sviluppo del malware in sé per sé, quanto, piuttosto, le tecniche da utilizzare per bypassare i metodi di detection. Questa tematica, infatti, è quella che denota la natura innovativa del nostro prodotto e che, quindi, dà valore aggiunto alla presente tesi. Verranno presentate diverse tecniche di antivirus evasion, quali, ad esempio, le tecniche di offuscamento (Hyperion e randomizzazione del codice VBScript), quelle di cifratura delle API Windows mediante XOR, l'importazione delle API a runtime e la cifratura del payload. Si mostrerà, inoltre, come piccoli accorgimenti, quali, ad esempio, l'offuscamento delle stringhe, siano sufficienti per bypassare la maggior parte dei software di detection presenti sul mercato.
Sviluppo di malware con tecniche di antivirus evasion
FEDERICONI, CRISTIAN
2019/2020
Abstract
La presente tesi, dal taglio estremamente tecnico, introduce gli scenari di applicazione dei malware, ne descrive le parti e, soprattutto, dettaglia, passo dopo passo, come costruire un malware in grado di bypassare le più comuni tecniche di detection. Per lo sviluppo di questo software ci siamo avvalsi di diverse tecnologie. Il nucleo del progetto è stato scritto interamente in C++, per sfruttare la potenza delle API Windows, mentre, per la fase di persistenza, è stato fatto largo usato del framework Metasploit. Nello specifico, è stato utilizzato l'handler generico di Metasploit, in piena aderenza alla filosofia del riuso del codice, ed è stato completamente riscritto il modulo "persistence_exe.rb" inserendovi nuove tecniche di persistenza. Nel presente elaborato verrà posta particolare attenzione nel mostrare non tanto lo sviluppo del malware in sé per sé, quanto, piuttosto, le tecniche da utilizzare per bypassare i metodi di detection. Questa tematica, infatti, è quella che denota la natura innovativa del nostro prodotto e che, quindi, dà valore aggiunto alla presente tesi. Verranno presentate diverse tecniche di antivirus evasion, quali, ad esempio, le tecniche di offuscamento (Hyperion e randomizzazione del codice VBScript), quelle di cifratura delle API Windows mediante XOR, l'importazione delle API a runtime e la cifratura del payload. Si mostrerà, inoltre, come piccoli accorgimenti, quali, ad esempio, l'offuscamento delle stringhe, siano sufficienti per bypassare la maggior parte dei software di detection presenti sul mercato.File | Dimensione | Formato | |
---|---|---|---|
Tesi_Federiconi_Cristian.pdf
Open Access dal 24/10/2022
Dimensione
26.73 MB
Formato
Adobe PDF
|
26.73 MB | Adobe PDF | Visualizza/Apri |
I documenti in UNITESI sono protetti da copyright e tutti i diritti sono riservati, salvo diversa indicazione.
https://hdl.handle.net/20.500.12075/4618