Наши проекты:
Журнал · Discuz!ML · Wiki · DRKB · Помощь проекту |
||
ПРАВИЛА | FAQ | Помощь | Поиск | Участники | Календарь | Избранное | RSS |
[3.145.60.149] |
|
Сообщ.
#1
,
|
|
|
Загрузка драйвера, без записи в реестр Как загрузить драйвер? Многие вспомнят функция для работы с сервисами: CreateService - создаёт в реестре ключ, с именем сервиса, путём к образу, параметрами загрузки StartServic - загружает сервис, по ИМЕНИ сервиса(имя образа не принемает) DeleteService - удаляет из реестра запись о сервисе Но иногда, бывает необходимо загрузить драйвер, без записси в реестр, тогда можно воспользоватся недокументированным флагом из функции ZwSetSystemInformation, правдо этот способ налогает определённые ограницения на использование драйвером памяти. Загрузчик include 'win32ax.inc' include 'Driver.mac' SystemLoadImage = 38 .data GregsImage: Name: UNICODE '\??\\C:\DriverTest.sys' GregsImage_L =$-GregsImage .code start: invoke ZwSetSystemInformation, SystemLoadImage,GregsImage,8 ;ZwSetSystemInformation НОМЕР_ФУНКЦИИ, АДРЕС_ПАКЕТА_С_ДАННЫМИ, ДЛИНА_ПАКЕТА invoke ExitProcess,0 .end start Код драйвера format PE DLL native 4.0 at 10000h entry main include '%include%\win32a.inc' include 'Driver.mac' section '.text' code readable writeable executable notpageable MSGs db 'Driver load',0dh,0ah,0 proc main,pDriverObject,pDriverPath push MSGs call [DbgPrint] add esp,4 mov eax,STATUS_DEVICE_CONFIGURATION_ERROR ret endp ;*******************************************IMPORT****************************** section '.idata' import data readable writeable ;syslibrary ntoskrnl,"ntoskrnl.exe" library ntoskrnl,"ntoskrnl.exe" include 'ntoskrnl.inc' mov eax,main section '.reloc' data fixups readable discardable Прикреплённый файлLoad_not_reg.rar (20.29 Кбайт, скачиваний: 594) |