
Exploits für CVE-2017-6008, einen Kernel-Pool-Pufferüberlauf, der zur Privilegienerweiterung führt.
CVE-2017-6008 ist eine Schwachstelle im HitmanPro-Scanner, die eine Privilegienausweitung durch die Ausnutzung eines Kernel-Pool-Pufferüberlaufs ermöglicht. Die hier verwendeten Exploits nutzen den Quota-Process-Pointer-Overwrite-Angriff, wie er in Tarjei Mandts Paper beschrieben wird.
Außerdem verwenden die Exploits meine Pool-Sprayer-Bibliothek
Ein ausführliches Paper über den Windows-7-Exploit finden Sie hier.
Diese Version nutzt eine weitere Schwachstelle im Treiber hitmanpro37.sys, einen Out-of-Bounds-Read, mit dem wir das Pool-Cookie auslesen. Dieser Leak ermöglicht es uns, denselben Angriff unter Windows 10 einzusetzen.
Ein ausführliches Paper über den Exploit unter Windows 10 finden Sie hier.
Der Exploit nutzte eine von Cesar Cerrudo im Jahr 2012 beschriebene Technik, um seine Privilegien durch das Setzen des Felds Privileges.Enabled der TOKEN-Struktur zu erhöhen.
Seit Windows 10 v1607 prüft der Kernel jedoch zusätzlich den Wert des Felds Privileges.Present des Tokens.
Das Feld Privileges.Present des Tokens ist die Liste der Privilegien, die für dieses Token mithilfe der API AdjustTokenPrivileges aktiviert werden KÖNNEN.
Die tatsächlichen Privilegien des TOKEN sind nun also das Bitfeld, das sich aus Privileges.Present & Privileges.Enabled ergibt.
Das bedeutet, dass der Exploit in seinem aktuellen Zustand seit Windows 10 v1607 nicht mehr funktioniert. Außerdem wird der Exploit auch durch die Änderungen im Pool seit Windows 19H1, mit der Einführung des Segment-Heaps im Kernel, unwirksam.
Aktualisierte Arbeiten zur Ausnutzung von Kernel-Pool-Pufferüberläufen finden Sie in diesem Paper und diesen Folien.