请记住,我对这一切都很陌生 - 但是我已经搜索过并且无法轻松找到我的问题的答案。
我有一个精灵(实际上是一个基于 LK 的 Android aboot 映像),我加载到 IDA Pro 中。我看到了字符串,我希望找出这些字符串在代码中的引用位置。
我试图在代码中找到对这些字符串的交叉引用,但没有。
我是否完全天真并错过了对发起人来说完全显而易见的事情?字符串是否可以通过地址的一些迟钝的运行时计算来引用(以混淆引用),而不仅仅是直接的绝对/相对引用(IDA 大多可以解决这个问题?)
非常感谢。
它可能只是一个字符串数组,由数组中的偏移量表引用。以下是 strerror() 如何查找字符串的示例:
应该很容易看到errid只是用于通过strerror()函数计算errmsg表中相应字符串的指针。这可能就是您没有看到这些字符串的外部参照的原因。没有更多信息,这是我最好的猜测。我会尝试找到该字符串列表的开头并在那里寻找外部参照。