前面多篇文章讲了PE文件格式,导入导出表的解析。
这里新开一篇来作为总结,或者说作为最开始的概述。
本文以 kernel32.dll 为例。
使用工具 PEView.exe 查看如下:
可以看到其主要分成几个部分:
1: Dos 头,IMAGFE_DOS_HEADER 长度 0x40
2: Dos Stub 。
3: NT Header 起始位置由 Dos头中最后一个字段指定。
4: 连续几个区段信息入,图中有五个区段
5: 连续区段具体信息,图中有五个
6: 签名信息(可选的,没有签名就没有)
1. DOS 头
2. DOS Sub
3. NT Header
NT Header 分三部分
第一部分是 Signature。四个字节,就是 PE\0\0
第二部分是 File Header,工具直接可以看到各项的值
第三部分 Option Header
其中第三部分中的最后一部分是目录表信息(一共最多16个):
导入导出表基本信息就是从这里开始找的。
4.连续的区段信息
5.具体的区段信息
6. 签名信息
如果只是分析数据,而不是要了解数据怎么具体对应的,用该工具直接查看很方便。