IAT Hook
IMAGE_IMPORT_DESCRIPTOR
中两个IMAGE_THUNK_DATA
结构体,第一个位导入名称表(INT),第二个位导入地址表(IAT)。两个结构在磁盘文件中时是没有差别的,但是当PE文件被装载到内存中后,FirstThunk
字段指向的IMAGE_THUNK_DATA
的值会被Windows进行填充。该值为一个RVA,该RVA加上映像基址后,虚拟地址就保存了真正的导入函数的入口地址- IAT Hook步骤
- 获取欲Hook的函数地址
- 找到该函数的所保存的IAT地址
- 把IAT中该函数的地址修改为Hook函数的地址