标签:target 隐私 ext 其他 width 导出 orm 参数 sdk
1 #include <ntddk.h> 2 3 /*导出ssdt结构体*/ 4 typedef struct _ServiceDescriptorTable 5 { 6 PVOID ServiceTableBase; //System Service Dispatch Table 的基地址 7 PVOID ServiceCounterTable; //包含着 SSDT 中每个服务被调用次数的计数器。这个计数器一般由sysenter 更新。 8 unsigned int NumberOfServices; //由 ServiceTableBase 描述的服务的数目。 9 PVOID ParamTableBase; //包含每个系统服务参数字节数表的基地址-系统服务参数表 10 } *PServiceDescriptorTable; 11 extern PServiceDescriptorTable KeServiceDescriptorTable; 12 13 VOID DriverUnload(PDRIVER_OBJECT pDriverObject) 14 { 15 KdPrint(("驱动卸载成功!\n")); 16 } 17 18 NTSTATUS DriverEntry(PDRIVER_OBJECT pDriverObject, PUNICODE_STRING reg_path) 19 { 20 ULONG ssdtindex,ntaddress; 21 ULONG *ssdtbase; 22 KdPrint(("驱动成功加载!\n")); 23 24 ssdtbase = KeServiceDescriptorTable->ServiceTableBase; 25 for (ssdtindex = 0; ssdtindex < (ULONG)KeServiceDescriptorTable->NumberOfServices; ssdtindex++) 26 { 27 ntaddress = *ssdtbase; 28 KdPrint(("%0x\n", ntaddress)); 29 ssdtbase += 1; 30 } 31 32 33 pDriverObject->DriverUnload = DriverUnload; 34 return STATUS_SUCCESS; 35 }
标签:target 隐私 ext 其他 width 导出 orm 参数 sdk
原文地址:https://www.cnblogs.com/QKSword/p/10887687.html