本文将通过PEview 0.99这款PE查看器来复习与IAT相关的知识,复习方式就是手工查找xpsp3下notepad.exe文件中第一个导入DLL中的第一个导入函数。之所以选用PEview而不用winhex类软件,主要是为了便于验证自己的思路是否正确。在熟悉了IAT手工查找的具体过程之后,还是使用工具软件直接获取信息比较方便。
导入函数表IAT应该是分析PE文件时比较难过的一关了,涉及到多个结构体数组之间的相互关联,我看了很多遍也没有完全搞清楚,那不如就把本文作为一道练习题,来系统地梳理一下思路。如有不对之处,还请各位指出。
1. 试验环境
- 操作系统:windows xp sp3 x86
- 目标程序:notepad.exe
- 分析程序:PEview、OD
- 参考网页:http://blog.csdn.net/evileagle/article/details/12357155
2. 查找过程整体思路
3. 具体查找过程
(1)梳理处各节区的地址段,以便于后续的RAW换算。针对本文中的notepad程序,其各区段的RAW和RVA如下图所示。
<