Der Inside-Out-Sicherheits Blog - Der Inside-Out-Sicherheits Blog

Process Hacker: Überblick über den Advanced Task Manager | Varonis

Geschrieben von Neil Fox | Jun 15, 2021 4:00:00 AM

Process Hacker ist ein hervorragendes Tool zur Überwachung und Untersuchung von Prozessen, die von Malware ausgeführt werden. Es wird unter Sicherheitsexperten oft für die Malware-Analyse eingesetzt, da es eine Fülle von Informationen aus Prozessen extrahieren kann, die auf einem Gerät laufen.

In diesem Artikel werden die folgenden Themen behandelt:

Was ist Process Hacker?

Process Hacker ist ein Open-Source-Tool, mit dem Sie sehen können, welche Prozesse auf einem Gerät laufen, welche Programme CPU-Ressourcen verbrauchen und welche Netzwerkverbindungen mit einem Prozess verbunden sind.

Dank dieser Funktionen ist Process Hacker ein ideales Tool, um Malware auf einem Gerät zu überwachen. Indem man sieht, welche Prozesse erstellt werden, und Netzwerkverbindungen und interessante Strings aus dem Speicher identifiziert, kann man wertvolle Kompromittierungsindikatoren (IOCs) für die Triage bei einer Malware-Infektion sammeln.

IP-Adressen und bösartige Domains sind bei der Reaktion auf einen Vorfall ein wichtiger Schritt. Indem man Process Hacker verwendet, um diese Informationen zu erfassen, kann man kompromittierte Hosts identifizieren und proaktive Sperren einrichten, um eine Malware-Infektion einzudämmen.

Ist Process Hacker sicher?

Process Hacker ist zu 100 % sicher. Einige AV-Anbieter stufen es als „Hack-Tool“ ein, und aus diesem Grund werden einigen Unternehmen in ihren Sicherheitstools eventuell Warnungen für Process Hacker angezeigt. Das bedeutet nicht, dass es einen Virus enthält.

Die ausführbare Datei „Process Hacker“, die ich in meinem Malware-Analyse-Labor ausführe, hat den md5-Hashwert „B365AF317AE730A67C936F21432B9C71“.

Wenn wir in VirusTotal nach diesem Wert suchen, können wir sehen, dass manche AV-Anbieter ihn als bösartig markiert haben:

Wenn Ihr Unternehmen beispielsweise Symantec als Antivirenlösung einsetzt, wird Process Hacker als bösartig erkannt und die Datei in die Quarantäne verschoben. Wenn Sie keine der oben genannten Antivirenlösungen einsetzen, sondern eine EDR-Lösung verwenden, wird die Datei möglicherweise ebenfalls als bösartig erkannt, da sie von 14 Anbietern auf VirusTotal als bösartig eingestuft wird.

Anwendungsfälle + Funktionsweise von Process Hacker

Unten ist die Standardanzeige für Process Hacker zu sehen, wenn es auf einem Gerät gestartet wird:

Die erste Registerkarte mit dem Namen „Processes“ (Prozesse) gibt einen Überblick darüber, welche Prozesse auf dem Gerät laufen und enthält die folgenden Informationen:

  • Name des laufenden Prozesses
  • Die PID ist die Prozess-ID – eine eindeutige Nummer, die dem Prozess zugewiesen ist.
  • Die Registerkarte „CPU“ zeigt die Menge der vom Prozess verbrauchten CPU-Leistung an.
  • Die Registerkarte „I/O total rate“ (I/O-Gesamtrate)
  • Die Registerkarte „Private bytes“ (private Bytes)
  • Die Registerkarte „User name“ (Benutzername) zeigt an, welches Konto zum Starten des Prozesses verwendet wurde
  • Die Registerkarte „Description“ (Beschreibung) zeigt Informationen darüber an, was der Prozess ist

Die Registerkarte „Processes“ (Prozesse) kennzeichnet die aufgelisteten Prozesse auch farblich. Navigieren Sie zum Menü „Hacker“ und dann zum Menü „Options“ (Optionen) um zu erfahren, was die einzelnen Farben in Process Hacker darstellen.

Daraufhin öffnet sich das Menü „Options“ (Optionen).

Wählen Sie die Registerkarte „Highlighting“ (Hervorhebung), um zu sehen, wofür die einzelnen Farben stehen:

Wir werden jetzt nicht besprechen, was jede Farbe darstellt, aber diese Funktion ist nützlich, um schnell zu erkennen, welche Prozesse in einem System zu erwarten sind, im Unterschied etwa zu einem gepackten Prozess.

Das Bild unten zeigt die von Process Hacker identifizierten Services (Dienste) an, die im Hintergrund ausgeführt werden und nicht mit dem Desktop interagieren.

Die Registerkarte „Services“ (Dienste) zeigt die folgenden Informationen an:

  • Name des identifizierten Dienstes
  • Display Name (Anzeigename) des Dienstes
  • Type (Typ) des identifizierten Dienstes, z. B. Treiber
  • Status des Dienstes, z. B. „Running“ (wird ausgeführt)
  • Start type (Starttyp), z. B. Boot-Start
  • Process identifier (Prozesskennung), falls verfügbar

Die Registerkarte „Network“ (Netzwerk) ist für die Malware-Analyse nützlich, da Malware oft versucht, die Command-and-Control-Infrastruktur (c2) des Angreifers zu erreichen.

Auf der Registerkarte „Network“ (Netzwerk) werden die folgenden Informationen angezeigt:

  • Process name (Prozessname) und PID
  • Lokale Adresse
  • Local Port (lokaler Port), der vom Prozess verwendet wird
  • Remote address (Remote-Adresse), mit der sich der Prozess verbindet
  • Remote port (Remote-Port) der Netzwerkverbindung
  • Protocol (Protokoll), das vom Prozess verwendet wird
  • State (Zustand) der erkannten Netzwerkverbindung
  • Eigentümer

Auf der Registerkarte „Disk“ (Festplatte) werden Informationen zu den Dateien auf der Gerätefestplatte angezeigt, die verwendet werden:

Auf der Registerkarte „Disk“ (Festplatte) werden die folgenden Informationen angezeigt:

  • Process name (Prozessname) und PID
  • File location (Dateispeicherort) auf der Festplatte
  • Read rate average (durchschnittliche Leserate) in Echtzeit auf der Festplatte
  • Write rate average (durchschnittliche Schreibrate) in Echtzeit auf der Festplatte
  • Total rate average (Gesamtratenmittelwert) der Lese- und Schreibausgabe
  • I/O priority (I/O-Priorität)
  • Response time (Reaktionszeit)

Identifizieren von Strings aus dem Speicher

Eine meiner Lieblingsfunktionen von Process Hacker ist die Möglichkeit, interessante Strings aus dem Speicher eines Prozesses zu ziehen, der von Malware erzeugt wurde.

Bei der Analyse von Malware führe ich sie häufig in einer Sandbox-VM aus, die für die sichere Ausführung von Malware entwickelt wurde. In dieser Phase meiner Analyse werde ich Process Hacker durchgehend offen lassen. Um den Speicher eines Prozesses mit der rechten Maustaste zu untersuchen, klicken Sie auf den Prozessnamen und wählen Sie „Eigenschaften“.

Im folgenden Beispiel habe ich ein Beispiel der Emotet-Malware ausgeführt, die den Prozess „smsfwdr.exe“ erstellt hat.

Dadurch wird das folgende Fenster geöffnet und zeigt standardmäßig die Registerkarte „General“ (Allgemein) an:

 

Wählen Sie die Registerkarte „Memory“ (Speicher).


Wählen Sie die Schaltfläche „Strings“ aus, um nach Strings im Speicher zu suchen.

Gehen Sie auf „OK“, damit alle Strings (Zeichenfolgen) im Speicher für den ausgewählten Prozess angezeigt werden.

Um die Identifizierung von Malware-IOCs zu erleichtern, suche ich gerne mit regulären Ausdrücken, indem ich auf die Schaltfläche „Filter“ klicke und „Regex (case-insensitive)“ (Regex (ohne Groß- und Kleinschreibung)) auswähle.

Dann kann ich ein Regex-Muster eingeben, in diesem Beispiel suche ich nach IP-Adressen und habe den folgenden Regex verwendet:

(?:(?:\d|[01]?\d\d|2[0-4]\d|25[0-5])\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d|\d)(?:\/\d{1,2})?

Daraufhin werden alle Strings zurückgegeben, die mit dem Regex-Muster übereinstimmen. In der Abbildung unten sehen wir einige falsch-positive Ergebnisse, aber es gibt eine Reihe von IP-Adressen, die versuchen, eine Verbindung mit der bösartigen C2-Infrastruktur der Angreifer über das HTTP-Protokoll herzustellen.

Dies ist ein sehr guter Anwendungsfall für Process Hacker, da ich nun überprüfen kann, ob diese IP-Adressen von den Sicherheitskontrollen meines Unternehmens blockiert werden. Außerdem kann ich Prüfungen durchführen, um sicherzustellen, dass keine Geräte mit diesen IP-Adressen kommunizieren.

Ich könnte auch andere Regex-Muster verwenden, um nach weiteren Informationen wie URLs zu suchen:

([A-Za-z]+://)([-\w]+(?:\.\w[-\w]*)+)(:\d+)?(/[^.!,?”<>\[\]{}\s\x7F-\xFF]*(?:[.!,?]+[^.!,?”<>\[\]{}\s\x7F-\xFF]+)*)?

Identifizieren des Netzwerkverkehrs von laufenden Prozessen

Bei der Analyse einer Malware möchten Sie möglicherweise sehen, welche Verbindungen von einem bestimmten Prozess hergestellt werden, um besser zu verstehen, wie sich die Malware verhält.

Mit der gleichen Malware aus dem vorherigen Anwendungsfall habe ich die Registerkarte „Network“ (Netzwerk) ausgewählt und auf der rechten Seite den Namen des Prozesses eingegeben, an dem ich interessiert bin: „smsfwdr“.

Dadurch wurden alle anderen Prozesse von Process Hacker herausgefiltert und es wird nur noch der Netzwerkverkehr für diesen einen Prozess angezeigt.

So kann ich bösartige C2-IP-Adressen sowie die lokalen und Ziel-Ports sehr gut identifizieren, die von den Bösewichten verwendet werden.

So installieren Sie Process Hacker

Process Hacker kann auf der offiziellen Website heruntergeladen werden. Dort finden Sie einen Link zur Download-Seite.

Im Download-Bereich haben Sie die Möglichkeit, eine Setup-Datei oder eine portable Binärdatei herunterzuladen, in diesem Beispiel habe ich die ausführbare Setup-Datei gewählt.

Nachdem Sie die Setup-Datei heruntergeladen haben, doppelklicken Sie auf die ausführbare Datei und wählen Sie „Ausführen“.

Sie werden dann vom UAC-Popup aufgefordert, Process Hacker zu erlauben, Änderungen an Ihrem Gerät vorzunehmen. Gehen Sie auf „Ja“.

Akzeptieren Sie die Lizenzvereinbarung, indem Sie auf „Next“ (Weiter) klicken:

Wählen Sie den Ort, an dem Sie Process Hacker installieren möchten, und wählen Sie „Weiter“:

Wählen Sie die Komponenten aus, die Sie installieren möchten, und gehen Sie auf „Weiter“. Standardmäßig sind alle ausgewählt.

Wählen Sie den Speicherort für die Programmverknüpfungen und wählen Sie „Weiter“:

Wählen Sie eventuelle zusätzliche Aufgaben aus:

Gehen Sie auf „Abschließen“, um die Installation abzuschließen und Process Hacker zu starten:

Abschließende Überlegungen:

Ich bin ein großer Fan von Process Hacker und verwende es immer dann, wenn ich eine Verhaltensanalyse für Malware durchführe. Wenn Sie diesen Artikel informativ fanden, sollten Sie sich diese anderen Blogbeiträge von mir ansehen, in denen ich einige meiner bevorzugten Malware-Analyse-Tools und einen kürzlich fertiggestellten Artikel über Autoruns vorstelle – ein hervorragendes Tool, mit dem Sie erkennen können, wie Malware auf einem kompromittierten Gerät Persistenz aufbaut.

Wenn Sie mehr darüber erfahren möchten, wie Sie Ihr Unternehmen vor Malware schützen können, dann ist dieser Beitrag über Malware-Schutz von Interesse, ebenso wie Varonis‘ Bedrohungserkennung und -bekämpfung, die darauf abzielt, die Zeit zur Erkennung von und Reaktion auf Cyberangriffe drastisch zu reduzieren.