从用于 iOS 二进制文件的 Frida-trace 中的 args 解析的 Int64

逆向工程 ios 料斗 弗里达
2021-07-05 01:37:14

我正在使用 frida-trace 来记录一些方法,但我遇到了以下情况。

 onEnter(log, args, state) {
    log(`-[Somefunction somefield64:${args[2]}]`)
 }

somefield64返回我认为是 int64 之类的内容0x81008d000101e7

我不确定如何查看这背后的值,所有读取方法(readU64/S64)都抱怨它不是有效地址(访问冲突),所以我假设我需要更改格式。

查看反汇编器中的方法及其引用显示它只需要一个字符串

extern _some_field_constant

随着电话的

[Somefunction somefield64:**_some_field_constant]

所以我知道如何达到常数

Module.getExportByName('SomeModule',"_some_field_constant") 

我可以看到地址。

我只是没有看到有关如何args[2]通过 frida-trace检索字段的参考

我有一个具有类似功能的类似方法(没有 int64)返回了一个__NSCFConstantString并且只是设法做

onEnter(log, args, state) {
    log(`-[SomeOther someField:${args[2]}]`);
    log(ObjC.classes.NSString.stringWithString_(args[2]))                                                                                           
}

我需要做什么(或阅读技术文档,请原谅我对有经验的逆向工程人员的不完整理解/解释)将 int64 解析为 aNativePointer以便我可以在内存中获取地址。

0个回答
没有发现任何回复~