GNU/Linux >> Znalost Linux >  >> Linux

Jak nainstalovat a používat forenzní nástroj paměti Volatility

Jednou z důležitých částí analýzy malwaru je analýza paměti RAM (Random Access Memory). Pomáhá identifikovat spuštěné škodlivé procesy, síťové aktivity, otevřená připojení atd. v napadeném systému. Tento článek je o open source bezpečnostním nástroji "Volatilita" pro analýzu volatilní paměti. Lze jej použít pro analýzu RAM 32/64bitových systémů a podporuje analýzu systémů Windows, Linux, Mac a Android. Volatility Framework je implementován ve skriptovacím jazyce Python a lze jej snadno použít na operačních systémech Linux a Windows. Používá se k analýze výpisů při selhání, nezpracovaných výpisů,  výpisů VMware  a VirtualBox. Techniky extrakce se provádějí zcela nezávisle na zkoumaném systému a poskytují úplný přehled o stavu běhu systému. Tento článek je tedy o forenzní analýze výpisu paměti RAM pomocí nástroje volatility. Zásuvný modul volatility „malfind“ pomáhá odstranit škodlivý proces a analyzovat jej. Dalším pluginem volatility je „cmdscan“, který se také používá k výpisu posledních příkazů na kompromitovaném počítači. V tomto forenzním vyšetřování budou k ověření výsledků použity online zdroje, jako jsou webové stránky „virustotal“ a „payload security“. Nakonec budou ke kontrole škodlivých programů použity programy Windows Defender a Malware Bytes.

Podpora formátu paměti

Následující formát paměti je podporován nejnovější verzí Volatility [1].

  • Raw/Padded fyzická paměť
  • Firewire (IEEE 1394)
  • Expert Witness (EWF)
  • 32bitový a 64bitový systém Windows Crash Dump
  • 32bitový a 64bitový režim spánku systému Windows
  • 32bitové a 64bitové soubory MachO
  • Výpisy jádra virtuálního boxu
  • VMware Saved State (.vmss) a Snapshot (.vmsn)
  • Formát HPAK (FastDump)
  • Výpis paměti QEMU

Instalace

Nástroj Volatility je k dispozici pro operační systémy Windows, Linux a Mac. Pro Windows a Mac OS jsou k dispozici samostatné spustitelné soubory, které lze nainstalovat na Ubuntu 16.04 LTS pomocí následujícího příkazu.

apt-get install volatility

Analýza paměti

V tomto tutoriálu bude forenzní analýza surového výpisu paměti provedena na platformě Windows pomocí samostatného spustitelného souboru nástroje Volatility. V procesu vyšetřování je běžné, že forenzní vyšetřovatel může na napadeném pevném disku najít několik škodlivých programů. Analýza paměti se v takových událostech stává velmi důležitou, protože v napadeném systému může běžet škodlivý program nebo malware.

Ověření integrity

MD5 hash výpisu paměti škodlivého systému je uveden níže. Vypočítá se pro ověření získaného obrazu před zahájením forenzní analýzy.

MD5:               ee043142485a83f4d49a3a7899408500             

Analýza volatility

Nástroj Volatility se používá k určení, zda je počítač infikován nebo ne. Jak víme, škodlivý program lze extrahovat z běžících procesů z výpisu paměti. Nejprve je tedy nutné identifikovat podporované „profily“ pro obraz výpisu paměti. Jak je ukázáno níže, k identifikaci „profilů“ obrázku se používá následující příkaz.

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

Následující dva profily jsou tedy navrženy příkazem „imageinfo“.

Win7SP0x86 , Win7SP1x86

Nyní se níže uvedený příkaz používá k získání seznamu běžících procesů ve výpisu paměti.

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

část 1                                                                                  P

část-2

Plugin „pslist“ nástroje volatility ukazuje procesy ve výpisu paměti. Jak je ukázáno ve výše uvedeném výstupu, jen málo programů je jako „0KqEC12.exe “ a „rdpclip.exe “ jsou nové v operačním systému Windows. Mohou to být škodlivé nebo nové aplikace pro OS Windows. Podobně několik souborů „iexplore.exe ” programy také vypadají podezřele.

Účelem následujícího příkazu je tedy zobrazit procesy ve formátu stromu (rodič/potomek). To ukáže propojení procesu s nadřazeným procesem. Pomůže nám to identifikovat nadřazený proces škodlivého programu.

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

část 1

část 2

Jak ukazuje výše uvedený výstup „pstree ” plug-in nástroje Volatility, procesy jsou zobrazeny s jejich PID a PPID. Zdůraznili jsme škodlivé programy pro další vyšetřování stroje oběti. Nyní „malfind ” plug-in (který se používá k detekci škodlivých DLL v procesu) Volatility bude použit proti zvýrazněným procesům.

ID procesu:1120 (svchost.exe)

Následující příkaz s přepínačem malfind se používá k výpisu škodlivých DLL do „výstupního“ adresáře.

 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

Jak je ukázáno níže, zásuvný modul malfind nenalezl žádnou dll.

ID procesu:1788 (rdpclip.exe)

Znovu spusťte stejný příkaz s PID 1788 a extrahujte DLL procesu. Modul plug-in však nenalezl žádnou knihovnu 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 procesu:2104 (explorer.exe)

Jak je ukázáno níže, následující příkaz je spuštěn s PID „2104“ a malfind extrahoval DLL z procesu.

 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

Výstup zásuvného modulu malfind zobrazuje výpis extrahovaných knihoven DLL škodlivého procesu.

ID procesu:2240(0kqEC12.exe)

Zásuvný modul malfind běží na PID „2240“, což se zdá být pro OS Windows podezřelé.

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

Výstup zásuvného modulu malfind pro PID „2240“ je uveden níže.

ID procesu:2840 (iexplore.exe)

Výstup nástroje Volatility proti PID „2840“ je zobrazen níže.

 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

Tento proces se také zdá být škodlivý, protože také používá stejný název jako proces Windows „iexplorer“.

ID procesu:2364(iexplore.exe)

Podobně malfind běží proti škodlivému programu „iexplore“ s 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

Výpis malfind proti PID „2364“ je zobrazen níže.

ID procesu:3728 (iexplore.exe)

Jak je uvedeno níže, modul volatility pro ukládání škodlivého programu je spuštěn proti 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

  Následující snímek ukazuje výpis zásuvného modulu malfind proti PID „3728“.

Výsledky skenování

Výpisy škodlivých programů jsou skenovány pomocí Windows Defender a Malware bajtů.

 Windows Defender

Výsledek skenování programu Windows Defender je uveden níže a je označen jako „Trojan:Win32/EyeStye.N“  &  „Trojan:Win32/EyeStye.plugin“

Podrobnosti o trojských koních jsou uvedeny níže.

Tento trojský kůň zaznamenává stisknuté klávesy, monitoruje internetovou aktivitu a krade určité přihlašovací údaje, poté odešle zachycená data vzdálenému útočníkovi za účelem finančního zisku. Může si stáhnout další malware, snížit zabezpečení webového prohlížeče a použít rootkit ke skrytí své škodlivé aktivity [2]. Malware využívá vkládání kódu, aby zabránil detekci a odstranění. Když se „EyeStye.N“ spustí, může vložit kód do běžících procesů, jako je cmd.exe a explorer.exe.

Naše analýza ukazuje, že do programu „explorer.exe“, který je nadřazeným programem „iexplore.exe“, je injektován škodlivý program.

 MalwareBytes

Následující snímek ukazuje, že MalwareBytes také detekoval extrahované knihovny DLL jako škodlivé a pojmenoval je jako „Trojan.Grabber“.

  Historie příkazů (CMD historie)

  Dalším plug-inem nástrojů Volatility je „cmdscan“, který skenuje historii příkazů spuštěných na počítači. Výsledek následujícího příkazu ukazuje historii příkazů spuštěných na napadeném PC.

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

Výstup „cmdscan“ ukazuje, že útočník spustil několik příkazů na příkazovém řádku a spustil škodlivý program „iexplorer.exe“ a „ieplore.exe“. Další podezřelé zobrazené ve výše uvedeném výstupu je „_lt112.spn“. Je prohledán v online zdrojích a výsledek ukazuje, že je spojen s malwarovým programem.

soubor _lt112.spn

Analytik hledal „_lt112.spn ” řetězec na internetu a našel jsem jej na následujících stránkách.

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

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

 Připojení k síti

Protože víme, že síťové připojení lze nalézt v analýze paměti, tak se proti obrazu paměti spustí zásuvný modul „netscan“ a výsledek ukazuje, že škodlivý program „iexplore“  otevřel několik připojení na počítači oběti.

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

Část 1

Část 2

Část 3

Podrobná analýza paměti tedy ukazuje, že počítač je kompromitován malwarem, který běží jako „explorer.exe“ a „iexplore.exe“ na počítači oběti. Ukazuje také, že škodlivý program „iexplore.exe“ se připojuje na port 80 z počítače oběti.

 Odkazy

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


Linux
  1. Jak nainstalovat a používat Flatpak v Linuxu

  2. Jak nainstalovat a používat Traceroute v Linuxu

  3. Jak nainstalovat a používat nástroj příkazového řádku Mosh Linux

  1. Jak nainstalovat a používat telnet na Kali Linux

  2. Jak nainstalovat a používat Helm v Kubernetes

  3. Jak nainstalovat a používat Linux Screen?

  1. Jak nainstalovat a používat profilovací nástroj Gprof na Linuxu

  2. Jak nainstalovat a používat SSHFS na Linuxu

  3. Jak nainstalovat a používat Slack v Linuxu