好友
阅读权限10
听众
最后登录1970-1-1
|
class
class Test{
// Token: 0x0600B462 RID: 46178 RVA: 0x00002050 File Offset: 0x00000250
[Token(Token = "0x600B462")]
[Address(RVA = "0x3217A10", Offset = "0x3217A10", VA = "0x3217A10")]
public Test()
{
}
// Token: 0x0400A57C RID: 42364
[Token(Token = "0x400A57C")]
[Il2CppDummyDll.FieldOffset(Offset = "0x0")]
private static string s_appId;
}
大佬们好,小白刚入门,自己写了一个unity3d游戏,采用il2cpp模式,编译后,文件中会存在UnityFramework,采用il2cppdumper处理后出现上述代码。
我如果想读取s_appId的字符串值应该如何处理呢?
目前我是采用frida读取UnityFramework的基址
代码如下
var module = Process.getModuleByName("UnityFramework")
var addr = module.base.add("0x3217A10");
Memory.readUtf8String(ptr(addr))
由于s_appId相对于Test的偏移是0,所以就没有再加,那么Test的位置应该就可以读取到s_appId指针,但是读取该指针无法读取到字符串。
另外stringliteral.json文件当中的字符串地址,基于UnityFramework偏移后,无论直接读取还是作为指针读取都无法读取到字符串。
我采用网上搜到的一个frida脚本,可以将进程内的所有字符串和基址导出来,对比stringliteral.json文件地址,差距太大,不知道如何下手处理。
望大神指点一二。
|
|
发帖前要善用【论坛搜索】功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。 |
|
|
|
|