Понизьте IRQL до PASSIVE_LEVEL без предварительного вызова KeRaiseIrql в DriverEntry - PullRequest
0 голосов
/ 26 марта 2020

Я пишу драйвер для Windows NT, который загружается через загрузчик драйверов turluda TDL. Загрузчик загружает образ драйвера, вручную отображает его в памяти ядра и выполняет точку входа после разрешения импорта.

Моя проблема в том, что DriverEntry вызывается на DISPATCH_LEVEL. Мне нужно уменьшить его до PASSIVE_LEVEL, чтобы я мог использовать такие функции, как PsCreateSystemThread. Как я могу опустить его? Я не могу использовать KeLowerIrql, так как для этого требуется предыдущее значение IRQL, переданное из любой из KeRaise* функций.

...