PE文件的装载过程(2)
作者:admin 日期:2010-02-07
上一篇讲到PE load程序已经找到了PE文件头,PE文件头的定义如下所示:
IMAGE_NT_HEADERS STRUCT
Signature DWORD ? ;PE文件标识
FileHeader IMAGE_FILE_HEADER <>
OptionalHeader IMAGE_OPTIONAL_HEADER32 <>
IMAGE_NT_HEADERS ENDS
Signature为PE文件标识,其值始终为00004550h,查ASCII表可以知道45h代表字符E,50h代表字符P。紧接着PE文件标识的是IMAGE_FILE_HEADER结构,这是一个20个字节的结构,其定义如下:
Code
IMAGE_FILE_HEADER STRUCT
Machine WORD ? ;运行平台
NumberOfSections WORD ? ; 文件的节数目
TimeDateStamp DWORD ? ; 文件创建日期和时间,它的数值是从
1969年12月31日下午4:00开始到创
建时间为止的总秒数
PointerToSymbolTable DWORD ? ; 指向符号表(用于调试)
NumberOfSymbols DWORD ? ; 符号表中的符号数量(用于调试)
SizeOfOptionalHeader WORD ? ;IMAGE_OPTIONAL_HEADER32
结构的长度
Characteristics WORD ? ; 文件属性
IMAGE_FILE_HEADER ENDS
各个字段的意义如注释所示,其中元素SizeOfOptionalHeader的值始终为e0h,表示可选头的大小,e0h换算成十进制表示224,即可选头的大小始终为224个字节。
http://www.zeroplace.cn/article.asp?id=281
PE文件的装载过程(1)
http://www.zeroplace.cn/article.asp?id=282
PE文件的装载过程(2)
http://www.zeroplace.cn/article.asp?id=283
PE文件的装载过程(3)
http://www.zeroplace.cn/article.asp?id=284
PE文件的装载过程(4)
IMAGE_NT_HEADERS STRUCT
Signature DWORD ? ;PE文件标识
FileHeader IMAGE_FILE_HEADER <>
OptionalHeader IMAGE_OPTIONAL_HEADER32 <>
IMAGE_NT_HEADERS ENDS
Signature为PE文件标识,其值始终为00004550h,查ASCII表可以知道45h代表字符E,50h代表字符P。紧接着PE文件标识的是IMAGE_FILE_HEADER结构,这是一个20个字节的结构,其定义如下:
Code
IMAGE_FILE_HEADER STRUCT
Machine WORD ? ;运行平台
NumberOfSections WORD ? ; 文件的节数目
TimeDateStamp DWORD ? ; 文件创建日期和时间,它的数值是从
1969年12月31日下午4:00开始到创
建时间为止的总秒数
PointerToSymbolTable DWORD ? ; 指向符号表(用于调试)
NumberOfSymbols DWORD ? ; 符号表中的符号数量(用于调试)
SizeOfOptionalHeader WORD ? ;IMAGE_OPTIONAL_HEADER32
结构的长度
Characteristics WORD ? ; 文件属性
IMAGE_FILE_HEADER ENDS
各个字段的意义如注释所示,其中元素SizeOfOptionalHeader的值始终为e0h,表示可选头的大小,e0h换算成十进制表示224,即可选头的大小始终为224个字节。
http://www.zeroplace.cn/article.asp?id=281
PE文件的装载过程(1)
http://www.zeroplace.cn/article.asp?id=282
PE文件的装载过程(2)
http://www.zeroplace.cn/article.asp?id=283
PE文件的装载过程(3)
http://www.zeroplace.cn/article.asp?id=284
PE文件的装载过程(4)
评论: 0 | 查看次数: 8904