找回密码
 加入我们

QQ登录

只需一步,快速开始

搜索
查看: 66931|回复: 138

[原创]WIN64上一种只需修改函数6个字节的INLINE HOOK方法

 火... [复制链接]

857

主题

2632

回帖

2

精华

管理员

此生无悔入华夏,  长居日耳曼尼亚。  

积分
36130
发表于 2014-8-15 22:55:13 | 显示全部楼层 |阅读模式
我在教程里,公布了一种修改函数14个字节的INLINE HOOK方法。不得不说,这是一种很糟糕的HOOK法,因为需要太多空间了。这样子甚至难以实现安全HOOK,因为InterlockExchange系列函数顶多能一次性修改8个字节。

其实稍微改造一下代码,即可实现修改函数6字节的HOOK法。

以KeQueryPerformanceCounter为例,看看此函数头之前是什么样子的:
  1. lkd> u hal!kequeryperformancecounter-8
  2. hal!HalpScaleQueryPerformanceCounter+0x40:
  3. fffff800`01e0a6ec 90              nop
  4. fffff800`01e0a6ed 90              nop
  5. fffff800`01e0a6ee 90              nop
  6. fffff800`01e0a6ef 90              nop
  7. fffff800`01e0a6f0 90              nop
  8. fffff800`01e0a6f1 90              nop
  9. fffff800`01e0a6f2 90              nop
  10. fffff800`01e0a6f3 90              nop
复制代码

前面是8个NOP,正好足够放下一个64位的地址。那么思路就是:
游客,如果您要查看本帖隐藏内容请回复
具体实现的代码就自己动手写吧。
头像被屏蔽

0

主题

29

回帖

0

精华

金牌会员

积分
976
发表于 2014-8-15 23:01:49 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽

0

主题

14

回帖

0

精华

铂金会员

积分
2276
发表于 2014-8-15 23:02:33 | 显示全部楼层
哈哈,学习一下

0

主题

24

回帖

0

精华

铜牌会员

积分
165
发表于 2014-8-16 11:08:54 | 显示全部楼层
学习了

0

主题

30

回帖

0

精华

铜牌会员

积分
124
发表于 2014-8-17 12:02:16 | 显示全部楼层
支持一下。。看下6字节的inlinehook

275

主题

3017

回帖

1

精华

管理员

嗷嗷叫的老马

积分
17064

论坛牛人贡献奖关注奖最佳版主进步奖人气王疯狂作品奖精英奖赞助论坛勋章乐于助人勋章

QQ
发表于 2014-8-17 17:11:36 | 显示全部楼层
{:soso_e179:}看见汇编头就痛啊
我就是嗷嗷叫的老马了......

1

主题

77

回帖

0

精华

铂金会员

积分
1972
发表于 2014-8-18 11:19:29 | 显示全部楼层
thanks。学习了

857

主题

2632

回帖

2

精华

管理员

此生无悔入华夏,  长居日耳曼尼亚。  

积分
36130
 楼主| 发表于 2014-8-18 13:58:17 | 显示全部楼层


你的鼠标发疯了么?一连发了10个贴。。。

1

主题

77

回帖

0

精华

铂金会员

积分
1972
发表于 2014-8-19 00:08:36 | 显示全部楼层
Tesla.Angela 发表于 2014-8-18 13:58
你的鼠标发疯了么?一连发了10个贴。。。

。。。论坛有时候卡的很,一下谈不出来,可能多点了吧

1

主题

82

回帖

0

精华

铜牌会员

积分
156
发表于 2014-8-25 21:33:40 | 显示全部楼层
看看看看楼主的方法

0

主题

9

回帖

0

精华

金牌会员

积分
883
发表于 2014-8-30 20:31:17 | 显示全部楼层
看一下是什么思路

1

主题

146

回帖

0

精华

贵宾会员

积分
2836
发表于 2014-9-1 07:01:57 | 显示全部楼层
看下思路
头像被屏蔽

4

主题

101

回帖

0

精华

初来乍到

积分
19658
发表于 2014-9-2 15:53:51 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽

0

主题

36

回帖

0

精华

铜牌会员

积分
70
发表于 2014-9-10 16:42:24 | 显示全部楼层
没有能力提供有意义的内容,只能学习,版主请谅解。

0

主题

36

回帖

0

精华

铜牌会员

积分
70
发表于 2014-9-10 16:43:45 | 显示全部楼层
思路果然有意思,哈哈哈哈。

0

主题

36

回帖

0

精华

铜牌会员

积分
70
发表于 2014-9-10 16:45:16 | 显示全部楼层
能不能引申为,在程序中找一个空隙块,填写跳转的代码,然后函数中做短跳转到这段代码?

0

主题

117

回帖

0

精华

铜牌会员

积分
258
发表于 2014-9-12 09:58:13 | 显示全部楼层
看看了。。。

0

主题

6

回帖

0

精华

贵宾会员

积分
3989
发表于 2014-9-18 04:25:27 | 显示全部楼层
瞧瞧

2

主题

12

回帖

0

精华

铜牌会员

积分
76
发表于 2014-9-19 00:08:37 | 显示全部楼层
看看TA大牛的思路

0

主题

33

回帖

0

精华

铂金会员

积分
1827
发表于 2014-9-21 01:06:07 | 显示全部楼层
在看雪看到有不用hook的方法

0

主题

51

回帖

0

精华

铜牌会员

积分
97
发表于 2014-9-30 13:47:54 | 显示全部楼层
let me se se

0

主题

18

回帖

0

精华

铂金会员

积分
2252
发表于 2014-10-13 07:23:41 | 显示全部楼层
思路万岁,学习来的,想学习下怎么INLINE HOOK 内核函数
头像被屏蔽

0

主题

6

回帖

0

精华

初来乍到

积分
131
发表于 2014-10-23 11:26:50 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽

0

主题

67

回帖

0

精华

铂金会员

积分
2141
发表于 2014-10-24 23:03:51 | 显示全部楼层
WIN64上一种只需修改函数6个字节的INLINE HOOK方法~~~~~~~~~~~~~

0

主题

4

回帖

0

精华

初来乍到

积分
25
发表于 2014-10-26 03:53:08 | 显示全部楼层
感谢分享

0

主题

7

回帖

0

精华

初来乍到

积分
21
发表于 2014-10-29 20:35:10 | 显示全部楼层
test

0

主题

13

回帖

0

精华

铜牌会员

积分
47
发表于 2014-10-30 14:54:18 | 显示全部楼层
这个事hotpatch啊

0

主题

13

回帖

0

精华

初来乍到

积分
29
发表于 2014-11-4 15:29:35 | 显示全部楼层
感谢主楼。。。。。

0

主题

37

回帖

0

精华

铜牌会员

积分
61
发表于 2014-11-9 15:54:03 | 显示全部楼层
谢谢给了这个好方法

1

主题

35

回帖

0

精华

铜牌会员

积分
111
发表于 2014-11-15 09:40:21 | 显示全部楼层
顶下顶下....

0

主题

49

回帖

0

精华

铜牌会员

积分
76
发表于 2014-12-23 15:04:28 | 显示全部楼层
学习 方法了

8

主题

51

回帖

0

精华

铜牌会员

积分
291
发表于 2014-12-23 22:13:36 | 显示全部楼层
跟着看看,学习下
您需要登录后才可以回帖 登录 | 加入我们

本版积分规则

快速回复 返回顶部 返回列表