在前面的文章里,学习PE结构都是通过手动的方式去计算PE结构的NT映象头,NT可选头之类的,手动计算确实有利于加深对PE结构的熟悉程度,但是,在实际编程的时候,利用一些数据结构会让程序更高效,更简洁..于是,顺便记录了下通过WINNT.H自定义的结构体,来获取本进程的IAT表
注 : 转载请注明来源 enjoy5512的博客 http://blog.youkuaiyun.com/enjoy5512
打开WINNT.H文件可以看到里面定义了大量的结构体,正是这些已定义好的结构体,让我们能更方便的去获取PE文件的结构信息
获取IAT表大致过程:
1) 获取模块信息
2) 获取DOS头
3) 获取NT映象头
4) 获取NT可选映象头
5) 获取IAT表地址
6) 循环遍历IAT表,获取导入函数信息
测试代码
具体解释请看代码的注释
///////////////////////////////////////////////////