Windows Hook 易核心编程(3) API Hook 初探
来源:互联网 发布:金融数据分析师招聘 编辑:程序博客网 时间:2024/05/17 06:09
上一期,我们讲了用HOOK技术实现远程线程插入,相信大家还记忆犹新.
这一期我们来谈谈 API HOOK
API Hook技术应用广泛,常用于屏幕取词,网络防火墙,病毒木马,加壳软件,串口红外通讯,游戏外
挂,internet通信等领域API HOOK的中文意思就是钩住API,对API进行预处理,先执行我们的函数,例
如我们用API Hook技术挂接ExitWindowsEx API函数,使关机失效,挂接ZwOpenProcess函
数,隐藏进程等等......
总的来说,常用的挂钩API方法有以下两种:
<一>改写IAT导入表法
我们知道,Windows下的可执行文档的文件格式是一种叫PE(“portable executable”,可移植
的可执行文件)的文件格式,这种文件格式
是由微软设计的,接下来这张图描述了PE文件的结构:
+-------------------------------+ - offset 0
| MS DOS标志("MZ") 和 DOS块 |
+-------------------------------+
| PE 标志 ("PE") |
+-------------------------------+
| .text | - 模块代码
| 程序代码 |
| |
+-------------------------------+
| .data | - 已初始化的(全局静态)数据
| 已初始化的数据 |
| |
+-------------------------------+
|