Как загрузить драйвер kmdf (wfp / inspect) при загрузке системы - PullRequest
0 голосов
/ 24 сентября 2018

Я написал простой 64-битный драйвер kmdf (wfp / inspect).Этот драйвер находится в:

% WinDir% \ System32 \ Drivers \ Inspect.sys

Я могу загрузить этот драйвер, используя: net start inspect.

Теперь я хотел бычтобы загрузить этот драйвер при запуске Windows, поэтому я подготовил этот inf-файл:

[версия]
Signature = "$ Windows NT $"
Class = WFPCALLOUTS
ClassGuid = {57465043-616C-6C6F-7574-5F636C617373}
Provider =% ProviderString%
CatalogFile = Inspect.cat
DriverVer = 09/20 / 2018,19.58.54.237


[SourceDisksNames]
1 =% InspectDisk% ,,, ""


[SourceDisksFiles]
Inspect.sys = 1 ,,


[DestinationDirs]
DefaultDestDir = 12;% WinDir% \ System32 \ Drivers
Inspect.DriverFiles = 12;% WinDir% \ System32 \ Drivers


[DefaultInstall]
OptionDesc =% InspectServiceDesc%
CopyFiles = Inspect.DriverFiles


[DefaultInstall.Services]
AddService =% InspectServiceName% ,, Inspect.Service


[DefaultUninstall]
DelFiles = Inspect.DriverFiles


[DefaultUninstall.Services]
DelService=% InspectServiceName%, 0x200;SPSVCINST_STOPSERVICE
DelReg = Inspect.DelRegistry


[Inspect.DriverFiles]
Inspect.sys ,,, 0x00000040;COPYFLG_OVERWRITE_OLDER_ONLY


[Inspect.Service]
DisplayName =% InspectServiceName%
Описание =% InspectServiceDesc%
ServiceType = 1;SERVICE_KERNEL_DRIVER
StartType = 0;SERVICE_BOOT_START
ErrorControl = 1;SERVICE_ERROR_NORMAL
ServiceBinary =% 12% \ Inspect.sys;% WinDir% \ System32 \ Drivers \ Inspect.sys
AddReg = Inspect.AddRegistry


[Inspect.AddRegistry]
HKR, "Параметры", "BlockTraffic", 0x00010001, "0";FLG_ADDREG_TYPE_DWORD
HKR, "Параметры", "RemoteAddressToInspect", 0x00000000, "10.0.0.1";FLG_ADDREG_TYPE_SZ


[Inspect.DelRegistry]
HKR, "Параметры" ,,,


[Строки] ProviderString = "TODO-Set-Provider"
InspectDisk = "Диск установки проверки трафика"
InspectServiceDesc = "Драйвер вызова проверки трафика"
InspectServiceName = "Проверка"

, но драйвер не загружается при загрузке.

Как я уже упоминал в начале, это 64-битный драйвер kmdf.

Я что-то забыл?Любое предложение / подсказка, где проблема?

Спасибо за помощь.

1 Ответ

0 голосов
/ 14 января 2019

см. Следующий вопрос .TL; DR:

Используйте команду sc create [имя службы] binPath = [путь к файлу .sys] type = kernel, чтобы создать службу в режиме ядра, и команду sc start [имя службы], чтобы запустить ее.

...