Garfield 发表于 2014-9-22 15:27:32

关于PE文件中,由目标RVA得到目标文件地址的方法

在看罗云斌那本书第17章的时候,有个问题弄不明白(看截图中红色圈起来的部分):
第2步里面目标RVA减去节的起始RVA,得到的偏移量RVA'是在内存中的偏移量啊,但是节从磁盘映射到内存不是大小可能会发生变化吗?那么在内存中的偏移量可能就不等于在磁盘中的偏移量了啊,所以第三步得到的有可能是错误的位置——是这样吗?

Garfield 发表于 2014-9-22 17:31:26

知道答案了,自问自答吧:
其实上面的问题就是为了找到这句话的根据“数据在内存中相对于节首的偏移和在磁盘中相对于节首的偏移是相同的”——这个问题在《加密与解密》的PE文件结构一章里面有提到,虽然没有明确的这么说,但是看作者的意思这两个偏移确实是相同的。
另外,《加密与解密》中的图解比较清楚,节从磁盘到内存实际还是那么大,只是因为对齐变大了。罗云斌那本书上的图解就比较容易误导人了,还以为节中的某些数据在导入内存中的时候回被PE加载器处理而变大呢。

笑笑啊 发表于 2020-2-24 18:43:01

你太棒了   解决了我一个大难题

gang19840815 发表于 2020-2-24 22:49:55

kankan
页: [1]
查看完整版本: 关于PE文件中,由目标RVA得到目标文件地址的方法