WEB开发网
开发学院网络安全黑客技术 “PE文件格式”1.9版 完整译文(附注释)(1) 阅读

“PE文件格式”1.9版 完整译文(附注释)(1)

 2007-01-14 20:15:26 来源:WEB开发网   
核心提示: IBMPowerPC,小尾2)然后是“NumberOfSections(节数)”成员,16位的值,“PE文件格式”1.9版 完整译文(附注释)(1)(5),它是紧跟在头后面的节的数目,我们以后将讨论节的问题,却因为一些原因失败了,并保存映像以便下次例如增量链接时使用

IBMPowerPC,小尾

2)然后是“NumberOfSections(节数)”成员,16位的值。它是紧跟在头后面的节的数目。我们以后将讨论节的问题。

3)下一个成员是时间戳“TimeDateStamp”(32位),用来给出文件建立的时间。即使它的“官方”版本号没有改变,你也可通过这个值来区分同一个文件的不同版本。(除了同一个文件的不同版本之间必须唯一,时间戳的格式没有明文规定,但似乎是按照UTC时间“从1970年1月1日00:00:00算起的秒数值”----也就是大多数C语言编译器给time_t标志使用的格式。)

这个时间戳是用来绑定各个输入目录的,我们稍后再讨论它。

警告:有一些链接器往往将时间戳设为荒唐的值,而不是如前所述的time_t格式的链接时间。

4-5)成员“PointerToSymbolTable(符号表指针)”和成员“NumberOfSymbols(符号数)”(都是32位)都用于调试信息的。我不知道该怎样去解读它,并且我发现该指针的值总为0。

6)成员“SizeOfOptionalHeader(可选头大小)”(16位)只是“IMAGE_OPTIONAL_HEADER(可选头)”项的大小,你能用它去验证PE文件结构的正确性。

7)成员“Characteristics(特性)”是一个16位的,由许多标志位形成的集合组成,但大多数标志位只对目标文件和库文件有效。具体如下:

位0IMAGE_FILE_RELOCS_STRIPPED(重定位被剥离文件)表示如果文件中没有重定位信息,该位置1,这就表明各节的重定位信息都在它们各自的节中;可执行文件不使用该位,它们的重定位信息放在下面将要描述的“baserelocation”(基址重定位)目录中。

位1IMAGE_FILE_EXECUTABLE_IMAGE(可执行映象文件)表示如果文件是一个可执行文件,也即不是目标文件或者库文件时,置1。如果链接器尝试创建一个可执行文件,却因为一些原因失败了,并保存映像以便下次例如增量链接时使用,此时此标志位也可能置1。

上一页  1 2 3 4 5 6 7 8 9 10  下一页

Tags:PE 文件 格式

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接