In Zeiten der Cyberkriminalität ist auf AV-Programme kein Verlass mehr. Dennoch sollte man gerade in Foren wie diesem auf gefährliche Files achten, denn Keylogger sind bekanntlich eine gefahr für Gamer.
Ich möchte deshalb in diesem Tutorial darauf eingehen, wie man Files fernab von Malwarescannern oder VirusTotal auf gefährliche Aktionen untersucht.
Ich werde dabei auch auf statische und dynamische Analyse eingehen, trotzdem soll es ein grundlegender Guide sein.
Wer sich noch weiter mit der Malwareanalyse und dem Reverse Engineering beschäftigen möchte, darf sich gerne bei mir melden.
Schritt 1: Eine Analyseumgebung auf die Beine stellen
Zunächst benötigen wir eine abgeschottete Umgebung, in welcher wir die potenzielle Malware beobachten können, ohne dass sie auf unser Produktivsystem übergreift.
Dau eignet sich natürlich ein zusätzlicher Computer am besten, doch eine virtuelle Maschine ist wohl die günstigere Lösung.
Was ihr dafür benötigt:
1. Virtualisierungs-Software: VMware, VirtualBox oder MS Virtual PC. VirtualBox ist sehr einfach zu bedienen und kostenlos, VMWare bietet die meisten Features kostet aber einiges.
2. Ein momentan nicht verwendetes Windows (z.B. ein altes XP, 2000, notfalls auch Vista). Windows XP SP2 eignet sich dafür am besten, da es nur geringe Schutzmaßnahmen bietet und somit der perfekte Angriffpunkt für Malware ist.
Startet nun die Virtualisierungssoftware. Erstellt eine virtuelle Maschine mit etwa 10-15GB Festplattengröße und 256-1024MB RAM.
Startet diese virtuelle Maschine nun und legt eure Windows CD in euer richtiges Laufwerk ein. Möglicherweise müsst ihr zunächst einstellen, dass die virtuelle Maschine auf euer CD-Laufwerk zugreifen darf.
Folgt nun ganz normal der Windows-Installation und -aktivierung. Anschließend deaktiviert ihr die automatischen Updates.
Nun benötigen wir Angriffsfläche: Installiert den Adobe Flash Player sowie Java und .Net Framework.
Nun ist die virtuelle Maschine bereit.
2. Das System mit geeigneten Analysetools ausstatten
1. Netzwerküberwachung - Um eventuellen aus- und eingehenden Traffic zu überwachen, bietet sich
an. 2. Prozesse, Registry überwachen - Dazu benutze ich
. Dieser protokolliert Änderungen in Echtzeit. Nun müsst ihr alle Prozesse hinausfiltern, denn wir wollen nur die Malware überwachen. Dazu Geht ihr auf Filter -> Filter... und legt dort für jeden Prozess den Filter wie folgt an:
Process Name - is - <prozessname.exe> - Exclude.
Wenn ihr damit fertig seit, sollte im Hauptfenster kein Prozess mehr zu sehen sein. Klickt nun auf Filter -> Safe Filter und speichert ihn. Wenn ihr nun später ein File analysieren wollt, müsst ihr nur diesen Filter wieder laden.
3. Packengine erkennen - Viele Files sind mit sogennanten Cryptern gepackt um für Antivirenprogramme nicht gefährlich auszusehen. Mit
kann man diese Packengine erkennen. Diese braucht man dann nur herunterzuladen und das File zu entpacken, damit es "sein wahres" Gesicht zeigt.4. Logfile Generator - Man legt vor jeder Analyse und danach ein Logfile an, um unterschiede zu erkennen. Ich benutze dafür
. Das listet nahezu alle relevanten Änderungen auf und ihr müsst danach nur die beiden Logfiles vergleichen.3. Das File beobachten
Wenn ihr nun ein potenziell gefährliches File seht, ladet es auf der virtuellen Maschine herunter.
Geht dann wie folgt vor:
Schritt 1: Packer erkennen.
Öffnet das File in PEiD und lasst es untersuchen. Sollte dort ein Packer erkannt werden (z.B. UPX) googelt danach, ladet euch den Packer herunter und benutzt die Entpack-Funktion, um das Originalfile zu erhalten. Sollte es keinen Packer oder nur den Compiler erkennen (z.B. MS Visual Basic 6) dann ist es vermutlich nicht gepackt.
Schritt 2 - Statische Analyse.
Nun habt ihr das "Roh-File". Dieses scannt ihr nun bei VirusTotal - protokolliert die Ergebnisse. Dann scannt ihr das File mit
. Dort wird das File ausgeführt und die wichtigsten Änderungen werden protokolliert. Es dauert meist 20 Minuten, bis der Report fertig ist. Dieses Protokoll schaut ihr euch nun an und sucht nach gefährlichem Verhalten. Das kann z.B. Kontakt mit IPs oder Servern sein oder dass neue Files erstellt werden.
Schritt 3: Dynamische Analyse
Nun wird es Zeit das File in Echtzeit zu beobachten. Macht nun einen Quick-Scan mit OTL und speichert das Logfile. Startet nun Wireshark und ProcessMonitor (Filter laden nicht vergessen).
Nun führt ihr das potenziell gefährliche File aus. Wartet 1-2 Minuten und beendet es ggf.
Nun direkt erneut einen Scan mit OTL machen und das Logfile wieder speichern.
Nun speichert ihr auch die Logfiles von Wireshark und ProcessMonitor.
Schritt 4: Fazit ziehen
Nun habt ihr eine Menge Material, aus dem ihr euch nun eine Meinung bilden könnt. Solltet ihr mit manchen der Logfiles nicht ganz klarkommen, könnt ihr auch mich dazu kontaktieren. Aus all diesem Material könnt ihr eine sehr gewisse Analyse gewinnen, ob das File schädlich oder nicht ist.
Das mag relativ viel Arbeit sein, ist aber vielfach sicherer als nur VirusTotal oder einen Scan mit einem AV-Tool. Eure Ergebnisse könnt ihr nun mit anderen Usern teilen, sie werden es euch bestimmt danken.
Das war nur ein recht oberflächlicher Kurs in der Malwareanalyse, wer nun Lust auf mehr hat oder eventuell selbst ein Analytiker werden möchte darf sich jederzeit bei mir melden.
Viel Spaß!






