首页
社区
课程
招聘
[求助]偶快被pe文件整疯了!
发表于: 2007-8-9 08:57 4382

[求助]偶快被pe文件整疯了!

2007-8-9 08:57
4382
我用LordPe查看两个不同的exe文件,第一个文件的VirtualSize<SizeOfRawData,第二个文件的VirtualSize>SizeOfRawData,FileAlignment与SectionAlignment都是默认大小,第一个EXE文件的VirtualSize可以随便改,只要不越界就行;而第二个却无法修改。而且根据VC知识库的文章185K9s2c8@1M7q4)9K6b7g2)9J5c8W2)9J5c8Y4N6%4N6#2)9J5k6i4k6U0K9$3u0S2M7$3g2Q4x3X3g2U0L8$3#2Q4x3V1k6V1L8$3y4#2L8h3g2F1N6q4)9J5c8Y4k6A6k6i4N6V1L8$3y4Q4x3V1k6Q4x3@1k6A6k6q4)9K6c8o6p5K6x3K6b7`. PE文件格式详解(上),
段头部的域

   ·Name。每个段都有一个8字符长的名称域,并且第一个字符必须是一个句点。
   ·PhysicalAddress或VirtualSize。第二个域是一个union域,现在已不使用了。
   ·VirtualAddress。这个域标识了进程地址空间中要装载这个段的虚拟地址。实际的地址由将这个域的值加上可选头部结构中的ImageBase虚拟地址得到。切记,如果这个映像文件是一个DLL,那么这个DLL就不一定会装载到ImageBase要求的位置。所以一旦这个文件被装载进入了一个进程,实际的ImageBase值应该通过使用GetModuleHandle来检验。
   ·SizeOfRawData。这个域表示了相对FileAlignment的段实体尺寸。文件中实际的段实体尺寸将少于或等于FileAlignment的整倍数。一旦映像被装载进入了一个进程的地址空间,段实体的尺寸将会变得少于或等于FileAlignment的整倍数。
   ·PointerToRawData。这是一个文件中段实体位置的偏移量。
   ·PointerToRelocations、PointerToLinenumbers、NumberOfRelocations、NumberOfLinenumbers。这些域在PE格式中不使用。
   ·Characteristics。定义了段的特征。这些值可以在WINNT.H及本光盘(译注:MSDN的光盘)的PE格式规范中找到。
汗,VirtualSize竟然已经不使用了?我要晕了啊!请了解的大大说两句!

[培训]科锐逆向工程师培训第53期2025年7月8日开班!

收藏
免费 0
支持
分享
最新回复 (1)
雪    币: 272
活跃值: (143)
能力值: ( LV15,RANK:930 )
在线值:
发帖
回帖
粉丝
2
alig(sizeofrawdata, file_aligment) <= alig(virtualsize, sect_aligment)
2007-8-9 19:45
0
游客
登录 | 注册 方可回帖
返回