【HookApi的方法HOOK不了msvcrt.dll里的函数】

geagle 2007-07-12 09:23:50
【HookApi的方法HOOK不了msvcrt.dll里的函数】

用了三种方法尝试,
1. 直接写了个HookApi(SetHook和远程注入)的方法改入口的5个字节
2. 用微软的Detours库
3. 用HookMad库

以上方法对于User32.dll和kernel32.dll的函数都没问题,但是HOOK动态库msvcrt.dll里的函数(rand等)就没有效果。

是不是rand这个函数的入口可写段不够5个字节,请高手指教~ 3Q ~#~
...全文
329 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
geagle 2007-07-13
  • 打赏
  • 举报
回复
感谢feimingbiao大侠的提示,

确实是这个情况,如果是您说的2种方式:
1。 rand是inline function
2。 你的程序选择了Statically link Runtime.

是不是rand函数存在的库地址就无法定位,无法HookApi了呢?@~@



geagle 2007-07-13
  • 打赏
  • 举报
回复
哦,这样只有改文件了吧,找到内联函数rand的地址,
然后jmp..
feimingbiao 2007-07-13
  • 打赏
  • 举报
回复
两个原因之一:

1。 rand是inline function
2。 你的程序选择了Statically link Runtime.

你只要跟踪到rand里面一看就明白了。
feimingbiao 2007-07-13
  • 打赏
  • 举报
回复
嗯,是这样的,因为找不到API入口了。
qwertxp 2007-07-12
  • 打赏
  • 举报
回复
俺 也了解下
lyg_zy 2007-07-12
  • 打赏
  • 举报
回复
关注!
freewind2000 2007-07-12
  • 打赏
  • 举报
回复
可能是C运行时库的函数和API函数的调用方式有关吧

15,471

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 进程/线程/DLL
社区管理员
  • 进程/线程/DLL社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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