请问如何将偏移量转换为地址?

请问如何将偏移量转换为地址?

  我在使用软件定位木马特征码的时候,只得到偏移量,为什么有的人用OD转到偏移量,但我用OD的时候,显示没有这个偏移量的,请问如何将偏移量转换为地址? 

 

在DFCG回答过,再转过来吧。

+---------+---------+---------+---------+---------+---------+
|  段名称   虚拟地址  虚拟大小  物理地址  物理大小   标志   |
+---------+---------+---------+---------+---------+---------+
|  Name     VOffset    VSize    ROffset    RSize      Flags |
+---------+---------+---------+---------+---------+---------+
|  .text   00001000   00000092  00000400  00000200  60000020|
|  .rdata  00002000   000000F6  00000600  00000200  40000040|
|  .data   00003000   0000018E  00000800  00000200  C0000040|
|  .rsrc   00004000   000003A0  00000A00  00000400  C0000040|
+---------+---------+---------+---------+---------+---------+
文件虚拟偏移地址和文件物理偏移地址的计算公式如下:

>>>>>>>VaToFileOffset(虚拟地址转文件偏移地址)
如VA = 00401000 (虚拟地址)
ImageBase = 00400000 (基地址)
VRk = VOffset - ROffset = 00001000 - 00000400 = C00 (得出文件虚拟地址和文件物理址之间的VRk值)
FileOffset = VA - ImageBase - VRk = 00401000 - 00400000 - C00 = 400(文件物理地址的偏移地址)

如VA = 00401325,则:
FileOffset = VA - ImageBase - VRk = 00401325 - 00400000 - C00 = 725

>>>>>>FileOffsetToVa(文件偏移地址转虚拟地址)
如FileOffset = 435(文件偏移地址)
VA = FileOffset + ImageBase + VRk = 435 + 00400000 + C00 = 00401035(虚拟地址)

 

小虾讲的不错,再给楼主一张图理解一下:

 

 

用工具PETools或LordPE转换。。。

 

这里不分新手区、高手区,只按讨论内容分类。
区段的间隙,你用LordPE打开一个PE,再配合十六进制工具,就会明白了。间隙那段空间全是0.

 

用LordPE查看区块后面部分.
因为区块都是对齐的,磁盘上对齐值一般是0x200或0x1000,如果某个区块中的有效数据大小是0x160,而为了对齐,区块的大小是x200,则0x160到0x200之间就是间隙.
说的很抽象的,你用实例操作一下,再结合上面的图自己分析一下就会很清楚的。

 

猜你喜欢

转载自www.cnblogs.com/adylee/p/9932018.html