首页
社区
课程
招聘
[原创]必备绝技——hook大法( 中 )
发表于: 2007-4-9 23:37 193632

[原创]必备绝技——hook大法( 中 )

Lvg 活跃值
5
2007-4-9 23:37
193632
收藏
免费 7
支持
分享
最新回复 (189)
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
101
先祝福大家新年快乐,再感谢楼主的帖子。
2008-2-2 17:06
0
雪    币: 223
活跃值: (11)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
102
好文,值得回味!
2008-2-13 13:51
0
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
103
学习了,谢谢提供。
2008-2-13 14:24
0
雪    币: 224
活跃值: (10)
能力值: ( LV5,RANK:60 )
在线值:
发帖
回帖
粉丝
104
楼主,cr0控制寄存器的格式好像有错误
它的位16是WP位,是写保护,将其复位后,则可以进行写操作了
2008-4-13 14:30
0
雪    币: 302
活跃值: (14)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
105
天书看不懂....强大...支持....
2008-5-12 18:12
0
雪    币: 203
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
106
好文啊,楼主太强了
2008-5-13 18:29
0
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
107
厉害啊,学习学习
2008-7-20 18:02
0
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
108
楼主,我脑子比较笨,有个问题不解,请教:
  #define SYSTEMSERVICE(_func) \
          KeServiceDescriptorTable.ServiceTableBase[ *(PULONG)((PUCHAR)_func+1)]
以及下面几个宏,为什么都+1呢?这个+1是什么意思呢?
2008-8-3 11:17
0
雪    币: 563
活跃值: (95)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
109
学习下
2008-8-3 12:30
0
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
110
虽然看不太懂,但很想学,收藏+慢慢学
2008-8-3 21:04
0
雪    币: 109
活跃值: (11)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
111
这么好的资料,严重支持。
2008-8-10 03:14
0
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
112
看不懂,纯支持下,辛苦了
2008-8-10 22:30
0
雪    币: 207
活跃值: (10)
能力值: ( 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++关键字?
2008-8-27 21:58
0
雪    币: 207
活跃值: (10)
能力值: ( 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
2008-8-27 22:07
0
雪    币: 201
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
115
分析的非常清晰,谢谢
2008-8-29 11:26
0
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
116
谢谢楼主,很不错
2008-12-4 21:01
0
雪    币: 34
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
117
ok ,thanks ,..
2008-12-5 14:09
0
雪    币: 204
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
118
呵呵,我刚想研究这东西呢,谢谢楼主
2008-12-5 21:22
0
雪    币: 252
活跃值: (13)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
119
学习啦,很好啊
2008-12-15 23:43
0
雪    币: 212
活跃值: (31)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
120
mark 学习啊
2008-12-16 17:36
0
雪    币: 206
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
121
学习学习
谢谢楼主
2008-12-21 13:59
0
雪    币: 208
活跃值: (10)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
122
牛人的就是不一样!
2008-12-27 14:47
0
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
123
简洁高深!楼主这样的高人只是普通会员,看来这里的水深哪!
2008-12-27 22:01
0
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
124
不错不错  
2009-2-3 21:03
0
雪    币: 201
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
125
我想问个问题,我在XP SP3下测试了一个,我用的是DRIVER MONITOR加载的驱动,可是提示error(127): 找不到指定的程序

这是为什么呢?

我在以前写过的一个驱动里调用了ntSuspendThread()也出现过这种情况,高手来帮分析一下啊!
2009-4-7 19:26
0
游客
登录 | 注册 方可回帖
返回
//