Api Hook 细析(一)
摘要: //Author:Alex(Yock.W)
//转载请署名出处
前言 基础知识
本系列文章会对常用的几种API HOOK方法进行全面的分析。
Hook是什么?
钩子(Hook),是Windows消息处理机制的一个平台,应用程序可以在上面设置子程以监视指定窗口的某种消息,而且所监视的窗口可以是其他进程所创建的。当消息到达后,在目标窗口处理函数之前处理它。钩子机制允许应用程序截获处理window消息或特定事件。
钩子实际上是一个处理消息的程序段,通过系统调用,把它挂入系统。每当特定的消息发出,在没有到达目的窗口前,钩子程序就先捕获该消息,亦即钩子函数先得到控制权。这时钩子函数即可以加工处理(改变)该消息,也可以不作处理而继续传递该消息,还可以强制结束消息的传递。
Hook原理
每个Hook都有一个关联的链表,由系统维护,链表指针指向被Hook子程调用的回调函数:
LRESULT WINAPI HookCallBack
阅读全文