Skip to content
KitploitKITPLOIT
ToolsExploitsBlog
Log in
Einreichen
ToolsExploitsBlog
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
CVE-2025-7771 — Vollständige Exploit-Kette für CVE-2025-7771 in ThrottleStop.sys, die unvalidierte physische Speicher-R/W-IOCTLs missbraucht, um unter Windows von Administrator zu SYSTEM zu eskalieren. | Kitploit
Tools/GitHubGitHub/yulisec/cve-2025-7771
DefensivwerkzeugePrivilege EscalationSchwachstellenanalyseExploitationPenetrationstestsRed TeamingPayload-EntwicklungBinary-Exploitation
GitHubyulisec/cve-2025-7771

CVE-2025-7771

Vollständige Exploit-Kette für CVE-2025-7771 in ThrottleStop.sys, die unvalidierte physische Speicher-R/W-IOCTLs missbraucht, um unter Windows von Administrator zu SYSTEM zu eskalieren.

1vor 12h 25mNoch nicht geprüft

Beliebteste

Alle anzeigen →

Entdecken Sie die meistgenutzten Tools unserer Community.

Alle Tools erkunden

Durchsuchen Sie unsere Tool-Sammlung

Alle Tools anzeigen →
Repository anzeigen
Teilen

CVE-2025-7771 — ThrottleStop.sys Beliebiges physisches Speicher-Lesen/Schreiben

Vollständiger Proof-of-Concept für den TechPowerUp-Treiber ThrottleStop.sys (CVE-2025-7771). Ein signierter, weiterhin ladbarer Kernel-Treiber stellt unvalidiertes Lesen und Schreiben physischen Speichers über zwei IOCTLs bereit. Dieses Repo verwandelt dieses Primitiv in eine funktionierende lokale Privilegieneskalation von Administrator zu SYSTEM und dokumentiert eine Gerätenamens-Eigenheit, die die meisten pfad- und dateinamenbasierten Erkennungen aushebelt.

Ein PoC für dieselben IOCTLs existierte bereits (siehe Credits). Dies ist eine unabhängige, vollständige Exploit-Kette und keine Primitiv-Demonstration.

Betroffener Treiber

FeldWert
SHA25616F83F056177C4EC24C7E99D01CA9D9D6713BD0497EEEDB777A3FFEFA99C97F0
SHA182ED942A52CDCF120A8919730E00BA37619661A3
MD56BC8E3505D9F51368DDF323ACB6ABC49
Version3.0.0.0 ("Low-Level Driver", 2004-2020)
SigniererTechPowerUp LLC, DigiCert EV Code Signing
Zertifikat-Thumbprint524EDA9C819321C66E22C7BABEB23DAEAFFB2182
Zertifikat-Gültigkeit2019-08-10 bis 2022-06-15

Das Zertifikat ist 2022 abgelaufen, aber die Signatur trägt einen vertrauenswürdigen Gegenzeichnungs-Zeitstempel, sodass Windows sie weiterhin lädt. Sperrung (Revocation) hilft nur, wenn ihr Datum vor dem Signierzeitpunkt liegt, was bei alten Treibern wie diesem selten der Fall ist.

Die Versionsressource enthält kein CompanyName, OriginalFilename oder InternalName, sodass die Datei anhand ihrer eigenen Metadaten keinem Hersteller zugeordnet werden kann.

Der Fehler

Zwei IOCTLs lesen und schreiben physischen Speicher ohne Grenzen- oder Adressvalidierung:

IOCTLOperation
0x80006498Physisches Lesen
0x8000649CPhysisches Schreiben

Beide sind METHOD_BUFFERED, sodass kein Dereferenzieren von Benutzerzeigern stattfindet; der Defekt ist die fehlende Validierung der vom Aufrufer gelieferten physischen Adresse, nicht ein ungeprüfter Zeiger.

Erwähnenswert: Der Schreib-Handler 0x8000649C ist als FILE_READ_ACCESS deklariert. Ein schreibgeschützt geöffnetes Handle kann dennoch physische Schreibvorgänge auslösen, sodass die deklarierte Zugriffsmaske nicht dem entspricht, was der Handler tatsächlich tut.

Auswirkung

Das Öffnen des Geräts erfordert Administratorrechte, sodass dies für sich genommen keine Überschreitung einer Privilegiengrenze ist. Was es einem Angreifer gibt, der bereits Admin ist, ist beliebiges Kernel-Lesen/Schreiben aus dem Benutzermodus, was die Schutzmaßnahmen aushebelt, die oberhalb von Admin greifen sollen: HVCI-Codeintegrität, PPL und EDR/AV-Selbstschutz. Klassisches Bring-your-own-vulnerable-driver.

Als konkrete Demonstration nutzt der PoC das Lese/Schreib-Primitiv, um das SYSTEM-Token zu stehlen und eine SYSTEM-Shell zu starten.

CVSS 4.0: AV:L/AC:H/AT:N/PR:H/UI:N/VC:H/VI:H/VA:H/SC:H/SI:H/SA:H (8.7, High).

Wie der Exploit funktioniert

Alles läuft aus dem Benutzermodus gegen die physischen Lese/Schreib-IOCTLs des Treibers. Es gibt kein Page-Table-Walking und kein CR3 ist beteiligt; beide Prozesse werden durch direktes Scannen des physischen Speichers lokalisiert:

  1. SYSTEM lokalisieren. Physischen Speicher nach einem EPROCESS scannen, dessen ImageFileName System und dessen UniqueProcessId 4 ist. Der Scan ist auf die belegten RAM-Bereiche beschränkt, die aus dem Registry-Schlüssel HARDWARE\RESOURCEMAP\...\Physical Memory der Firmware gelesen werden, nicht auf ein geratenes Fenster, sodass MMIO-Lücken nie berührt werden und nichts oberhalb des installierten RAMs übersehen wird.
  2. Das SYSTEM-Token lesen. Das Token-Feld (EPROC_TOKEN) aus dem lokalisierten EPROCESS lesen.
  3. Unseren Prozess lokalisieren. Physischen Speicher auf dieselbe Weise nach dem eigenen EPROCESS des PoC scannen, wobei der Image-Name als 8-Byte-Muster abgeglichen und mit seiner PID bestätigt wird.
  4. Das Token austauschen. Den SYSTEM-Token-Wert in unseren eigenen Token-Slot schreiben. Das Token ist ein _EX_FAST_REF, sodass die unteren Referenzzähl-Bits standardmäßig maskiert werden (--mask wählt das Verhalten).
  5. Beweisen. cmd.exe starten; whoami gibt NT AUTHORITY\SYSTEM zurück.

Die Offsets (EPROC_TOKEN, EPROC_PID, EPROC_IMG_NAME, usw.) gelten für einen bestimmten Build und müssen gegen dt nt!_EPROCESS auf der Ziel-Windows-Version bestätigt werden.

Der Name der ausführbaren Datei ist wichtig. Schritt 3 lokalisiert unseren eigenen Prozess durch Abgleich seines ImageFileName im physischen Speicher, und dieses Feld ist auf 15 Zeichen begrenzt, wobei der Scan die ersten 8 abgleicht. Halten Sie den kompilierten Namen kurz und unverwechselbar; wenn Sie die Binärdatei umbenennen, bleiben Sie innerhalb dieses Limits, sonst findet der Selbst-Scan den Prozess nicht.

Gerätename ist angreiferkontrolliert

Der Treiber verwendet keinen festen Gerätenamen. Er leitet den Namen des Geräteobjekts vom Dienstnamen ab, unter dem er registriert ist; der Dateiname auf der Festplatte ist irrelevant. Wird die Binärdatei unter dem Dienst TRIXX registriert, ergibt sich \\.\TRIXX, egal wie die Datei auf der Festplatte heißt.

Somit ist jede Erkennung, die auf \Device\ThrottleStop oder ThrottleStop.sys abzielt, trivial umgehbar. Die Erkennung muss auf dem Datei-Hash oder dem Signaturzertifikat basieren:

root@kitploit:~
SHA256:     16F83F056177C4EC24C7E99D01CA9D9D6713BD0497EEEDB777A3FFEFA99C97F0
Thumbprint: 524EDA9C819321C66E22C7BABEB23DAEAFFB2182
Subject:    CN=TechPowerUp LLC, O=TechPowerUp LLC, L=Spokane, S=Washington, C=US

Die DEVICE_NAMES-Liste im Quellcode ist nur eine Sonde für bekannte Produktinstallationen. Übergeben Sie einen Gerätenamen als Argument, um einen selbst registrierten Dienst anzusprechen.

Verwandte TechPowerUp-Treiber

CVETreiber
CVE-2019-7245GPU-Z.sys
CVE-2025-5324GPU-Z.sys
CVE-2025-7771ThrottleStop.sys (dieses Repo)

Der Treiber ist nicht enthalten

Die Binärdatei wird hier nicht mitgeliefert. Überprüfen Sie jede Kopie gegen den obigen SHA256. Das Sample ist in LOLDrivers katalogisiert.

Build

root@kitploit:~
cl /nologo /EHsc /W4 /O2 src\ThrottleStop.cpp /Fe:myLittleLpe.exe /link advapi32.lib

Verwendung

Nur für den Laboreinsatz. Führen Sie es in einer isolierten VM mit einem Snapshot zum Zurückrollen aus.

root@kitploit:~
sc.exe create <name> type= kernel binPath= C:\path\to\ThrottleStop.sys
sc.exe start <name>

myLittleLpe.exe

sc.exe stop <name>
sc.exe delete <name>

Die Binärdatei nimmt keine Argumente entgegen. Sie gibt die physische Speicherkarte aus, scannt nach dem SYSTEM- und dem lokalen EPROCESS, tauscht das Token aus und startet cmd.exe als NT AUTHORITY\SYSTEM.

Demo

myLittleLpe.exe-Lauf mit physischer Speicherkarte, EPROCESS-Scan, Token-Austausch und einer SYSTEM-Shell

Andere PoCs und frühere Arbeiten

Andere öffentliche Arbeiten zum selben Treiber, zum Vergleich:

  • Demoo1337/ThrottleStop — früherer PoC für dieselben IOCTLs
  • xM0kht4r/CVE-2025-7771 — physisches Lesen/Schreiben plus VA-zu-PA via Superfetch
  • AmrHuss/throttlestop-exploit-rw — physisches Lesen/Schreiben mit Superfetch-Adresstranslation
  • v31l0x1/ThrottleStopPPL — Umgehung des PPL-Schutzes
  • Yuri08loveElaina/CVE-2025-7771 — eine weitere Implementierung

Credits

  • LOLDrivers — Katalogisierung verwundbarer Treiber

Haftungsausschluss

Veröffentlicht für Defensivforschung und Detection Engineering. Die Schwachstelle ist bereits als CVE-2025-7771 öffentlich. Alles hier wurde auf Systemen getestet, die dem Autor gehören. Führen Sie dies nicht gegen Systeme aus, die Ihnen nicht gehören oder die Sie nicht testen dürfen.

Tool herunterladen