Skip to content
KitploitKITPLOIT
ToolsBlog
Einreichen
ToolsBlog
Einreichen

Hacking-, PenTest- und Cybersicherheits-Tools für Ihr Sicherheitsarsenal!

Kitploit ist ein Verzeichnis von Hacking-, Cybersicherheits- und Pentesting-Tools. Entdecken Sie die neuesten Projekt-Updates, um Schwachstellen zu finden, Systeme zu analysieren, Tests zu automatisieren und Ihre Sicherheit zu stärken.

··Feeds·Kontakt·Datenschutz·© 2026 Kitploit

Tool-Verzeichnis

Kategorien

Alle Kategorien anzeigen
Loading categories
WhacAMole — Live-Speicheranalyse zur Erkennung von Malware-IOCs in Prozessen, Modulen, Handles, Tokens, Threads, .NET-Assemblys, Speicheradressraum und Umgebungsvariablen. Erstellt Dumps, erkennt und disassembliert Hooks, Shellcode, Speicherregionen, Module und Prozesse. | Kitploit
Tools/GitHubGitHub/ignacioj/whacamole
Management von Indicators of Compromise (IOC)Dynamische Analyse (Sandboxing)SpeicherforensikReverse EngineeringShellcodeDebuggerForensikMalware-AnalyseDigitale ForensikBinäranalyseBedrohungsanalyseIncident Response
454vor 1 JahrVon Kitploit geprüft

Beliebteste

Alle anzeigen →

Entdecken Sie die meistgenutzten Tools unserer Community.

Alle Tools erkunden

Durchsuchen Sie unsere Tool-Sammlung

Alle Tools anzeigen →
Teilen
GitHubignacioj/whacamole

WhacAMole

Live-Speicheranalyse zur Erkennung von Malware-IOCs in Prozessen, Modulen, Handles, Tokens, Threads, .NET-Assemblys, Speicheradressraum und Umgebungsvariablen. Erstellt Dumps, erkennt und disassembliert Hooks, Shellcode, Speicherregionen, Module und Prozesse.

Repository anzeigen

WhacAMole

WAM_logo

WhacAMole ist ein Programm, das Prozesse im Arbeitsspeicher umfassend analysiert, Anomalien im Zusammenhang mit Malware erkennt und meldet und alle relevanten Informationen zur Überprüfung, Korrelation oder Analyse in Dateien speichert sowie Speicherbereiche, Prozesse und verdächtige Module dumpen kann. Um dies zu erreichen, analysiert es nicht nur die Anomalien der Speicherregionen der Prozesse und der von ihnen geladenen Module, sondern auch den gesamten vom Prozess genutzten Speicherplatz eingehend. Derzeit ist WhacAMole in der Lage, 67 Warnungen im Zusammenhang mit bösartigem Verhalten zu identifizieren, die nur auf Malware zurückzuführen sein können. Es zeigt mehr als 70 Eigenschaften der Prozesse, des Speichers und der Module an, vergleicht viele ihrer im Speicher gelesenen Attribute mit denen, die in der entsprechenden Datei auf der Festplatte erscheinen, zerlegt verdächtige Speicherbereiche teilweise und zerlegt exportierte Funktionen, die im Speicher modifiziert wurden, teilweise, damit Analysten ihre eigenen Untersuchungen durchführen können.

Modificación de función por malware

Im Gegensatz zu anderen ähnlichen Programmen stellt es Analysten alle relevanten Informationen zu den Prozessen zur Verfügung und kennzeichnet diejenigen Merkmale, die mit Malware in Verbindung stehen, mit verschiedenen Warnungen, sodass sie ihre eigene Analyse durchführen oder nach anderen Anzeichen für die Existenz bösartiger Prozesse suchen können. Die Warnungen werden nach ihrer Gefährlichkeit und der Anzahl der Prozesse, in denen dasselbe Verhalten auftritt, auf einer Skala von sechs Werten klassifiziert, die im HTML-Dokument mit einer Farbskala dargestellt wird. Dabei ist 6 (schwarze Farbe) ein Indikator für die höhere Wahrscheinlichkeit, dass das erkannte Merkmal auf Malware zurückzuführen ist, und 1 (graue Farbe) bedeutet, dass das Verhalten zwar abnormal ist, aber viele Systemprozesse dasselbe Verhalten aufweisen:

Color codes

Um die Arbeit der Analysten zu erleichtern, werden die Informationen auf dem Bildschirm, in einer HTML-Datei mit einem Navigationsbereich der analysierten Prozesse und in CSV-Textdateien dargestellt. Im Seitenbereich des HTML-Dokuments wird der Prozessbaum angezeigt, mit der Farbe, die der höchsten in ihnen erkannten Warnung entspricht, mit dem Hyperlink zu seiner Position im Dokument, und mit der blauen Farbe in seiner PID, wenn es sich um einen 32-Bit-Prozess handelt, oder grün, wenn es sich um einen .NET-Prozess handelt. Prozesse, die Control Flow Guard (CFG) aktiviert haben, werden kursiv dargestellt.

Tree1

Informationen über Remote-RDP-Sitzungen werden am Anfang der Prozessinformationen angezeigt:

RDP

Die Netzwerkfähigkeit wird auf zwei Arten angezeigt: Wenn eine TCP-Verbindung erkannt wurde, wird sie mit dem Erdglobus-Symbol angezeigt, und wenn ein verbundener Socket erkannt wurde, wird sie mit einem leeren Globus-Symbol angezeigt. Hinzugefügtes Symbol (weißer Kreis) für Prozesse mit HTTP-Navigationsbibliotheken im Speicher: wininet.dll und winhttp.dll.

TreeTCPSocket

Netzwerkdetail:

TCPDetail

Verbundener Socket:

socketDetail

Es gibt ein spezielles Symbol (einen Schlüssel), wenn eine Mimikatz-ähnliche Aktivität erkannt wird.

socketDetail

Am unteren Rand des Navigationsbereichs des HTML-Dokuments werden alle Warnungen mit ihrer Farbe und den PIDs der Prozesse, in denen sie erkannt wurden, als Hyperlink zur Position des Dokuments, in dem der Prozess angezeigt wird, dargestellt.

Detections

Wenn keine Prozesse mit einer Warnung erkannt wurden, wird ihr Name auf weißem Hintergrund angezeigt.

Das Hauptpanel zeigt alle Prozesse mit ihren Informationen in einklappbaren Abschnitten, die standardmäßig ausgeblendet sind. Alle Warnungen sind immer sichtbar.

socketDetail

Gespeicherte Speicherbereiche werden mit dem Schlüssel 0x0E xoriert, um zu verhindern, dass Antivirenprogramme sie löschen.

Analysiert, vergleicht und präsentiert Informationen von:

1. Prozesse:

  • Name des Prozesses.
  • Dateigröße.
  • Prozess-PID.
  • PPID des Prozesses.
  • TCP- und UDP-Netzwerkverbindungen.
  • Gibt an, ob der Prozess in vier PEB-Listen erscheint: InLoadOrderModuleList, InMemoryOrderModuleList, InInitializationOrderModuleList und LdrpHashTable.
  • Gibt an, ob der Prozess im Speicher sichtbar ist (VAD).
  • Rich-Header-Informationen.
  • Exportierte Funktionen, aus dem Speicher und aus der Datei gelesen.
  • Importierte Funktionen.
  • Verzögerte Importmodule.
  • Schutz des dem Prozessmodul zugewiesenen Speichers.
  • Speichertyp.
  • Prozess-Einstiegspunkt, aus dem Speicher gelesen.
  • Prozess-Einstiegspunkt aus der Datei gelesen.
  • Speicheradresse des Prozesses.
  • PE-Abschnitte, im Speicher und in der Datei gelesen. Beide werden nur angezeigt, wenn ein Unterschied besteht.
  • Größe des PE-Datenabschnitts.
  • Merkmale der ausführbaren Datei (DLLCharacteristics).
  • Die Hauptversionsnummer des Images (MajorImageVersion).
  • Ursprüngliche und berechnete Prüfsumme.
  • Aus der VERSIONINFO-Ressource, aus dem Speicher und aus der Datei gelesen, zeigt es die Werte von: Comments, CompanyName, FileDescription, FileVersion, InternalName, LegalCopyright, LegalTrademarks, OriginalFilename, PrivateBuild, ProductName, ProductVersion, SpecialBuild.
  • Sitzungs-ID des Prozesses, von der Local Security Authority (LSA) bezogen.
  • Sitzungs-ID, die vom Prozess sichtbar ist.
  • Lokal eindeutige Kennung (LUID) der Anmeldesitzung.
  • Lokal eindeutige Kennung (LUID) der Anmeldesitzung des Prozesses, von dem er stammt.
  • Token-Integrität.
  • Token-Typ.
  • Anmeldetyp.
  • Verwendetes Authentifizierungspaket.
  • Benutzer und Domäne.
  • Sicherheitskennung (SID) des Benutzers.
  • Mitgliedschaft in der lokalen Administratorengruppe.
  • Prozess-Befehlszeile.
  • Prozessdateipfad. Zeigt den vollständigen Namen der VAD und des PEB, falls diese abweichen.
  • Aktuelles Arbeitsverzeichnis (CWD) des Prozesses.
  • PE-Format: x86/x64.
  • Typ der Zielmaschine (Target Machine).
  • Datum/Uhrzeit der Prozesserstellung.
  • Zeit vom Systemstart bis zur Prozesserstellung.
  • Signatur der PE.
  • Adresse der Programm-Datenbankdatei (.pdb), im Speicher und in der Datei gelesen.
  • Datum/Uhrzeit aus dem IMAGE_FILE_HEADER, im Speicher und in der Datei gelesen.
  • Datum/Uhrzeit aus dem IMAGE_DEBUG_DIRECTORY, im Speicher und in der Datei gelesen.

• Warnungen:

root@kitploit:~
[Admin Privs]
[Alternate credentials]
[Alternate network credentials]
[Delphi 4 – Delphi 2006]
[Entry Point]
[LogonType]
[Managed code but no Assemblies detected - .NET ETW disabled]
[Mismatching Path]
[Name of the module hidden in memory]
[NTLM Authentication]
[PE anomalies]
[PEB ImageBaseAddress forgery]
[Possible .NET in memory loaded as Assembly.Load(byte[])]
[Process checkSum is 0]
[Process checkSum mismatch]
[Process Ghosting]
[Process Hollowing]
[Process Memory region hash mismatch]
[Process Memory region Protection value modified]
[Process Memory region WX]
[Process Name != Internal Name]
[PROCESS NOT SIGNED]
[Process Private memory region]
[Process Unknown executable memory region]
[Section Table]
[Shared memory subversion]
[SizeOfInitializedData is 0]
[SUSPENDED PROCESS]
[Suspicious Commandline]
[Suspicious Environment Variable]
[TimeDateStamp Inequality]
[Transaction detected: TxF/TxR]
[Unmanaged process/managed code execution detected]
[Unusual CWD]

Processes

2. Module:

  • Name des Moduls.
  • Dateigröße.
  • Dateipfad. Zeigt den vollständigen Namen der VAD und des PEB, falls diese abweichen.
  • Gibt an, ob der Prozess in vier PEB-Listen erscheint: InLoadOrderModuleList, InMemoryOrderModuleList, InInitializationOrderModuleList und LdrpHashTable.
  • Gibt an, ob der Prozess im Speicher sichtbar ist (VAD).
root@kitploit:~
Was Sie in einem normalen Modul erwarten würden, ist LMIVH:
L = InLoadOrderModuleList(PEB).
M = InMemoryOrderModuleList (PEB).
I = InInitializationOrderModuleList (PEB).
V = Im virtuellen Speicher des Prozesses erkannt.
H = In der PEB-Hashliste erkannt.

Wenn es aus den drei PEB-verknüpften Listen entfernt wurde, würden Sie sehen:
    ---VH

Wenn das Modul manuell von der Malware geladen wird, würde es in keiner der PEB-Listen erscheinen, könnte aber durch Scannen des Speichers erkannt werden,
es würde also erscheinen als:
    −−−V−

Mit der DLL Hollowing mit Moat-Technik (siehe https://github.com/forrest-orr/artifacts-kit für einen POC) wäre das Ergebnis:
    -----
  • Rich-Header-Informationen.
  • Exportierte Funktionen, aus dem Speicher und aus der Datei gelesen.
  • Schutz des dem Modul zugewiesenen Speichers.
  • Speichertyp.
  • Prozess-Einstiegspunkt, aus dem Speicher gelesen.
  • Prozess-Einstiegspunkt aus der Datei gelesen.
  • Speicheradresse des Prozesses.
  • PE-Abschnitte, im Speicher und in der Datei gelesen. Beide werden nur angezeigt, wenn ein Unterschied besteht.
  • Größe des PE-Datenabschnitts.
  • Merkmale der ausführbaren Datei (DLLCharacteristics).
  • Die Hauptversionsnummer des Images (MajorImageVersion).
  • Ursprüngliche und berechnete Prüfsumme.
  • PE-Format: x86/x64.
  • Typ der Zielmaschine (Target Machine).
  • Datum/Uhrzeit des Ladens des Moduls in den Speicher.
  • Aus der VERSIONINFO-Ressource, aus dem Speicher und aus der Datei gelesen, zeigt es die Werte von: Comments, CompanyName, FileDescription, FileVersion, InternalName, LegalCopyright, LegalTrademarks, OriginalFilename, PrivateBuild, ProductName, ProductVersion, SpecialBuild.
  • Signatur der EP.
  • Adresse der Programm-Datenbankdatei (.pdb), im Speicher und in der Datei gelesen.
  • Datum/Uhrzeit aus dem IMAGE_FILE_HEADER, im Speicher und in der Datei gelesen.
  • Datum/Uhrzeit aus dem IMAGE_DEBUG_DIRECTORY, im Speicher und in der Datei gelesen.
  • Datum/Uhrzeit aus dem IMAGE_EXPORT_DIRECTORY, im Speicher und in der Datei gelesen.
  • Datum/Uhrzeit aus dem IMAGE_RESOURCE_DIRECTORY, im Speicher und in der Datei gelesen.
  • SHA1-Hash der Datei.
  • Informationen, ob es sich um eine .NET-ausführbare Datei handelt und CLR-Version.

• Warnungen:

root@kitploit:~
[Abnormal PE Header]
[Delphi 4 – Delphi 2006]
[DLL Hiding]
[DLL Hollowing]
[Mismatching Path]
[Module checkSum is 0]
[Module checkSum mismatch]
[Module Name != OriginalFileName]
[MODULE NOT SIGNED]
[Module PE anomalies]
[Module SizeOfInitializedData is 0]
[Module TimeDateStamp Inequality]
[Name of the module hidden in memory]
[Phantom DLL Hollowing TxF]
[Private memory region]
[Section Table]
[Signed PE NOT MEM_IMAGE]
[Unsigned PE NOT MEM_IMAGE]
[Unusual module]

Modules

3. Handles: Alle Prozesshandles der Typen File, Key, Mutant, Process, Thread, Token und Section werden angezeigt. Je nach Handle-Typ werden die folgenden Informationen angezeigt:

File: Vollständige Adresse der Datei.

Handle File

NamedPipe: Client-Prozess, Server-Prozess, gewährter Zugriff, Adresse des Objekts im Kernel.

Named pipe

Key: Vollständige Adresse des zugegriffenen Schlüssels.

Handle Key

Mutant: Name des Mutanten.

Mutant

Process: Prozess-ID, Prozessname, gewährter Zugriff, Kernel-Objektadresse.

Handle Process

Thread: Prozessname, Prozess-ID, Thread-ID, gewährter Zugriff, Kernel-Objektadresse.

Handle Thread

Token: Sicherheitskennung (SID) des Benutzers, Benutzer und Domäne, lokal eindeutige Kennung (LUID) der Anmeldesitzung, Token-Typ.

Handle Token

Section: Objektname, Handle-ID, Speicheradresse, Größe, Speicherzuordnungseigenschaften, Modul-Einstiegspunkt (falls zutreffend), erlaubter Zugriff, Objektadresse im Kernel.

Handle Section

• Warnungen:

root@kitploit:~
[Handle-Section Phantom DLL Hollowing TxF]
[Handle-Section Suspicious: Injection]
[Pipe Handle to another process]
[Process Handle to another process]
[ShadowMove Lateral Movement]

4. Tokens: In Threads, in denen ein Token erkannt wird, wird Folgendes angezeigt:

  • Thread-ID.
  • Status des Threads.
  • Benutzer und Domäne.
  • Lokal eindeutige Kennung (LUID) der Anmeldesitzung.
  • Lokal eindeutige Kennung (LUID) der Anmeldesitzung, von der sie stammt.
  • Token-Typ.
  • Token-Integrität.

• Warnungen:

root@kitploit:~
[Thread with TOKEN]

Tokens

5. Threads:

  • Thread-ID.
  • Thread-Startadresse.
  • Vollständige Adresse des Moduls.
  • Status.
  • Call Stack.

• Warnungen:

root@kitploit:~
[Thread-Memory NOT MEM_IMAGE]
[Thread-Possible Ekko technique]
[Thread-Possible Foliage technique]
[Thread-Unknown module in Stack]

Threads

6. .NET-Assemblies

  • Anwendungsdomänen.
  • Vollständige Adresse der Datei.

• Warnungen:

root@kitploit:~
[.NET Assembly w/o ILPath]

NET

7. Speicheradressraum Zeigt von allen Speicherregionen des Prozesses die Werte von:

  • Speicheradresse.
  • Schutz.
  • Zustand.
  • Typ.
  • Name der aus der VAD gelesenen Datei.
  • Größe der Region.
  • Basisadresse, zu der die Zuordnung gehört.
  • Anfänglicher Speicherzuordnungsschutz.

• Warnungen:

root@kitploit:~
[Executable memory region not MEM_IMAGE]
[Hidden PE]
[Lagos Island Method]
[Mapped Image]
[Memory region hash]
[Memory region Protection value modified]
[Memory region WX]
[Memory/File values mismatch]
[Moat detected]
[MZ/PE Not Present]
[Shellcode]
[Unknown executable memory region]

Memory

Memory

Tool herunterladen
  • Datum/Uhrzeit aus dem IMAGE_EXPORT_DIRECTORY, im Speicher und in der Datei gelesen.
  • Datum/Uhrzeit aus dem IMAGE_RESOURCE_DIRECTORY, im Speicher und in der Datei gelesen.
  • SHA1-Hash der Datei.
  • Informationen, ob es sich um eine .NET-ausführbare Datei handelt und CLR-Version.
  • Informationen, ob NTFS oder transaktionale Aufzeichnung (TxF/TxR) im Prozess erkannt wurde.
  • Sucht nach verdächtigen Umgebungsvariablen.
  • Überprüft den Status der Threads.
  • Ermittelt die laufenden Aufgaben im System, die mit jedem Prozess verbunden sind.