请oldworm(oldworm) 和大家进来谈谈勾函数的方法

mengxihe 2002-09-18 05:24:43
原贴
http://www.csdn.net/expert/topic/1032/1032770.xml?temp=.8220026
...全文
104 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
mengxihe 2002-09-19
  • 打赏
  • 举报
回复
头晕呀,非法操作xxxxxxxxx指令引用xxxxxxxxx内存,该内存不能为“read”!
rivershan 2002-09-18
  • 打赏
  • 举报
回复
请问:oldworm(oldworm)
你的监视QQ聊天的软件的
startup();
函数的实现能公布一下吗?
还有钩子子程~

多谢~
rivershan 2002-09-18
  • 打赏
  • 举报
回复
HookAPI,就是要调用我自己写的函数,然后在把原来的函数传回去.
所谓调用自己的函数,就是把原函数参数都传给我的替换函数。我们就可以利用这些参数去干我们想做的事~
而系统呢,由于微软设置的这个钩子的目的,所以不会去检查替换函数是否就是原函数,只要参数、返回值符合条件就行~要不会出错~但是替换函数的返回值需要是原函数,否则就会出错~
rivershan 2002-09-18
  • 打赏
  • 举报
回复
学习ing……
我正在写钩函数~
头晕~
oldworm 2002-09-18
  • 打赏
  • 举报
回复
发了
qing_li73 2002-09-18
  • 打赏
  • 举报
回复
MSDN里有不少相关内容,诸如:Allocation Hook Functions;Hook Function C Run-Time Application;Client Block Hook Function;......

看看http://www.codeproject.com/info/search.asp?target=hook+vc%2B%2B+mfc&st=kw&qm=adv

mengxihe 2002-09-18
  • 打赏
  • 举报
回复
oldworm(oldworm)
请将
Jeffrey Richter的代码
发到
mengxihe@163.com
thx!
oldworm 2002-09-18
  • 打赏
  • 举报
回复
补充,事实上有很多勾api函数的应用,最著名的如BoundChecker,我主页上很多联众补丁程序都利用了这些方法。
oldworm 2002-09-18
  • 打赏
  • 举报
回复
来了
勾函数有很多方法,如下:
1、欺骗法,如程序A要勾wsock32.dll中的send函数,简单的一个办法是写一个wsock32.dll,将写好的动态库放在程序A相同的目录下,程序A起来的时候会将这个欺骗它的wsock32.dll载入,本来是调用系统的wsock32.dll中的send函数也变成调用你的send,你的send只要调用系统函数的send,并作些别的事情就好了。
2、修改import table,我们知道,pe格式的头部有个import table,这个头部记载了你调用了哪些别的dll中的函数,修改这个表,可以达到勾dll中函数的目的,具体可参考Jeffrey Richter的代码,如没有,我可以给你。
3、改跳转,将函数头部原本代码保留,插入一个跳转,跳转到新的地址执行,执行后旧函数时,先将被修改的代码写会,调用完了以后又加跳转,如此反复,具体代码可以参考detours,或msj上曾经公开的一个程序apispy

基本方法如上,其它旁门左道还有很多,以hook api为关键字,能查找到很多相关介绍。

16,551

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC相关问题讨论
社区管理员
  • 基础类社区
  • AIGC Browser
  • encoderlee
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

        VC/MFC社区版块或许是CSDN最“古老”的版块了,记忆之中,与CSDN的年龄几乎差不多。随着时间的推移,MFC技术渐渐的偏离了开发主流,若干年之后的今天,当我们面对着微软的这个经典之笔,内心充满着敬意,那些曾经的记忆,可以说代表着二十年前曾经的辉煌……
        向经典致敬,或许是老一代程序员内心里面难以释怀的感受。互联网大行其道的今天,我们期待着MFC技术能够恢复其曾经的辉煌,或许这个期待会永远成为一种“梦想”,或许一切皆有可能……
        我们希望这个版块可以很好的适配Web时代,期待更好的互联网技术能够使得MFC技术框架得以重现活力,……

试试用AI创作助手写篇文章吧