jjzjj

PE格式:分析IatHook并实现

Ring3层的IATHOOK和EATHOOK其原理是通过替换IAT表中函数的原始地址从而实现Hook的,与普通的InlineHook不太一样IATHook需要充分理解PE文件的结构才能完成Hook,接下来将具体分析IATHook的实现原理,并编写一个DLL注入文件,实现IATHook。在早些年系统中运行的都是DOS应用,所以DOS头结构就是在那个年代产生的,那时候还没有PE结构的概念,不过软件行业发展到今天DOS头部分的功能已经无意义了,但为了最大的兼容性微软还是保留了DOS文件头,有些软件在识别程序是不是可执行文件的时候通常会读取PE文件的前两个字节来判断是不是MZ。上图就是PE文件中的DO

PE格式:分析IatHook并实现

Ring3层的IATHOOK和EATHOOK其原理是通过替换IAT表中函数的原始地址从而实现Hook的,与普通的InlineHook不太一样IATHook需要充分理解PE文件的结构才能完成Hook,接下来将具体分析IATHook的实现原理,并编写一个DLL注入文件,实现IATHook。在早些年系统中运行的都是DOS应用,所以DOS头结构就是在那个年代产生的,那时候还没有PE结构的概念,不过软件行业发展到今天DOS头部分的功能已经无意义了,但为了最大的兼容性微软还是保留了DOS文件头,有些软件在识别程序是不是可执行文件的时候通常会读取PE文件的前两个字节来判断是不是MZ。上图就是PE文件中的DO