GNU/Linux >> Linux Esercitazione >  >> Linux

Come installare e utilizzare lo strumento forense della memoria Volatility

Una delle parti importanti dell'analisi del malware è l'analisi della RAM (Random Access Memory). Aiuta a identificare i processi dannosi in esecuzione, le attività di rete, le connessioni aperte ecc. nel sistema compromesso. Questo articolo riguarda lo strumento di sicurezza open source "Volatility" per l'analisi della memoria volatile. Può essere utilizzato per l'analisi della RAM di sistemi a 32/64 bit e supporta l'analisi di sistemi Windows, Linux, Mac e Android. Il Volatility Framework è implementato nel linguaggio di scripting Python e può essere facilmente utilizzato su sistemi operativi Linux e Windows. Viene utilizzato per analizzare dump di arresti anomali, dump non elaborati, dump di VMware e VirtualBox. Le tecniche di estrazione vengono eseguite in modo completamente indipendente dal sistema in esame e danno visibilità completa sullo stato di runtime del sistema. Quindi, questo articolo riguarda l'analisi forense del dump della memoria RAM utilizzando lo strumento di volatilità. Il plug-in "malfind" della volatilità aiuta a scaricare il processo dannoso e ad analizzarlo. Un altro plugin della volatilità è “cmdscan” utilizzato anche per elencare gli ultimi comandi sulla macchina compromessa. In questa indagine forense, le risorse online come il sito Web "virustotal" e "payload security" verranno utilizzate per verificare i risultati. Alla fine, Windows Defender e Malware Bytes verranno utilizzati per scansionare i programmi dannosi.

Supporto formato memoria

Il seguente formato di memoria è supportato dall'ultima versione di Volatility [1].

  • Memoria fisica grezza/imbottita
  • Firewire (IEEE 1394)
  • Testimone esperto (EWF)
  • Dump di crash di Windows a 32 e 64 bit
  • Sospensione Windows a 32 e 64 bit
  • File MachO a 32 e 64 bit
  • Virtualbox Core Dump
  • Stato salvato VMware (.vmss) e snapshot (.vmsn)
  • Formato HPAK (FastDump)
  • Dump di memoria QEMU

Installazione

Lo strumento Volatility è disponibile per i sistemi operativi Windows, Linux e Mac. Per Windows e Mac OS sono disponibili eseguibili standalone e possono essere installati su Ubuntu 16.04 LTS usando il seguente comando.

apt-get install volatility

Analisi della memoria

In questo tutorial, l'analisi forense del dump della memoria non elaborato verrà eseguita su piattaforma Windows utilizzando l'eseguibile autonomo dello strumento Volatility. È comune nel processo di indagine che l'investigatore forense possa trovare diversi programmi dannosi sul disco rigido compromesso. Pertanto, l'analisi della memoria diventa molto importante in tali eventi perché sul sistema compromesso potrebbero essere in esecuzione programmi dannosi o malware.

Verifica dell'integrità

L'hash MD5 del dump della memoria del sistema dannoso è riportato di seguito. Viene calcolato per verificare l'immagine acquisita prima di iniziare l'analisi forense.

MD5:               ee043142485a83f4d49a3a7899408500             

Analisi della volatilità

Lo strumento Volatility viene utilizzato per determinare se il PC è infetto o meno. Come sappiamo, il programma dannoso può essere estratto dai processi in esecuzione dal dump della memoria. Quindi, prima di tutto, è necessario identificare i "profili" supportati per l'immagine di memoria scaricata. Come mostrato di seguito, il seguente comando viene utilizzato per identificare i "profili" per l'immagine.

"E:\volatility_2.4.win.standalone\volatility-2.4.standalone.exe" imageinfo -f memdump3.raw

Quindi, i seguenti due profili sono suggeriti dal comando “imageinfo”.

Win7SP0x86 , Win7SP1x86

Ora, il comando menzionato di seguito viene utilizzato per ottenere un elenco dei processi in esecuzione nel dump della memoria.

"E:\volatility_2.4.win.standalone\volatility-2.4.standalone.exe" --profile=Win7SP0x86 pslist -f memdump3.raw

parte-1                                                                                 

parte 2

Il plug-in "pslist" dello strumento di volatilità mostra i processi nel dump della memoria. Come mostrato nell'output sopra, alcuni programmi sono come "0KqEC12.exe " e "rdpclip.exe ” sono nuovi nel sistema operativo Windows. Potrebbero essere applicazioni dannose o nuove per il sistema operativo Windows. Allo stesso modo, più "iexplore.exe anche i programmi sembrano sospetti.

Quindi, lo scopo del comando seguente è visualizzare i processi in formato albero (genitore/figlio). Questo mostrerà il collegamento del processo con il processo padre. Ci aiuterà a identificare il processo padre del programma dannoso.

 "E:\volatility_2.4.win.standalone\volatility-2.4.standalone.exe" --profile=Win7SP0x86 pstree -f memdump3.raw

parte-1

parte-2

Come mostrato nell'output sopra di "pstree ” plug-in dello strumento Volatility, i processi vengono mostrati con i relativi PID e PPID. Abbiamo evidenziato i programmi dannosi per ulteriori indagini sulla macchina della vittima. Ora, "mal ritrovamento Il plug-in (utilizzato per rilevare DLL dannose nel processo) di Volatility verrà utilizzato contro i processi evidenziati.

ID processo:1120 (svchost.exe)

Il comando seguente con l'opzione malfind viene utilizzato per eseguire il dump delle DLL dannose nella directory "output".

 E:\>"E:\volatility_2.4.win.standalone\volatility-2.4.standalone.exe" --profile=Win7SP0x86 malfind -D E:\output/pid-1120 -p 1120 -f memdump3.raw

Come mostrato di seguito, il plug-in malfind non trova alcuna DLL.

ID processo:1788 (rdpclip.exe)

Eseguire nuovamente lo stesso comando con PID 1788 per estrarre la DLL del processo. Tuttavia, il plug-in non trova alcuna DLL.

E:\>"E:\volatility_2.4.win.standalone\volatility-2.4.standalone.exe" --profile=Win7SP0x86 malfind -D E:\output/pid-1788 -p 1788 -f memdump3.raw

ID processo:2104 (explorer.exe)

Come mostrato di seguito, il comando seguente viene eseguito con il PID "2104" e la ricerca errata ha estratto le DLL dal processo.

 E:\>"E:\volatility_2.4.win.standalone\volatility-2.4.standalone.exe" --profile=Win7SP0x86 malfind -D E:\output/pid-2104 -p 2104 -f memdump3.raw

L'output del plug-in malfind mostra il dump delle DLL estratte dal processo dannoso.

ID processo:2240(0kqEC12.exe)

Il plug-in malfind è in esecuzione sul PID "2240" che sembra sospetto per il sistema operativo Windows.

E:\>"E:\volatility_2.4.win.standalone\volatility-2.4.standalone.exe" --profile=Win7SP0x86 malfind -D E:\output/pid-2240 -p 2240 -f memdump3.raw

L'output del plug-in malfind per il PID "2240" è mostrato di seguito.

ID processo:2840 (iexplore.exe)

L'output dello strumento Volatility rispetto al PID "2840" è mostrato di seguito.

 E:\>"E:\volatility_2.4.win.standalone\volatility-2.4.standalone.exe" --profile=Win7SP0x86 malfind -D E:\output/pid-2840 -p 2840 -f memdump3.raw

Questo processo sembra anche dannoso perché utilizza anche lo stesso nome del processo di Windows "iexplorer".

ID processo:2364(iexplore.exe)

Allo stesso modo, malfind viene eseguito contro il programma dannoso "iexplore" con PID "2364".

 E:\>"E:\volatility_2.4.win.standalone\volatility-2.4.standalone.exe" --profile=Win7SP0x86 malfind -D E:\output/pid-2364 -p 2364 -f memdump3.raw

Di seguito è mostrato il dump di malfind contro PID "2364".

ID processo:3728 (iexplore.exe)

Come mostrato di seguito, il plug-in di volatilità per il dump di programmi dannosi viene eseguito sul PID "3728"

 E:\>"E:\volatility_2.4.win.standalone\volatility-2.4.standalone.exe" --profile=Win7SP0x86 malfind -D E:\output/pid-3728 -p 3728 -f memdump3.raw

  L'istantanea seguente mostra il dump del plug-in malfind rispetto al PID "3728".

Risultati della scansione

I dump dei programmi dannosi vengono scansionati utilizzando Windows defender e byte malware.

 Windows Defender

Il risultato della scansione di Windows Defender è mostrato di seguito ed è identificato come "Trojan:Win32/EyeStye.N"  &  "Trojan:Win32/EyeStye.plugin"

I dettagli dei Trojan sono riportati di seguito.

Questo Trojan registra le sequenze di tasti, monitora l'attività su Internet e ruba determinate credenziali di accesso, quindi invia i dati acquisiti a un utente malintenzionato remoto per un guadagno finanziario. Potrebbe scaricare malware aggiuntivo, ridurre la sicurezza del browser Web e utilizzare un rootkit per nascondere la sua attività dannosa [2]. Il malware utilizza l'iniezione di codice per ostacolare il rilevamento e la rimozione. Quando "EyeStye.N" viene eseguito, può iniettare codice in processi in esecuzione come cmd.exe ed explorer.exe.

La nostra analisi mostra che il programma dannoso viene iniettato nel programma "explorer.exe", che è il genitore dei programmi dannosi "iexplore.exe".

 MalwareBytes

L'istantanea seguente mostra che MalwareBytes ha rilevato anche le DLL estratte come dannose e le ha chiamate "Trojan.Grabber".

  Cronologia comandi (cronologia CMD)

  Un altro plug-in degli strumenti Volatility è "cmdscan" che esegue la scansione della cronologia dei comandi eseguiti sulla macchina. Il risultato del comando seguente mostra la cronologia dei comandi eseguiti sul PC compromesso.

 E:\>"E:\volatility_2.4.win.standalone\volatility-2.4.standalone.exe" --profile=Win7SP0x86 cmdscan -f memdump3.raw

L'output di "cmdscan" mostra che l'attaccante esegue diversi comandi sul prompt dei comandi ed esegue il programma dannoso "iexplorer.exe" e "ieplore.exe". Un altro sospetto mostrato nell'output sopra è "_lt112.spn". Viene cercato nelle risorse online e il risultato mostra che è collegato al programma malware.

File _lt112.spn

L'analista ha cercato "_lt112.spn ” stringa su Internet e l'ho trovata sui seguenti siti.

  • https://malwr.com/analysis/ODMwYzM1NGViZDkwNDc4YTllYWU4ZTVlMTE1YzJmNGQ/

  • https://www.hybrid-analysis.com/sample/1416ff3fca01d4d4854799f2d3880fb6e100de3f7fa1c54465d4d6b9cf9b5d96?environmentId=100

 Connessione di rete

Poiché sappiamo che la connessione di rete può essere trovata nell'analisi della memoria, quindi il plug-in "netscan" viene eseguito sull'immagine della memoria e il risultato mostra che il programma dannoso "iexplore" ha aperto diverse connessioni sul computer della vittima.

 E:\>"E:\volatility_2.4.win.standalone\volatility-2.4.standalone.exe" --profile=Win7SP0x86 netscan -f memdump3.raw

Parte 1

Parte 2

Parte 3

Quindi, un'analisi dettagliata della memoria mostra che il PC è compromesso con il malware che è in esecuzione come "explorer.exe" e "iexplore.exe" sul computer della vittima. Mostra anche che il programma dannoso "iexplore.exe" si sta connettendo sulla porta 80 dal computer della vittima.

 Riferimenti

  1. http://www.volatilityfoundation.org/24
  2. https://www.microsoft.com/security/portal/threat/encyclopedia/entry.aspx?Name=Trojan:Win32/EyeStye.N


Linux
  1. Come installare e utilizzare telnet su Kali Linux

  2. Come installare e utilizzare Helm in Kubernetes

  3. Come installare e utilizzare Flatpak in Linux

  4. Come installare e utilizzare Traceroute in Linux

  5. Come installare e utilizzare Mosh Command Line Tool Linux

Come installare e utilizzare R su Ubuntu

Come installare e utilizzare lo strumento Pigz in Linux

Come installare e utilizzare il comando fd in Linux

Come installare e utilizzare Nu Shell su Linux

Come installare e utilizzare lo strumento di monitoraggio delle risorse Bpytop su Ubuntu 20.04

Come installare e utilizzare Docker su AlmaLinux 8