当我在 IDA 中打开一个 .exe 文件时,每次我都会得到不同的函数地址,因为每次我都会得到不同的基地址偏移量。
因此,如果我用 IDA 打开一个 .exe 文件并想告诉朋友“看看 sub_8876”,由于偏移量不同,他无法这样做。
什么是解决方案?
当我在 IDA 中打开一个 .exe 文件时,每次我都会得到不同的函数地址,因为每次我都会得到不同的基地址偏移量。
因此,如果我用 IDA 打开一个 .exe 文件并想告诉朋友“看看 sub_8876”,由于偏移量不同,他无法这样做。
什么是解决方案?
你们中的一个(或两个)可以只是重新设置程序的基础,并且应该将所有地址显示为相同。如果你想让他变基他的计划是一样的你,找出你的基址(滚动到你的顶部.exe中Text View),然后让你的朋友去到编辑- >段- >程序衍合...并在提示时让他输入你的基本地址。
或者,您都可以重新绑定到相同的基地址,例如0x10000000.
实际上,您说解决方案是什么:使用偏移量。您可以使用以下 IDA Python 获取该函数、全局或任何函数的偏移量:
Python> hex(here() - idaapi.get_imagebase())
0x38a0aL
它从光标下的地址中减去数据库的基地址。然后,您可以告诉您的朋友偏移量,她/他将不得不转到数据库的开头(只需按几次“主页”键),按“g”键并输入 +0xGIVENOFFSET(注意+在开始)去你想指向她/他的功能。