摘要:
公式: [[KeServiceDescriptorTable]+index(索引)*4]例如要读取 NtOpenProcess [[KeServiceDescriptorTable]+0x7A*4]1. 纯汇编读取WinDbg推导公式 : dd poi[KeServiceDescriptorTable] + 0x7A*4L 1mul是无符号乘法imul是带符号乘法.cls 清屏r ebx 读取寄存器的值运行结果一致, 这样就读出了 NtOpenPorcess 的当前地址, 代码如下 1 ULONG SSDT_NtOpenProcess_Cur_Addr; 2 KdPri... 阅读全文
posted @ 2014-01-10 16:53
萝卜哥
阅读(617)
评论(0)
推荐(0)
摘要:
一. 什么是SSDT SSDT(System Services Descriptor Table),系统服务描述符表。这个表就是一个把ring3的Win32 API和ring0的内核API联系起来。SSDT并不仅仅只包含一个庞大的地址索引表,它还包含着一些其它有用的信息,诸如地址索引的基地址、服务函数个数等。通过修改此表的函数地址可以对常用windows函数及API进行hook,从而实现对一些关心的系统动作进行过滤、监控的目的。一些HIPS、防毒软件、系统监控、注册表监控软件往往会采用此接口来实现自己的监控模块,SSDT到底是什么呢?打一个比方,SSDT相当于系统内部API的指向标,作用就是. 阅读全文
posted @ 2014-01-10 15:38
萝卜哥
阅读(1156)
评论(0)
推荐(0)
浙公网安备 33010602011771号