首页
社区
课程
招聘
[求助]inline hook 区别ssdt hook
发表于: 2013-1-6 11:20 8454

[求助]inline hook 区别ssdt hook

2013-1-6 11:20
8454
我用XT工具查看内核HOOK

发现有这样的:


还有这样的:


请问
inline hook
ssdt hook

这两种HOOK的有什么区别.

[招生]科锐逆向工程师培训(2024年11月15日实地,远程教学同时开班, 第51期)

上传的附件:
收藏
免费 0
支持
分享
最新回复 (18)
雪    币: 219
活跃值: (778)
能力值: (RANK:290 )
在线值:
发帖
回帖
粉丝
2
ssdt 是小兵 inline 是司令官
2013-1-6 11:35
0
雪    币: 523
活跃值: (278)
能力值: ( LV7,RANK:100 )
在线值:
发帖
回帖
粉丝
3
额..我是新手 能详细一点么.
2013-1-6 11:36
0
雪    币: 1157
活跃值: (847)
能力值: ( LV8,RANK:150 )
在线值:
发帖
回帖
粉丝
4
去看看论坛里面的 RootKit专题吧,清楚的很
2013-1-6 11:54
0
雪    币: 219
活跃值: (778)
能力值: (RANK:290 )
在线值:
发帖
回帖
粉丝
5
\(^o^)/YES! 上面 最重要的是实践 慢慢就会知道
2013-1-6 13:38
0
雪    币: 673
活跃值: (278)
能力值: ( LV15,RANK:360 )
在线值:
发帖
回帖
粉丝
6
inline hook 是 改函数起始地址的机器码了

SSDT Hook是改函数表的那个地址了

而SSDT 本来就是一个大数组 所谓的SSDT HOOK 就是 把数组里面的地址给替换掉了
2013-1-6 14:14
0
雪    币: 79
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
7
楼主我之前好像回过你的贴了把!哪个什么游戏的是你吗?

inline Hook是修改函数首部跳转到自己函数地址,可以ring 3也可以ring 0

SSDT Hook是修改SSDT表,是ring 0层的

还有IAT Hook呢?这是修改导入表地址,是ring 3层的
2013-1-6 16:29
0
雪    币: 257
活跃值: (67)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
8
inline hook
ssdt hook
这2者,区别嘛,一个是暗度陈仓,另一个是偷梁换柱
2013-1-6 17:30
0
雪    币: 122
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
9
楼主说SSDT hook 是ring0层的?
2013-1-6 18:40
0
雪    币: 523
活跃值: (278)
能力值: ( LV7,RANK:100 )
在线值:
发帖
回帖
粉丝
10
我要改的内个游戏 就是SSDT HOOK  所以我查看 函数地址的时候会发现 根本没有修改什么东西 他只是把地址改了 对于这种 改怎么办呢? 如果是INLINE hook的话 可以改函数头部跳回来 那SSDT HOOK 该如何是好.
2013-1-6 18:48
0
雪    币: 523
活跃值: (278)
能力值: ( LV7,RANK:100 )
在线值:
发帖
回帖
粉丝
11
针对这两种驱动 hook 方式 改如何对付呢?
2013-1-6 18:49
0
雪    币: 523
活跃值: (278)
能力值: ( LV7,RANK:100 )
在线值:
发帖
回帖
粉丝
12
额,感谢 我回去看下的.

请问 针对这两种驱动hook 方式该如何对付呢?
2013-1-6 18:49
0
雪    币: 154
活跃值: (91)
能力值: ( LV6,RANK:80 )
在线值:
发帖
回帖
粉丝
13
IAT\EAT\SSDT等都是改表,通俗说就是表里面有一个函数指针,就是改这个指针指向自己的函数。
inline是改哪里都行的,函数的任意一部分都可以inline hook,当然通用性不好。
2013-1-6 19:15
0
雪    币: 79
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
14
SSDT不是ring 0层的吗?
2013-1-6 20:23
0
雪    币: 79
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
15
可以把SSDT改回来就行了把。。。应该是这样
2013-1-6 20:23
0
雪    币: 523
活跃值: (278)
能力值: ( LV7,RANK:100 )
在线值:
发帖
回帖
粉丝
16
基本懂了 两个hook的区别了,
如果是inline hook的话 可以再hook位置上面 hook然后执行代码跳回来

但是如果是SSDT HOOK的话 是改表 该如何应对呢?  尝试过恢复  但是驱动有检测 ,检测到你恢复了就重新改表hook
网上很多资料都是应对inline hook的 如果是该表hook 该如何应对?
2013-1-6 21:40
0
雪    币: 523
活跃值: (278)
能力值: ( LV7,RANK:100 )
在线值:
发帖
回帖
粉丝
17
我是初学者 能推荐几篇文章么  我搜索了下不知道看那些比较好
2013-1-6 21:44
0
雪    币: 712
活跃值: (3767)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
18
大家说的不错,我也再学习下
2013-1-6 22:19
0
雪    币: 107
活跃值: (172)
能力值: ( LV2,RANK:15 )
在线值:
发帖
回帖
粉丝
19
ssdt是改表中的地址,inline hook是在函数内部改变代码
2013-1-6 23:14
0
游客
登录 | 注册 方可回帖
返回
//