能力值:
( LV2,RANK:10 )
|
-
-
101 楼
先祝福大家新年快乐,再感谢楼主的帖子。
|
能力值:
( LV4,RANK:50 )
|
-
-
102 楼
好文,值得回味!
|
能力值:
( LV2,RANK:10 )
|
-
-
103 楼
学习了,谢谢提供。
|
能力值:
( LV5,RANK:60 )
|
-
-
104 楼
楼主,cr0控制寄存器的格式好像有错误
它的位16是WP位,是写保护,将其复位后,则可以进行写操作了
|
能力值:
( LV2,RANK:10 )
|
-
-
105 楼
天书看不懂....强大...支持....
|
能力值:
( LV2,RANK:10 )
|
-
-
106 楼
好文啊,楼主太强了
|
能力值:
( LV2,RANK:10 )
|
-
-
107 楼
厉害啊,学习学习
|
能力值:
( LV2,RANK:10 )
|
-
-
108 楼
楼主,我脑子比较笨,有个问题不解,请教:
#define SYSTEMSERVICE(_func) \
KeServiceDescriptorTable.ServiceTableBase[ *(PULONG)((PUCHAR)_func+1)]
以及下面几个宏,为什么都+1呢?这个+1是什么意思呢?
|
能力值:
( LV2,RANK:10 )
|
-
-
109 楼
学习下
|
能力值:
( LV2,RANK:10 )
|
-
-
110 楼
虽然看不太懂,但很想学,收藏+慢慢学
|
能力值:
( LV4,RANK:50 )
|
-
-
111 楼
这么好的资料,严重支持。
|
能力值:
( LV2,RANK:10 )
|
-
-
112 楼
看不懂,纯支持下,辛苦了
|
能力值:
( LV2,RANK:10 )
|
-
-
113 楼
好文阿,顶顶顶!!!
不过ssdt hook程序里有个小问题,连续开n个_root_开头程序只会隐藏n/2+1个,就是说还会有n/2个显示在任务管理器里。
if(curr->NextEntryDelta)
{
prev->NextEntryDelta += curr->NextEntryDelta;
curr=prev;
}
不过这跟文章的主题没多大关系拉!
__declspec(dllimport) SSDT_Entry KeServiceDescriptorTable;
谁能告诉我相应的asm代码怎么写?不太明白vc!难不成dllimport是c++关键字?
|
能力值:
( LV2,RANK:10 )
|
-
-
114 楼
[QUOTE=hurryhx;490988]楼主,我脑子比较笨,有个问题不解,请教:
#define SYSTEMSERVICE(_func) \
KeServiceDescriptorTable.ServiceTableBase[ *(PULONG)((PUCHAR)_func+1)]
以及下面几个宏,为什么都...[/QUOTE]
这两个宏之所以能工作,是因为所有的Zw*函数都开始于opcode:MOV eax, ULONG,这里的ULONG就是系统调用函数在SSDT中的索引。
_func+1就是指向ULONG
|
能力值:
( LV2,RANK:10 )
|
-
-
115 楼
分析的非常清晰,谢谢
|
能力值:
( LV2,RANK:10 )
|
-
-
116 楼
谢谢楼主,很不错
|
能力值:
( LV2,RANK:10 )
|
-
-
117 楼
ok ,thanks ,..
|
能力值:
( LV2,RANK:10 )
|
-
-
118 楼
呵呵,我刚想研究这东西呢,谢谢楼主
|
能力值:
( LV3,RANK:20 )
|
-
-
119 楼
学习啦,很好啊
|
能力值:
( LV4,RANK:50 )
|
-
-
120 楼
mark 学习啊
|
能力值:
( LV2,RANK:10 )
|
-
-
121 楼
学习学习
谢谢楼主
|
能力值:
( LV4,RANK:50 )
|
-
-
122 楼
牛人的就是不一样!
|
能力值:
( LV2,RANK:10 )
|
-
-
123 楼
简洁高深!楼主这样的高人只是普通会员,看来这里的水深哪!
|
能力值:
( LV2,RANK:10 )
|
-
-
124 楼
不错不错
|
能力值:
( LV2,RANK:10 )
|
-
-
125 楼
我想问个问题,我在XP SP3下测试了一个,我用的是DRIVER MONITOR加载的驱动,可是提示error(127): 找不到指定的程序
这是为什么呢?
我在以前写过的一个驱动里调用了ntSuspendThread()也出现过这种情况,高手来帮分析一下啊!
|
|
|