Shed ist eine Anwendung, die es ermöglicht, die .NET -Laufzeit eines Programms zu überprüfen, um nützliche Informationen zu extrahieren. Es kann verwendet werden, um böswillige Anwendungen zu inspizieren, um einen ersten allgemeinen Überblick darüber zu erhalten, welche Informationen gespeichert werden, sobald die Malware ausgeführt wird.
Schuppen kann:
Shed ist ein Befehlszeilenwerkzeug. So zeigen Sie alle verfügbaren Optionen aus:
shed.exe --help
Um einen bereits laufenden Prozess zu inspizieren, müssen Sie die PID an Schuppen übergeben. Beispiel:
Shed.exe --pid 2356
Um ein Binärdatum zu inspizieren, muss der Schuppen es ausführen und sich daran befestigen, um die Laufzeit zu inspizieren. Beispiel:
Shed.exe --exe malware.exe
Sie können auch die Zeitspanne (in Millisekunden) angeben, um zuvor zu warten, um den Prozess auszusetzen. Auf diese Weise kann das Programm die Zeit haben, seine Eigenschaften zu initialisieren. Beispiel:
Shed.exe --timeout 2000 --exe malware.exe
Mit Schuppen kann eine .NET -Montage dank der ManagedInjector -Bibliothek in einen Remote -Prozess injizieren. Dazu ist es notwendig, die PID des Prozesses und die Exe zu injizieren. Sobald die Montage injiziert wird, kann sie durch Aufrufen einer bestimmten Methode aktiviert werden. Die Regeln zur Identifizierung der Methode werden vom ManagedInjector -Projekt vererbt und sind Folgendes:
Um beispielsweise die InjectedAssembly in den Prozess mit PID 1234 in den Vorgang zu injizieren, haben Sie den Lauf mit dem folgenden Befehl:
shed.exe --pid 1234 --exe InjectedAssembly.dll --inject
Mit der Option -Methode können Sie eine Methode von InjectedAssembly.exe zu aufrufen.
Finden Sie unten ein Beispiel für die Ausführung:
Standardmäßig werfen Schuppen sowohl den Haufen als auch die Module ab. Wenn Sie nur eine davon wünschen, geben Sie die Option -Dump-heap an, um nur die Objekte in den Haufen oder die -Dump-Moduls abzuwerfen, um nur die Module zu entsorgen.
Das Abwerfen des Haufens kann viele Informationen erstellen, die für die Analyse nicht streng nützlich sind. Sie können es mit zwei Dateien filtern:
BlackList.txt Diese Datei enthält das Präfix von Typnamen, die nicht protokolliert werden dürfen
whitelist.txt Diese Datei enthält das Präfix der Typnamen, das auch bei der schwarzen Liste protokolliert werden muss
Wenn Sie beispielsweise den gesamten System.IO -Namespace filtern möchten, aber an Protokollierung von System.io.MemoryStream interessiert sind, können Sie den ersten Wert zu BlackList.txt und dem zweiten zu Whitelist.txt hinzufügen.
In dem Beispiel -Ordner finden Sie drei verschiedene Projekte, die Sie verwenden können, um Schuppen zu testen. Beispiel:
Shed.exe --exe ..ExamplesConfigurationSampleConfigurationSample.exe
Wenn die Analyse abgeschlossen ist, druckt Shed , wo Sie das Ergebnis finden, wie unten gezeigt:
[+] Ergebnis auf C: Shed Ergebnis 7800 gespeichert
Wenn Sie Visual Studio installiert haben, führen Sie einfach die Bat -Batch -Datei Build.bat aus, und erstellt eine ZIP -Datei im Build -Ordner.
Copyright (C) 2017 Antonio Parata - @S4tan
Lizenz: GNU Allgemeine öffentliche Lizenz, Version 2 oder höher; Weitere Informationen finden Sie in diesem Archiv.