ImageBase的可执行文件地址

时间:2014-05-15 13:12:30

标签: windows exe memory-address portable-executable ollydbg

为什么ImageBase是CFF和OllyDbg之间的区别?

enter image description here

1 个答案:

答案 0 :(得分:1)

CFF向您展示静态分析,这意味着它只是从磁盘读取文件而不是在运行时调试它,向您显示PE头中的“Preferred ImageBase”,这是二进制文件想要在运行时加载的位置。

当您使用ollydbg进行动态分析时,它会在运行时向您显示PE标头中的值,ImageBase将保留当前的ImageBase,而不是磁盘中的首选ImageBase。但是当您从optional PE header读取DllCharacteristics时,您会看到它被设置为0x8140。

0x0040 = IMAGE_DLLCHARACTERISTICS_DYNAMIC_BASE含义地址空间布局随机化已启用,导致Windows加载程序将模块加载到随机地址,以便使攻击更加困难,因为硬编码的jmps和地址将不准确。

漏洞利用程序开发人员现在需要在运行时计算所有内容,除非您使用Windows 8或10,因为bug has been causing ASLR无法正常工作...