Varonis debuts trailblazing features for securing Salesforce. Learn More

Wir stellen vor: Die Least Privilege Automation für Microsoft 365, Google Drive und Box

Mehr erfahren

Übersicht zu PeStudio: Einrichtung, Anleitung und Tipps

An overview of the free malware analysis tool PeStudio.
Neil Fox
6 minute gelesen
Letzte aktualisierung 10. Februar 2023

PeStudio ist ein Tool für die statische Malware-Analyse und zählt zu meinen Lieblingstools für die Malware-Analyse.

Mein erster Schritt, wenn ich neue Malware analysiere, ist immer, sie mit PeStudio zu analysieren. Daraus erhalte ich sehr viele Informationen über die Probe, auf deren Grundlage ich dann meinen Bericht erstellen kann. Zur ersten Triage einer Malware-Probe ist das sehr nützlich.

In diesem Artikel besprechen wir, was PeStudio ist, welche wichtigen Funktionen es bietet und wie Sie anfangen können, damit Malware zu analysieren.

Grundstruktur und Funktionen von PeStudio

Am meisten gefällt mir an PeStudio die leichte Bedienbarkeit und das klare, einfache Layout des Tools. Ein Doppelklick auf das Desktop-Symbol öffnet das Programm. Um mit der Malware-Untersuchung zu beginnen, ziehen Sie einfach die Malware-Probe in das Tool.

Dem Benutzer wird dann eine Reihe von Registerkarten angezeigt, die unterschiedliche Informationen enthalten, welche PeStudio aus der Probe gezogen hat.

Registerkarte „Main“

Beim Öffnen einer Malware-Probe in PeStudio wird dem Benutzer die Registerkarte „Main“ angezeigt.

main-1024x557

Hier werden Ihnen Informationen wie beispielsweise die Hashes der Probe angezeigt. Wenn es in Ihrem Unternehmen zu einem Malware-Vorfall gekommen ist, können Sie diese Informationen nutzen, um nach Geräten zu suchen, die diese Hashes im Dateisystem haben, und sie zu blockieren.

PeStudio gibt auch die ersten Bytes in hexadezimaler Form an, im obigen Bild sind das „4D 5A“. Das ist nützlich, denn so können wir bestätigen, dass es sich in der Tat um eine ausführbare Windows-Datei handelt. Die ersten Bytes im Header einer Datei haben je nach Dateityp immer das gleiche Bytemuster. Als Windows-Nutzer identifizieren wir in der Regel eine Datei durch die Erweiterung, die an den Dateinamen angehängt ist, z. B. „.exe“. Das Betriebssystem erkennt jedoch jeden Dateityp anhand des Byte-Musters im Header. So beginnt eine ausführbare Windows-Datei immer mit „4D 5A“ hexadezimal, das entspricht den Werten „MZ“ in ASCII.

Die Entropie der Datei wird ebenfalls aufgelistet. Das ist praktisch, da sich anhand des Entropiewerts feststellen lässt, ob die Malware gepackt ist oder nicht. Malware wird oft so gepackt, dass der vom Malware-Urheber geschriebene Code verschleiert ist. Die Kriminellen nehmen sich die Zeit, um bösartigen Code zu schreiben, und wollen es möglichst schwer machen, sich schnell die Funktionsweise der Malware anzuschauen und sich zu überlegen, wie man sie aufhalten kann.

Die Entropie wird auf einer Skala von 0 bis 8 gemessen. Je höher der Wert, desto wahrscheinlicher ist es, dass die Malware gepackt ist, wobei sich bei Werten von 7 bis 8 eigentlich mit Gewissheit sagen lässt, dass die Probe gepackt ist. PeStudio teilt uns also mit, dass wir die Malware entpacken müssen, um daraus brauchbare IOCs zu gewinnen.

In der Abbildung unten können wir sehen, dass PeStudio eine UPX-Signatur identifiziert hat – ein von Malware-Autoren häufig verwendeter Packer. Mit PeStudio können wir also herausfinden, ob eine Stichprobe gepackt ist oder nicht.

Registerkarte „Indicators“

Die nächste Registerkarte in PeStudio lautet „Indicators“ (Indikatoren). Hier werden Daten innerhalb der Probe hervorgehoben, die möglicherweise bösartig und für einen Malware-Analysten von Interesse sind.

Die obige Abbildung zeigt, wie PeStudio eine Reihe von Indikatoren identifiziert und sie auf einer Skala von 1 bis 3 einstuft. 1 ist hierbei mit hoher Wahrscheinlichkeit ein bösartiger Indikator. In diesem Beispiel wurden einige bösartige Strings, Abschnitte und Importe identifiziert und eine weitere Datei innerhalb der Probe gefunden.

Das sind alles nützliche Informationen, denn PeStudio bietet auf der linken Seite Registerkarten für Strings, Abschnitte und Importe. Damit können wir tiefer in solche verdächtigen Indikatoren einsteigen.

Registerkarte „Sections“

Die Registerkarte „Sections“ (Abschnitte) zeigt die verschiedenen Abschnitte an, aus denen die ausführbare Datei besteht.

In der obigen Abbildung sehen wir die Namen der Abschnitte, die mit dem UPX-Packer in Verbindung stehen. So können wir mithilfe von PeStudio erneut bestätigen, dass die Malware tatsächlich gepackt ist. Wir können auch sehen, dass der Abschnitt „UPX1“ die Datei enthält, die zuerst in der Registerkarte „Indicators“ erwähnt wurde. Beachten Sie, dass dieser Abschnitt fast 88 % der Datei ausmacht und ebenfalls ein hohes Maß an Entropie aufweist. Das deutet darauf hin, dass die entpackte Malware an diesem Ort gespeichert ist. Nach dem Entpacken können wir Abschnitte sehen, die typischer für eine ausführbare Datei sind.

Das obige Bild zeigt, wie sich die Abschnittsnamen geändert haben, nachdem die Malware entpackt wurde. Die Namen der Abschnitte können beliebig sein, es gibt jedoch einige häufig vorkommende Abschnitte, auf die Sie stoßen werden.

Der Abschnitt „.text“ enthält ausführbaren Code. Wenn wir uns die Spalten der Abschnittsnamen ansehen, sehen wir ein „x“ neben dem Berechtigungsbereich. Das bedeutet, dass dieser Abschnitt ausführbare Berechtigungen hat.

In den Abschnitten „.rdata“ und „.data“ werden Daten gespeichert, und PeStudio hat festgestellt, dass der Datenabschnitt beschreibbar ist.

Im Abschnitt „.idata“ wird die Importadressentabelle gespeichert. Diese wird später im Artikel behandelt.

Im Abschnitt „.rsrc“ werden Ressourcen gespeichert, die von der Malware verwendet werden können, z. B. Strings und zusätzliche Dateien.

Registerkarte „Libraries“

Die Registerkarte „Libraries“ (Bibliotheken) zeigt an, welche DLLs (Dynamic Link Libraries) von der Malware importiert werden.

libraries-1024x568

Im Bild oben können Sie sehen, dass PeStudio einige der DLLs auf die Blacklist gesetzt hat. Möglicherweise werden sie also von der Malware für bösartige Zwecke verwendet. Wenn Sie sich die Namen und Beschreibungen ansehen, können Sie davon ausgehen, dass urlmon.dll, wininet.dll und ws2_32.dll für Netzwerkfunktionen da sind. Es ist nicht sofort klar, was winmm.dll tut, aber indem man den Namen schnell googelt, kann man das herausfinden.

Es sieht so aus, als würde die Malware möglicherweise Funktionen zur Aufzeichnung von Audiodaten auf einem kompromittierten Gerät importieren. Jede DLL enthält einen eindeutigen API-Satz. Dabei handelt es sich um legitime Windows-Funktionen, die von der Malware importiert und verwendet werden können. Durch Klicken auf die Registerkarte „Imports“ können wir uns ansehen, um was für Funktionen es sich handelt.

Registerkarte „Imports“

Die Registerkarte „Imports“ (Importe) enthält eine Liste der Funktionen/APIs, die von der Malware importiert wurden; sie wird auch als IAT (Import Address Table, Importadressentabelle) bezeichnet. Wenn Sie auf die Registerkarte „Blacklist“ klicken, werden die APIs sortiert, indem alle Funktionen auf der Blacklist nach oben verschoben werden.

imports-1024x465

Das ist praktisch, denn diese Informationen geben Aufschluss darüber, wie sich die Malware verhält, wenn sie einen Host infiziert. Das Bild oben zeigt, welche APIs importiert wurden.

Praktischerweise zeigt PeStudio neben jedem API-Namen an, für welche Art von Aktivität die API dient, und zwar in der Spalte „Group“. Aus dem obigen Screenshot können wir ersehen, dass die Malware einige Funktionen im Zusammenhang mit der Registrierung importiert hat. Daher kann sie „RegCreateKeyA“ verwenden, um einen Ausführungsschlüssel zu erstellen, der die Malware beim Hochfahren startet.

Wir können ebenfalls eine API sehen, die PeStudio mit Netzwerkaktivitäten in Verbindung bringt. „URLDownloadToFileA“ teilt uns ziemlich eindeutig mit, dass die Malware in der Lage ist, zusätzliche Dateien aus dem Internet herunterzuladen. Diese Art von Informationen ist äußerst nützlich, denn bevor wir die Malware in einem Malware-Analyse-Labor oder einer Cuckoo Sandbox ausführen, können wir uns ein Bild davon machen, wie sich die Malware verhalten könnte.

Diese Informationen sind auch nützlich, wenn wir später ein Reverse Engineering der Malware mit einem Tool wie x64dbg durchführen, da wir bereits einige interessante Funktionen identifiziert haben. Für diese können wir dann Breakpoints erstellen, um zu sehen, welche Werte von der Malware an diese API übergeben werden.

Registerkarte „Strings“

Die Registerkarte „Strings“ listet alle von Menschen lesbaren Strings auf, die PeStudio in der Binärdatei identifiziert hat. PeStudio zeigt Ihnen an, welche Art von String gefunden wurde und wo er sich in der Binärdatei befindet. Nützlich finde ich jedoch vor allem die Spalten „Blacklist“, „Hint“ und „Group“ in diesem Teil des Tools.

Strings auf der Blacklist hat PeStudio zuvor in Malware-Proben gefunden. Der Abschnitt „Hint“ (Hinweis) gibt dem Benutzer einige Anhaltspunkte darüber, worauf sich der String bezieht, ebenso wie die Spalte „Group“.

strings-1024x554

Die Abbildung oben zeigt, dass PeStudio einige interessante Strings herausgezogen hat.

PeStudio bestätigt, dass der String „Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.1; Trident/4.0)“ ein Benutzer-Agent ist. Dies ist ein altes Beispiel für die Zwecke dieses Blogs. Wenn jedoch ein eindeutiger Benutzer-Agent als Teil eines Cybersicherheitsvorfalls identifiziert werden kann, ist das eine wertvolle Information – das Vorfallsreaktionsteam kann dann nach diesem Benutzer-Agenten innerhalb der Proxy-Protokolldateien des Unternehmens suchen, um weitere kompromittierte Hosts zu identifizieren.

Der nächste interessante String ist „Software\Microsoft\Windows\CurrentVersion\Run“. Das ist ein gängiger Ausführungsschlüssel, der von Malware-Autoren verwendet wird, um die Malware automatisch zu starten, wenn das Gerät neu gestartet wird. Dies wird als Persistenzmechanismus bezeichnet, und die Malware nutzt dafür eine legitime Windows-Funktion.

Auch legitime Software nutzt diese Technik, damit Ihre Lieblings-Software automatisch mitstartet, wenn Sie Ihr Gerät einschalten. Wenn Sie den Registrierungs-Editor starten, indem Sie „regedit“ in die Windows-Suchleiste eingeben, können Sie überprüfen, welche Software an dieser Stelle der Registrierung einen Ausführungsschlüssel platziert hat, um automatisch zu starten.

regedit-1024x207

In der obigen Abbildung habe ich auf meinem Host-Gerät zu „HKLM\Software\Microsoft\Windows\CurrentVersion\Run“ navigiert und kann die Software sehen, die beim Hochfahren gestartet wird. In meinem Malware-Analyse-Labor könnte ich diese Technik auch verwenden, nachdem ich eine Malware detoniert habe, um zu sehen, ob dieser Persistenzmechanismus verwendet wird. Anschließend kann ich dann ermitteln, wo sich der Persistenz-Speicherort der Malware auf der Festplatte befindet.

Einrichten von PeStudio

PeStudio ist sehr leicht zu installieren. Gehen Sie einfach auf https://www.winitor.com/ und es wird die folgende Seite angezeigt.

pestudio_home-1024x306

Klicken Sie auf die Registerkarte „Download“ und Sie können die kostenlose Version von PeStudio herunterladen, indem Sie auf „Download pestudio“ klicken.

free-1024x994

Sie werden dann aufgefordert, die neueste Version als Zip-Datei herunterzuladen.

pestudio

Entpacken Sie einfach die Datei und Sie können PeStudio als eigenständige Anwendung ausführen. Halten Sie auf jeden Fall die Augen offen, denn Marc Ochsenmeier , der Autor von PeStudio, stellt regelmäßig Updates für das Tool bereit.

FAZIT

Egal, ob Sie lernen, Malware zu analysieren, einen Malware-Vorfall zu triagieren oder eine YARA-Regel zu schreiben – PeStudio ist ein sehr nützliches Tool und bietet tiefgehende Funktionalität. Jedes Mal, wenn ich ein neues Malware-Analyse-Labor aufbaue, ist es das erste Tool, das ich installiere. Es ist auch immer das erste Tool, das ich für die Analyse einsetze.

Wenn Sie die Sicherheitsvorkehrungen in Ihrem Unternehmen ausbauen möchten, sollten Sie einen Blick auf Varonis' Edge: Perimeter Detection und auf die Data Security Platform werfen.

What you should do now

Below are three ways we can help you begin your journey to reducing data risk at your company:

  1. Schedule a demo session with us, where we can show you around, answer your questions, and help you see if Varonis is right for you.
  2. Download our free report and learn the risks associated with SaaS data exposure.
  3. Share this blog post with someone you know who'd enjoy reading it. Share it with them via email, LinkedIn, Reddit, or Facebook.
Testen Sie Varonis gratis.
Detaillierte Zusammenfassung Ihrer Datensicherheitsrisiken
Umsetzbare Empfehlungen, die auf Ihre Bedürfnisse zugeschnitten sind
Ohne Bedingungen und Auflagen
Keep reading
hinter-dem-varonis-rebranding
Hinter dem Varonis-Rebranding
Entdecken Sie die Strategie, die hinter dem Rebranding von Varonis steht – mit einem Übergang zu einem Heldenarchetyp und der Einführung von Protector 22814.
cybersecurity-trends-2024:-was-sie-wissen-müssen
Cybersecurity-Trends 2024: Was Sie wissen müssen
Erfahren Sie mehr über Datensicherheitsmanagement, KI-Sicherheitsrisiken, Änderungen bei der Compliance und mehr, um Ihre Cybersecurity-Strategie für 2024 vorzubereiten.
das-war-2023 – so-wird-2024
Das war 2023 – so wird 2024
Im Kielwasser der massiven Verbreitung von WannaCry im letzten Monat sorgt gerade eine neue Variante von Ransomware für massive Störungen, dieses Mal unter der Bezeichnung „NotPetya“. Fast den gesamten Morgen...
podcast-empfehlung:-alles,-was-sie-zu-data-security-posture-management
Podcast-Empfehlung: Alles, was Sie zu Data Security Posture Management
Im Gespräch mit Oliver Schonschek, News-Analyst bei Insider Research, hatte ich die Möglichkeit, das Konzept Data Security Posture Management zu erklären und zu zeigen, wie es sich in der Praxis umsetzen lässt. Dabei stand zunächst die Frage im Raum, ob und inwieweit wir unsere bisherigen Security-Konzepte neu denken müssen. Werden durch DSPM bewährte Praktiken wie Endpoint-Sicherheit, Firewalls und ähnliches gar obsolet?