首页
社区
课程
招聘
[求助]关于PE文件中的节的疑问.
发表于: 2010-1-9 01:59 3440

[求助]关于PE文件中的节的疑问.

2010-1-9 01:59
3440
typedef struct _IMAGE_SECTION_HEADER {
BYTE     Name[IMAGE_SIZEOF_SHORT_NAME];//节表名称,如“.text”
union {
     DWORD   PhysicalAddress;     //物理地址            
     DWORD   VirtualSize;         //真实长度
} Misc;
DWORD   VirtualAddress;         //RVA
DWORD   SizeOfRawData;         //物理长度
DWORD   PointerToRawData;         //节基于文件的偏移量
DWORD   PointerToRelocations;     //重定位的偏移
DWORD   PointerToLinenumbers;     //行号表的偏移
WORD     NumberOfRelocations;     //重定位项数目
WORD     NumberOfLinenumbers;     //行号表的数目
DWORD   Characteristics;         //节属性
} IMAGE_SECTION_HEADER, *PIMAGE_SECTION_HEADER;

第一个结构不是物理地址吗?物理地址就是在文件中的地址对吧?

但我用C32打开一个PE文件,然后用LORDPE来对比

却是不一样的结果



此图显示的第一个结构是虚拟大小,虚拟大小就是映射到内存后对齐的大小对不?(感觉这里我有些迷惑)

接下来的结构几乎都对不上,请问大家我哪里错了?

[招生]科锐逆向工程师培训(2024年11月15日实地,远程教学同时开班, 第51期)

上传的附件:
收藏
免费 0
支持
分享
最新回复 (3)
雪    币: 62
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
kzj
2
Misc
PhysicalAddress
The file address.

VirtualSize
The total size of the section when loaded into memory, in bytes. If this value is greater than the SizeOfRawData member, the section is filled with zeroes. This field is valid only for executable images and should be set to 0 for object files.
2010-1-9 02:33
0
雪    币: 19
活跃值: (1086)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
3
come on, 我英文差  对于专业术语的英文更差
麻烦用中文好吗
2010-1-9 02:38
0
雪    币: 109
活跃值: (10)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
4
、“PhysicalAddress(物理地址)”和“VirtualSize(虚拟大小)”组成的共用体。在目标文件中,它是内容重定位到的地址;在可执行文件中,它是内容的大小。事实上,此域似乎没被使用;因为有的链接器输入大小,有的链接器输入地址,我还发现有一个链接器输入0,而所有的可执行文件都运行如风。
http://bbs.pediy.com/showthread.php?threadid=21932

第一个结构不是物理地址吗?物理地址就是在文件中的地址对吧?
文件中的地址?这个PE全都是用偏移表示的,没有确定的文件地址。就像用ReadFile这些读文件一样,他会先打开定位到文件中,然后用文件偏移读取里面的东东。

此图显示的第一个结构是虚拟大小,虚拟大小就是映射到内存后对齐的大小对不?(感觉这里我有些迷惑)
这个虚拟大小。其实是没给映射时的大小,。即是VirtualSize这个字段,不要给中文意思迷了。
SizeOfRawData这个值是经边文件对齐的值。
2010-1-9 08:10
0
游客
登录 | 注册 方可回帖
返回
//