首页
社区
课程
招聘
[旧帖] [求助]关于hook的原理以及实现 0.00雪花
发表于: 2016-7-8 14:35 2024

[旧帖] [求助]关于hook的原理以及实现 0.00雪花

2016-7-8 14:35
2024
hook说白了都是替换某地址访问指向的内容
我觉得有几点不太理解的地方。
1、替换:看到好多教程都是说在想hook的地方jmp到自己的代码。但是老是忽略一个前提,jmp xxxx 这句汇编代码必须得先在目标程序里面添加。这个我觉得是比较难理解的地方,wpe肯定是hook了发/收包的相关地方。但是并不用先写个汇编代码在发/收包处写入个汇编代码。所以我想应该还是还有其他的方法实现的,希望大神不吝赐教。(随便一说,我看了夜猫的hook教程,其实就看了前面几个,因为我只想知道hook的框架原理,说了半天,然后就给个写好的dll给你调用,这也是教程。醉了)
2、关于寄存器的概念,本人略懂汇编(基于一般的汇编操作)由于从事的是比较高层的开发,所以对eax,ecx,ebp等等不太清楚理解。只知道是一点就是,cpu可以直接访问的东西。C也支持直接定义寄存器变量。由于看了夜猫的教程,里面有一段说ebp - 4,是第一个局部变量,我就震惊了。- 4 我是明白的4个子节一个整型。从这里可以看出ebp是栈顶(本人对堆和栈还是有一定 的理解的)也就是我传的参数-4(这个应该是看数据类型的大小sizeof(int) = 4)。这点对我反汇编来说是非常有用的一点。但是只止于这一点。对于其他的希望大神不吝赐教,或者贴点链接教程

[注意]传递专业知识、拓宽行业人脉——看雪讲师团队等你加入!

收藏
免费 0
支持
分享
最新回复 (1)
雪    币: 15
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
自己的问题自己解决,第一个 其实很简单,理解汇编的本质 只要将汇编代码转换成16进制 然后对要hook的地址赋值即可
2016-7-12 23:40
0
游客
登录 | 注册 方可回帖
返回
//