内联钩子技术在函数Hook中应用与实现.pdfVIP

  • 0
  • 0
  • 约1.27万字
  • 约 28页
  • 2026-05-26 发布于北京
  • 举报

内联钩子技术在函数Hook中应用与实现.pdf

内联钩子

API函数都保存在操作系统的DLL文件中,当在程序中使用某个API函数时,在运行程序后,程序会

隐式地将API所在的DLL加载入进程中。这样,程序就会像调用自己的函数一样调用API

在进程中,当exe模块调用CreateFile()函数的时候,会去调用kernel32.dll模块中的

CreateFile()函数,因为真正的CreateFile()函数的实现在kernel32.dll模块中

CreateFile()是API函数,API函数也是由人编写的代码再编译而成的,也有其对应的二进制代码。

既然它是代码,那么就可以被修改。通过一种“野蛮”的方法来直接修改API函数在内存中的映像,从而

对API函数进行HOOK。使用的方法是,直接使用汇编指令的jmp指令将其代码执行流程改变,进而执行我

们的代码,这样就使原来的函数的流程改变了。执行完我们的流程以后,可以选择性地执行原来的函数,

也可以不继续执行原来的函数。

假设要对某进程的kernel32.dll的CreateFile()函数进行HOOK,首先需要在指定进程中的内存中

找到CreateFile()函数的地址,然后修改CreateFile()函数的首地址的代码为jmpMyProc的指令。

这样,当指定的进程调用CreateFile()函数时,就

文档评论(0)

1亿VIP精品文档

相关文档