
Эксплойт, подтверждающий концепцию, для CVE-2025-7771, уязвимости в драйвере ядра Windows ThrottleStop.sys, позволяющей произвольное чтение/запись физической памяти и локальное повышение привилегий до SYSTEM.
PoC для CVE-2025-7771. ThrottleStop.sys предоставляет два обработчика IOCTL, которые позволяют произвольное чтение/запись физической памяти без контроля доступа — любой процесс с правами администратора может читать или записывать в любом месте физической ОЗУ.
Протестировано на Windows 10 22H2 и Windows 11 23H2 x64.
Начал с загрузки бинарного файла драйвера в IDA Pro, чтобы разобраться, как он работает внутри. Нашел диспетчерскую процедуру IRP_MJ_DEVICE_CONTROL и проследил ее до двух кодов IOCTL:
0x80006498 — чтение из физического адреса0x8000649C — запись по физическому адресуОба просто вызывают MmMapIoSpace напрямую с любым переданным адресом. Никакой проверки границ, ни валидации вызывающего, ничего. В этом и заключается ошибка.
Отсюда путь эксплуатации довольно прямолинеен:
\\.\ThrottleStopNtQuerySystemInformation класс 79) для построения карты трансляции виртуальных→физических адресовNtQuerySystemInformation класс 11ntoskrnl.exe с диска, чтобы определить RVA экспорта PsInitialSystemProcess, добавить к базе времени выполнения, чтобы получить VA ядраEPROCESS+0x4b8ActiveProcessLinks, чтобы найти собственный EPROCESSПоле токена — это _EX_FAST_REF, поэтому младшие 4 бита являются счетчиком ссылок, а не частью указателя. Отмаскируйте их при чтении токена SYSTEM, сохраняйте свои биты счетчика ссылок при записи, иначе рискуете получить BSOD.
cl /std:c++20 /EHsc /O2 exploit_single.cpp /link ntdll.lib advapi32.lib
Требуется MSVC (VS2022+) и загруженный драйвер. Запускать от имени администратора.
Эти смещения для Windows 10 20H2–22H2 и Windows 11 22H2/23H2 x64. Проверьте с помощью dt nt!_EPROCESS в WinDbg, если у вас другая сборка.
| Поле | Смещение |
|---|---|
| UniqueProcessId | 0x440 |
| ActiveProcessLinks | 0x448 |
| Token | 0x4b8 |
Только для образовательных и исследовательских целей. Протестировано на личной виртуальной машине.