我正在做静态分析和动态分析。我在so文件中得到了一个特定函数的偏移量。但是在IDA(动态调试)中,偏移量是不正确的。如何在静态分析中获取真实地址?为什么静态分析和动态分析是不同的?
apk文件有两个版本arm64-v8a、armeabi-v7a。所以我使用了"adb pull“并与so文件进行了比较。armeabi-v7a的地址与adb pull获得的地址相同。所以我得到了armeabi-v7a中的偏移量
发布于 2019-10-29 18:36:08
您将看到不同的地址,因为在运行时,so模块的基地址可能每次都不同,无论操作系统将其放置在何处。然后基于此(base +函数偏移)将在运行时给出函数地址。
在静态分析期间,您可能已将(或默认)设置为基地址为零。如果您有在静态分析器中重新设置so模块的基址的功能,则可以执行此操作以将其重新设置为您的运行时地址。
https://stackoverflow.com/questions/58603436
复制相似问题