Wie man das forensische Werkzeug Volatility installiert und verwendet

Einer der wichtigsten Bestandteile der Malware-Analyse ist die Random Access Memory (RAM)-Analyse. Es hilft, die laufenden bösartigen Prozesse, Netzwerkaktivitäten, offenen Verbindungen usw. im betroffenen System zu identifizieren. In diesem Artikel geht es um das Open-Source-Sicherheitstool „Volatility“ zur Analyse von flüchtigen Speichern. Es kann sowohl für die RAM-Analyse von 32/64-Bit-Systemen verwendet werden als auch für die Analyse von Windows-, Linux-, Mac- und Android-Systemen. Das Volatility Framework ist in der Skriptsprache Python implementiert und kann problemlos auf Linux- und Windows-Betriebssystemen verwendet werden. Die Extraktionstechniken werden völlig unabhängig vom zu untersuchenden System durchgeführt und geben einen vollständigen Überblick über den Laufzeitzustand des Systems, so dass es in diesem Artikel um die forensische Analyse des RAM-Speicherauszugs mit Hilfe von Volatility geht. Ein weiteres Plugin von Volatility ist „cmdscan“, mit dem auch die letzten Befehle auf der kompromittierten Maschine aufgelistet werden. Bei dieser forensischen Untersuchung werden Online-Ressourcen wie „virustotal“ und „payload security“ zur Überprüfung der Ergebnisse verwendet. Am Ende werden Windows Defender- und Malware-Bytes verwendet, um die bösartigen Programme zu scannen.

Unterstützung von Speicherformaten

Das folgende Speicherformat wird von der neuesten Volatility Release[1] unterstützt.

  • Raw/Padded Physischer Speicher
  • Firewire (IEEE 1394)
  • Sachverständiger (EWF)
  • 32- und 64-Bit-Windows-Crash-Dump
  • 32- und 64-Bit Windows Ruhezustand
  • 32- und 64-Bit MachO-Dateien
  • Virtualbox Core Speicherauszüge
  • VMware Saved State (.vmss) und Snapshot (.vmsn)
  • HPAK-Format (FastDump)
  • QEMU-Speicherauszüge

Installation

Das Volatility-Tool ist für die Betriebssysteme Windows, Linux und Mac verfügbar. Für Windows und Mac OSes sind eigenständige ausführbare Dateien verfügbar und können auf Ubuntu 16.04 LTS mit folgendem Befehl installiert werden.

apt-get install volatility

Volatilitätswerkzeug installieren

Speicheranalyse

In diesem Tutorial wird die forensische Analyse des Rohspeicherauszugs auf der Windows-Plattform unter Verwendung einer eigenständigen ausführbaren Datei des Volatility-Tools durchgeführt. Es ist üblich, dass der forensische Forscher mehrere bösartige Programme auf der gefährdeten Festplatte finden kann. Daher wird die Speicheranalyse bei solchen Ereignissen sehr wichtig, da bösartige Programme oder Malware auf dem betroffenen System ausgeführt werden können.

Integritätsprüfung

Der MD5-Hash des Speicherauszugs des bösartigen Systems ist unten angegeben. Es wird berechnet, um das aufgenommene Bild vor Beginn der forensischen Analyse zu überprüfen.

MD5:               ee043142485a83f4d49a3a7899408500

Volatilitätsanalyse

Das Volatilitätswerkzeug wird verwendet, um festzustellen, ob der PC infiziert ist oder nicht. Wie wir wissen, kann das bösartige Programm aus den laufenden Prozessen aus dem Speicherauszug extrahiert werden. Daher ist es zunächst erforderlich, die unterstützten „Profile“ für das ausgegebene Speicherbild zu identifizieren. Wie unten gezeigt, wird der folgende Befehl verwendet, um die „Profile“ für das Bild zu identifizieren.

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

Speicheranalyse mit Volatilität

Die folgenden beiden Profile werden also durch den Befehl „imageinfo“ vorgeschlagen.

Win7SP0x86 , Win7SP1x86

Nun wird der unten genannte Befehl verwendet, um eine Liste der laufenden Prozesse im Speicherauszug zu erhalten.

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

liefert eine Liste der laufenden Prozesse im Speicherauszug.

Teil 1

Teil 2

Das Plugin „pslist“ des Volatilitätswerkzeugs zeigt die Prozesse im Speicherauszug an. Wie in der obigen Ausgabe gezeigt, sind nur wenige Programme wie “ 0KqEC12.exe“ und “ rdpclip.exe“ neu unter Windows OS, dies können bösartige oder neue Anwendungen für Windows OS sein. Ebenso erscheinen mehrere “ iexplore.exe“ Programme verdächtig.

Der Zweck des folgenden Befehls ist es also, die Prozesse im Baumformat (Parent/Child) anzuzeigen, um die Verknüpfung des Prozesses mit dem übergeordneten Prozess darzustellen. Es wird uns helfen, den übergeordneten Prozess des bösartigen Programms zu identifizieren.

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

Teil 1

Teil 2

Wie in der obigen Ausgabe des Plugins “ pstree des Volatility-Tools gezeigt, werden Prozesse mit ihren PIDs und PPIDs dargestellt. Wir haben bösartige Programme zur weiteren Untersuchung des betroffenen Computers hervorgehoben. Nun wird das “ malfind Plug-in (das verwendet wird, um bösartige DLL’s im Prozess zu erkennen) von Volatility gegen die markierten Prozesse verwendet.

Prozess-ID: 1120 (svchost.exe)

Der folgende Befehl mit dem Schalter malfind wird verwendet, um die bösartigen DLL’s im Verzeichnis „output“ zu speichern.

 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

Wie unten gezeigt, wird vom malfind-Plugin keine dll gefunden.

Prozess-ID: 1788 (rdpclip.exe)

Führen Sie erneut den gleichen Befehl mit PID 1788 aus, um die DLL des Prozesses zu extrahieren. Es wird jedoch keine DLL vom Plug-in gefunden.

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

Prozess-ID: 2104 (explorer.exe)

Wie unten gezeigt, wird der folgende Befehl mit PID „2104“ ausgeführt und malfind extrahiert die DLL’s aus dem Prozess.

 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

Die Ausgabe von malfind Plug-in zeigt den Speicherauszug der extrahierten DLLs des bösartigen Prozesses.

Prozess-ID: 2240(0kqEC12.exe)

Das Malfind-Plugin läuft auf PID „2240“, was für Windows-Betriebssysteme verdächtig erscheint.

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

Der Ausgang des Malfind-Plugins für den PID „2240“ ist unten dargestellt.

Prozess-ID: 2840 (iexplore.exe)

Die Ausgabe des Volatility-Tools gegen PID „2840“ ist unten dargestellt.

 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

Dieser Prozess erscheint auch deshalb als bösartig, weil er den gleichen Namen wie der Windows-Prozess „iexplorer“ verwendet.

Prozess-ID: 2364(iexplore.exe)

Ebenso läuft malfind gegen das bösartige Programm „iexplore“ mit 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

 

Der Auszug aus der Fehlfindung gegen PID „2364“ ist unten dargestellt.

Prozess-ID: 3728 (iexplore.exe)

Wie unten gezeigt, wird das Volatilitäts-Plugin zum Dumping von bösartigen Programmen gegen die PID „3728“ ausgeführt.

 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

 

Der folgende Snapshot zeigt den Auszug aus dem Malfind-Plugin gegen die PID „3728“.

 

Scan-Ergebnisse

Die Speicherauszüge der bösartigen Programme werden mit Windows Defender- und Malware-Bytes überprüft.

Windows Defender

Das Scanergebnis von Windows Defender wird unten angezeigt und ist mit „Trojan:Win32/EyeStye.N“ & „Trojan: Win32/EyeStye.plugin“ gekennzeichnet.

Die Details zu den Trojanern sind unten aufgeführt.

Dieser Trojaner protokolliert Tastenanschläge, überwacht Internetaktivitäten und stiehlt bestimmte Anmeldeinformationen und sendet die erfassten Daten dann an einen entfernten Angreifer, um finanzielle Vorteile zu erzielen. Es kann zusätzliche Malware herunterladen, die Sicherheit des Webbrowsers verringern und ein Rootkit verwenden, um seine bösartigen Aktivitäten zu verbergen[2]. Die Malware verwendet Codeinjektion, um die Erkennung und Entfernung zu behindern. Wenn “ EyeStye.N“ ausgeführt wird, kann es Code in laufende Prozesse wie cmd.exe und explorer.exe einfügen.

Unsere Analyse zeigt, dass bösartiges Programm in das Programm „explorer.exe“ injiziert wird, das der übergeordnete Bestandteil der bösartigen Programme „iexplore.exe“ ist.

MalwareBytes

Der folgende Snapshot zeigt, dass MalwareBytes auch extrahierte DLL’s als bösartig erkannt hat und sie als „Trojan.Grabber“ bezeichnet.

Befehlsverlauf (CMD-Historie)

Ein weiteres Plug-in der Volatility-Tools ist „cmdscan“, das nach der Historie der auf der Maschine ausgeführten Befehle sucht. Das Ergebnis des folgenden Befehls zeigt den Verlauf der auf dem kompromittierten PC ausgeführten Befehle.

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

Die Ausgabe des „cmdscan“ zeigt, dass der Angreifer mehrere Befehle an der Eingabeaufforderung ausführt und das bösartige Programm „iexplorer.exe“ und „ieplore.exe“ ausgeführt hat. Ein weiterer Verdächtiger in der obigen Ausgabe ist „_lt112.spn“, der auf den Online-Ressourcen gesucht wird und das Ergebnis zeigt, dass er mit dem Malware-Programm verknüpft ist.

_lt112.spn Datei

Der Analyst hat im Internet nach der Zeichenkette “ _lt112.spn“ gesucht und diese auf folgenden Seiten gefunden.

Netzwerkverbindung

Wie wir wissen, dass die Netzwerkverbindung in der Speicheranalyse gefunden werden kann, wird das Plug-in „netscan“ gegen das Speicherbild ausgeführt und das Ergebnis zeigt, dass das bösartige Programm „iexplore“ mehrere Verbindungen auf dem betroffenen Computer geöffnet hat.

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

 

Teil-1

Teil-2

Teil-3

Eine detaillierte Speicheranalyse zeigt also, dass der PC mit der Malware kompromittiert ist, die als „explorer.exe“ und „iexplore.exe“ auf dem betroffenen Computer läuft. Es zeigt auch, dass sich das bösartige Programm „iexplore.exe“ auf Port 80 vom Opfercomputer aus verbindet.

Referenzen

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

Das könnte dich auch interessieren …