
Эксплойты для CVE-2017-6008, переполнение буфера пула ядра, приводящее к повышению привилегий.
CVE-2017-6008 — это уязвимость в сканере HitmanPro, позволяющая повысить привилегии через эксплуатацию переполнения буфера пула ядра. Представленные эксплойты используют атаку перезаписи указателя квотного процесса (Quota Process Pointer Overwrite), описанную в статье Тарьея Мандта.
Также эксплойты используют мою библиотеку распыления пула.
Подробную статью об эксплойте для Windows 7 можно найти здесь.
В этой версии используется другая уязвимость в драйвере hitmanpro37.sys — чтение за пределами границ (Out-Of-Bounds read), которое позволяет утечь Cookie пула. Эта утечка позволяет применить ту же самую атаку в Windows 10.
Подробную статью об эксплойте для Windows 10 можно найти здесь.
Эксплойт использовал технику, описанную Сезаром Серрудо в 2012 году, для повышения привилегий путём установки поля Privileges.Enabled структуры TOKEN.
Однако, начиная с Windows 10 v1607, ядро также проверяет значение поля Privileges.Present токена.
Поле Privileges.Present токена — это список привилегий, которые МОГУТ быть включены для данного токена с помощью API AdjustTokenPrivileges.
Таким образом, фактические привилегии TOKEN теперь представляют собой битовое поле, являющееся результатом Privileges.Present & Privileges.Enabled.
Это означает, что эксплойт в текущем состоянии больше не работает, начиная с Windows 10 v1607. Кроме того, эксплойт также нарушен изменениями в пуле, произошедшими начиная с Windows 19H1, с появлением сегментной кучи в ядре.
Обновлённые работы по эксплуатации переполнения буфера пула ядра можно найти в этой статье и слайдах.