Skip to content
KitploitKITPLOIT
ToolsBlog
Einreichen
ToolsBlog
Einreichen

Hacking-, PenTest- und Cybersicherheits-Tools für Ihr Sicherheitsarsenal!

Kitploit ist ein Verzeichnis von Hacking-, Cybersicherheits- und Pentesting-Tools. Entdecken Sie die neuesten Projekt-Updates, um Schwachstellen zu finden, Systeme zu analysieren, Tests zu automatisieren und Ihre Sicherheit zu stärken.

··Feeds·Kontakt·Datenschutz·© 2026 Kitploit

Tool-Verzeichnis

Kategorien

Alle Kategorien anzeigen
Loading categories
DoubleStar — Eine personalisierte/verbesserte Nachbildung der Darkhotel-„Double Star“-APT-Exploit-Kette mit Schwerpunkt auf Windows 8.1 und kombiniert mit einigen meiner eigenen Techniken. | Kitploit
Tools/GitHubGitHub/forrest-orr/doublestar
Privilege EscalationExploitationShellcodeWebanwendungs-ExploitationRed TeamingPayload-EntwicklungBinary-Exploitation
GitHubforrest-orr/doublestar

DoubleStar

Eine personalisierte/verbesserte Nachbildung der Darkhotel-„Double Star“-APT-Exploit-Kette mit Schwerpunkt auf Windows 8.1 und kombiniert mit einigen meiner eigenen Techniken.

Repository anzeigen
147273vor 4 JahrenVon Kitploit geprüft

Beliebteste

Alle anzeigen →

Entdecken Sie die meistgenutzten Tools unserer Community.

Alle Tools erkunden

Durchsuchen Sie unsere Tool-Sammlung

Alle Tools anzeigen →
Teilen
Webseite

________ . . _________ __ _____ \ ____ __ _ | | | ____ / // | _____ _______ | | \ / _ \ | | | __ \ | | / __ \ _ \ \ \ \ _ __
| ` ( <_> )| | /| _\ | |
\ / / \ | | / __ _| | / /____ / _/ |/ | /|/ ___ > /___ / || (____ /|| / / / / / Windows 8.1 IE/Firefox-RCE -> Sandbox-Escape -> SYSTEM-EoP-Exploit-Kette

root@kitploit:~
                        ______________
                        | Remote PAC | 
                        |____________|  
                               ^
                               | HTTPS

_______________ RPC/ALPC _______________ RPC/ALPC _______________ | firefox.exe | ----------> | svchost.exe | -----------> | spoolsv.exe | || || <----------- || | RPC/Pipe | _______________ | | malware.exe | <---| Execute impersonating NT AUTHORY\SYSTEM ||

~

Verwendung

Um diese Exploit-Kette auszuführen, laden Sie die vollständige Release-/Ordnerstruktur auf einen nicht gepatchten Windows-8.1-x64-Rechner herunter und öffnen Sie eine dieser beiden .html-Dateien, während Sie mit dem Internet verbunden sind:

  • CVE-2019-17026\Forrest_Orr_CVE-2019-17026_64-bit.html - über Firefox v65-69 64-bit.
  • CVE-2020-0674\Forrest_Orr_CVE-2020-0674_64-bit.html - über Internet Explorer 11 64-bit (erweiterter geschützter Modus aktiviert).

Die anfängliche RCE kann entweder über IE oder FF ausgeführt werden und führt zur Ausführung eines cmd.exe-Prozesses in Ihrer Benutzersitzung mit NT-AUTHORY\SYSTEM-Berechtigungen.

Die einzelnen Exploits wurden erfolgreich in folgendem Kontext getestet:

  • CVE-2020-0674 - IE8 64-bit und WPAD unter Windows 7 x64, IE11 64-bit und WPAD unter Windows 8.1 x64.
  • CVE-2019-17026 - Firefox 65-69 (64-bit) unter Windows 7, 8.1 und 10 x64.

Beachten Sie, dass die einzelnen Exploits zwar unter mehreren Windows-Versionen funktionieren können, die vollständige Kette jedoch nur unter Windows 8.1 funktioniert.

~

Übersicht

Obwohl diese Exploit-Kette zwei (inzwischen gepatchte) 0-Day-Exploits verwendet, enthält sie auch eine Sandbox-Escape- und eine EoP-Technik, die Stand 5/4/2021 weiterhin nicht gepatcht sind und auch heute noch für die Integration in zukünftige Angriffsketten geeignet sind.

Die APT-Gruppe Darkhotel (vermutlich aus Südkorea stammend) startete Anfang 2020 eine Kampagne gegen chinesische und japanische Wirtschaftsführer und Regierungsbeamte, die eine Kombination aus Spear-Phishing und dem Hacken von Luxushotel-Netzwerken nutzte. Die von ihnen verwendeten Exploits (CVE-2020-0674 und CVE-2019-17026, zusammen als „Double Star“ bezeichnet) waren leichte 0-Day-Variationen alter/bestehender Exploits aus dem Jahr 2019: konkret UAF-Bugs in der alten JavaScript-Engine (jscript.dll) und Aliasing-Bugs in der Firefox-IonMonkey-Engine.

Was die Verwendung dieser 0-Days interessant machte, ging über ihre Fähigkeit hinaus, über die Webbrowser Internet Explorer und Firefox RCE zu erzielen: Insbesondere CVE-2020-0674 (ein UAF in der alten jscript.dll-Engine) ist in jedem Prozess ausnutzbar, in dem alter JS-Code über jscript.dll ausgeführt werden kann. Ende 2017 veröffentlichte Google Project Zero einen Blogbeitrag mit dem Titel „aPAColypse now: Exploiting Windows 10 in a Local Network with WPAD/PAC and JScript“ [1].

Diese Forschung brachte einen sehr interessanten Angriffsvektor ans Licht, der (damals) alle Windows-Versionen ab 7 betraf: Der WPAD-Dienst (bzw. „WinHTTP Web Proxy Auto-Discovery Service“) enthält eine uralte Funktionalität zum Aktualisieren von Proxy-Konfigurationen über eine „PAC“-Datei. Jeder Benutzer, der über RPC mit dem WPAD-Dienst (der innerhalb eines svchost.exe-Prozesses als LOCAL SERVICE läuft) kommunizieren kann, kann ihn dazu zwingen, eine PAC-Datei von einer entfernten URL herunterzuladen, die JS-Code enthält, der für das Festlegen der korrekten Proxy-Konfiguration für eine vom Benutzer angegebene URL verantwortlich ist. Besonders bemerkenswert ist, dass die alte jscript.dll-Engine zum Parsen dieser PAC-Dateien verwendet wird.

Dies eröffnete einen Angriffsvektor, bei dem jeder Prozess (unabhängig von eingeschränkten Benutzerrechten oder gar Sandboxing) über ALPC eine Verbindung zum lokalen WPAD-Dienst herstellen und ihn dazu zwingen konnte, eine bösartige PAC-Datei mit einem jscript.dll-Exploit von einer entfernten URL herunterzuladen. Dies würde zu einer Codeausführung im Kontext von LOCAL SERVICE führen.

Darkhotel übernahm dieses Konzept und nutzte es als Sandbox-Escape, nachdem sie über Firefox oder Internet Explorer RCE erlangt hatten. Der nächste Schritt ihrer Angriffskette ist unklar: Es scheint, dass sie ihre Privilegien irgendwie von LOCAL SERVICE auf SYSTEM erhöhten und anschließend ihre Malware aus diesem Kontext heraus ausführten. In der gesamten Analyse der Darkhotel-Double-Star-Angriffskette konnte ich keine detaillierte Erklärung dafür finden, wie sie dies erreichten; es ist jedoch davon auszugehen, dass ihre Technik kein 0-Day-Exploit gewesen sein muss. Prozesse, die vom Konto LOCAL SERVICE gestartet werden, erhalten standardmäßig das SeImpersonate-Privileg und können daher ihren Sicherheitskontext erhöhen, sofern sie über Named Pipes oder ALPC eine privilegierte Verbindung zu sich selbst erzwingen können.

Es ist wahrscheinlich, dass die APT-Gruppe Darkhotel für ihre EoP von LOCAL SERVICE Rotten Potato verwendete, da dies vor einigen Jahren die einfachste und am weitesten verbreitete Technik war (ebenso wie die in der Google-Project-Zero-Forschung „aPAColypse now“ verwendete Technik). Ich entschied mich jedoch stattdessen für eine robustere/modernere Technik: Named-Pipe-Impersonation einer erzwungenen RPC-Verbindung vom Print Spooler [2]. Diese Technik kombinierte eine alte RPC-Schnittstelle, die bei Red Teamern für das Sammeln von TGTs in Umgebungen mit aktivierter uneingeschränkter Delegierung beliebt ist (auch bekannt als „Printer Bug“), mit einem für die lokale Privilegienerweiterung angepassten Impersonation-/Rotten-Potato-Angriff.

Darüber hinaus habe ich mich anstelle von Windows 7 auf Windows 8.1 konzentriert, da dessen verbesserte Sicherheitsmaßnahmen wie nicht-deterministischer LFH, ASLR mit hoher Entropie und Control Flow Guard (CFG) eine besondere Herausforderung darstellen.

~

CVE-2020-0674

Bösartige PAC-Datei, die den CVE-2020-0674-UAF-Exploit enthält - wird per RPC-Trigger in den WPAD-Dienst svchost.exe (LOCAL SERVICE) heruntergeladen. Enthält Stage-Three-Shellcode (Spool Potato EoP). Dieser Exploit kann außerdem als anfänglicher RCE-Angriffsvektor über IE11 64-bit dienen.

_______________ RPC _______________ CVE-2020-0674 ________________ | firefox.exe | -----> | svchost.exe | ---------------> | Spool Potato | || || | shellcode | |______________| ~

CVE-2019-17026

Firefox-64-bit-IonMonkey-JIT-/Type-Confusion-RCE. Stellt den anfänglichen Angriffsvektor dar, wenn ein Benutzer mit einer verwundbaren Firefox-Version eine infizierte Webseite besucht. Diese Komponente enthält einen Stage-One-Shellcode (Egg Hunter) und einen Stage-Two-Shellcode (WPAD-Sandbox-Escape); letzterer ist aufgrund hartcodierter RPC-IDL-Schnittstellendetails für WPAD nur unter Windows 8.1 wirksam.

_______________ JIT spray ______________ DEP bypass _______________________ | firefox.exe | -----------> | Egg hunter | ------------> | WPAD sandbox escape | |___________| | shellcode | | shellcode (heap) | |________| |___________________|

~

Payloads

Diese Exploit-Kette enthält drei Shellcode-Payloads, die in diesem Repository unter Payloads\Compiled\JS in ihrer JavaScript-codierten Shellcode-Form zu finden sind:

  • Stufe eins: Egg-Hunter-Shellcode (ASM).
  • Stufe zwei: WPAD-Sandbox-Escape-Shellcode (C-DLL, sRDI zu Shellcode).
  • Stufe drei: Spool-Potato-Shellcode zur Privilegienerweiterung (C-DLL, sRDI zu Shellcode).

Wenn IE als anfänglicher RCE-Angriffsvektor verwendet wird, werden nur die Shellcodes der Stufen zwei und drei benötigt. Wenn FF als anfänglicher RCE-Angriffsvektor verwendet wird, werden alle drei verwendet.

Ich habe außerdem mehrere zusätzliche Shellcodes zu Testzwecken beigefügt (einen MessageBoxA- und einen WinExec-Shellcode). Beachten Sie bei deren Verwendung, dass der Shellcode im Fall von Firefox CVE-2019-17026 als Uint8Array dargestellt werden sollte, dem das folgende Egg-QWORD vorangestellt ist: 0x8877665544332211. Im Fall von CVE-2020-0674 sollte der Shellcode als DWORD-Array dargestellt werden.

Beachten Sie außerdem, dass Sie bei Verwendung eines WinExec- oder MessageBoxA-Payloads in Verbindung mit Firefox CVE-2019-17026 zunächst die Sandbox-Content-Stufe in „about:config“ auf 2 herabsetzen müssen.

~

Credits

maxpl0it - für die Erstellung der ersten Analyse und des PoC für CVE-2019-17026 mit Fokus auf dem Linux-Betriebssystem sowie für die Erstellung der ersten Analyse und des PoC für CVE-2020-0674 mit Fokus auf IE8/11 unter Windows 7 x64.

0vercl0k - für die Dokumentation der IonMonkey-Interna in Bezug auf Aliasing und das GVN.

HackSys Team - für Tipps zum WPAD-Dienst und Low-Level-JS-Debugging.

itm4n - für die ursprüngliche Forschung zur Kombination des RPC-Printer-Bugs mit Named-Pipe-Impersonation.

~

Links

[1] https://googleprojectzero.blogspot.com/2017/12/apacolypse-now-exploiting-windows-10-in_18.html [2] https://itm4n.github.io/printspoofer-abusing-impersonate-privileges/

Tool herunterladen