吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 1011|回复: 5
收起左侧

[Android 求助] Frida hook 问题

[复制链接]
还在学习呢 发表于 2024-5-8 14:47
小白一枚,因为项目需求正在学习逆向,因为刚接触所以在网上找到一个别人写好的hook代码,是采用frIDA注入js文件hook的,所以照猫画虎跟着做,但是在hook时出现问题,js内代码是和对方一样的,但是却不能hook到想要的方法(ps:对方是可以的)


是否是环境问题,因为我是用模拟器不是真机?





以下是参照的hook代码与返回效果

[JavaScript] 纯文本查看 复制代码
function hook_RegisterNatives() {
    var RegisterNatives_addr = null;
    var symbols = Process.findModuleByName("libart.so").enumerateSymbols();
    for (var i = 0; i < symbols.length; i++) {
        var symbol = symbols[i].name;
        if ((symbol.indexOf("CheckJNI") == -1) && (symbol.indexOf("JNI") >= 0)) {
            if (symbol.indexOf("RegisterNatives") >= 0) {
                RegisterNatives_addr = symbols[i].address;
                console.log("RegisterNatives_addr: ", RegisterNatives_addr);
            }
        }
    }
    Interceptor.attach(RegisterNatives_addr, {
        onEnter: function (args) {
            var env = args[0];
            var jclass = args[1];
            var class_name = Java.vm.tryGetEnv().getClassName(jclass);
            var methods_ptr = ptr(args[2]);
            var method_count = args[3].toInt32();
            console.log("RegisterNatives method counts: ", method_count);
            for (var i = 0; i < method_count; i++) {
                var name = methods_ptr.add(i * Process.pointerSize * 3).readPointer().readCString();
                var sig = methods_ptr.add(i * Process.pointerSize * 3 + Process.pointerSize).readPointer().readCString();
                var fnPtr_ptr = methods_ptr.add(i * Process.pointerSize * 3 + Process.pointerSize * 2).readPointer();
                var find_module = Process.findModuleByAddress(fnPtr_ptr);
                console.log("类: ", class_name, "方法: ", name, "签名: ", sig, "函数地址: ", fnPtr_ptr, "模块名: ", find_module.name, "函数偏移: ", ptr(fnPtr_ptr).sub(find_module.base));
            }
        },
        onLeave: function (retval) {}
    });
}
hook_RegisterNatives()

QQ截图20240508144333.png




这是我hook到的

类:  com.tencent.mmkv.MMKV 方法:  onExit 签名:  ()V 函数地址:  0x7fa869e06b70 模块名:  null
类:  com.tencent.mmkv.MMKV 方法:  cryptKey 签名:  ()Ljava/lang/String; 函数地址:  0x7fa869e06ac0 模块名:  null
类:  com.tencent.mmkv.MMKV 方法:  reKey 签名:  (Ljava/lang/String;)Z 函数地址:  0x7fa869e06a10 模块名:  null
类:  com.tencent.mmkv.MMKV 方法:  checkReSetCryptKey 签名:  (Ljava/lang/String;)V 函数地址:  0x7fa869e06960 模块名:  null
类:  com.tencent.mmkv.MMKV 方法:  pageSize 签名:  ()I 函数地址:  0x7fa869e068b0 模块名:  null
类:  com.tencent.mmkv.MMKV 方法:  mmapID 签名:  ()Ljava/lang/String; 函数地址:  0x7fa869e06800 模块名:  null
类:  com.tencent.mmkv.MMKV 方法:  version 签名:  ()Ljava/lang/String; 函数地址:  0x7fa869e06750 模块名:  null
类:  com.tencent.mmkv.MMKV 方法:  lock 签名:  ()V 函数地址:  0x7fa869e066a0 模块名:  null
类:  com.tencent.mmkv.MMKV 方法:  unlock 签名:  ()V 函数地址:  0x7fa869e065f0 模块名:  null
类:  com.tencent.mmkv.MMKV 方法:  tryLock 签名:  ()Z 函数地址:  0x7fa869e06540 模块名:  null
类:  com.tencent.mmkv.MMKV 方法:  allKeys 签名:  ()[Ljava/lang/String; 函数地址:  0x7fa869e06490 模块名:  null
类:  com.tencent.mmkv.MMKV 方法:  removeValuesForKeys 签名:  ([Ljava/lang/String;)V 函数地址:  0x7fa869e063e0 模块名:  null
类:  com.tencent.mmkv.MMKV 方法:  clearAll 签名:  ()V 函数地址:  0x7fa869e06330 模块名:  null
类:  com.tencent.mmkv.MMKV 方法:  trim 签名:  ()V 函数地址:  0x7fa869e06280 模块名:  null
类:  com.tencent.mmkv.MMKV 方法:  close 签名:  ()V 函数地址:  0x7fa869e061d0 模块名:  null
类:  com.tencent.mmkv.MMKV 方法:  clearMemoryCache 签名:  ()V 函数地址:  0x7fa869e06120 模块名:  null
类:  com.tencent.mmkv.MMKV 方法:  sync 签名:  (Z)V 函数地址:  0x7fa869e06070 模块名:  null
类:  com.tencent.mmkv.MMKV 方法:  isFileValid 签名:  (Ljava/lang/String;Ljava/lang/String;)Z 函数地址:  0x7fa869e04f90 模块名:  null
类:  com.tencent.mmkv.MMKV 方法:  ashmemFD 签名:  ()I 函数地址:  0x7fa869e04ee0 模块名:  null
类:  com.tencent.mmkv.MMKV 方法:  ashmemMetaFD 签名:  ()I 函数地址:  0x7fa869e04e30 模块名:  null
类:  com.tencent.mmkv.MMKV 方法:  jniInitialize 签名:  (Ljava/lang/String;Ljava/lang/String;I)V 函数地址:  0x7fa869e04d80 模块名:  null
类:  com.tencent.mmkv.MMKV 方法:  getMMKVWithID 签名:  (Ljava/lang/String;ILjava/lang/String;Ljava/lang/String;)J 函数地址:  0x7fa869e04cd0 模块名:  null
类:  com.tencent.mmkv.MMKV 方法:  getMMKVWithIDAndSize 签名:  (Ljava/lang/String;IILjava/lang/String;)J 函数地址:  0x7fa869e04c20 模块名:  null
类:  com.tencent.mmkv.MMKV 方法:  getDefaultMMKV 签名:  (ILjava/lang/String;)J 函数地址:  0x7fa869e04b70 模块名:  null
类:  com.tencent.mmkv.MMKV 方法:  getMMKVWithAshmemFD 签名:  (Ljava/lang/String;IILjava/lang/String;)J 函数地址:  0x7fa869e04ac0 模块名:  null
类:  com.tencent.mmkv.MMKV 方法:  encodeBool 签名:  (JLjava/lang/String;Z)Z 函数地址:  0x7fa869e04a10 模块名:  null
类:  com.tencent.mmkv.MMKV 方法:  decodeBool 签名:  (JLjava/lang/String;Z)Z 函数地址:  0x7fa869e04960 模块名:  null
类:  com.tencent.mmkv.MMKV 方法:  encodeInt 签名:  (JLjava/lang/String;I)Z 函数地址:  0x7fa869e048b0 模块名:  null
类:  com.tencent.mmkv.MMKV 方法:  decodeInt 签名:  (JLjava/lang/String;I)I 函数地址:  0x7fa869e04800 模块名:  null
类:  com.tencent.mmkv.MMKV 方法:  encodeLong 签名:  (JLjava/lang/String;J)Z 函数地址:  0x7fa869e04750 模块名:  null
类:  com.tencent.mmkv.MMKV 方法:  decodeLong 签名:  (JLjava/lang/String;J)J 函数地址:  0x7fa869e046a0 模块名:  null
类:  com.tencent.mmkv.MMKV 方法:  encodeFloat 签名:  (JLjava/lang/String;F)Z 函数地址:  0x7fa869e045f0 模块名:  null
类:  com.tencent.mmkv.MMKV 方法:  decodeFloat 签名:  (JLjava/lang/String;F)F 函数地址:  0x7fa869e04540 模块名:  null
类:  com.tencent.mmkv.MMKV 方法:  encodeDouble 签名:  (JLjava/lang/String;D)Z 函数地址:  0x7fa869e04490 模块名:  null
类:  com.tencent.mmkv.MMKV 方法:  decodeDouble 签名:  (JLjava/lang/String;D)D 函数地址:  0x7fa869e043e0 模块名:  null
类:  com.tencent.mmkv.MMKV 方法:  encodeString 签名:  (JLjava/lang/String;Ljava/lang/String;)Z 函数地址:  0x7fa869e04330 模块名:  null
类:  com.tencent.mmkv.MMKV 方法:  decodeString 签名:  (JLjava/lang/String;Ljava/lang/String;)Ljava/lang/String; 函数地址:  0x7fa869e04280 模块名:  null
类:  com.tencent.mmkv.MMKV 方法:  encodeSet 签名:  (JLjava/lang/String;[Ljava/lang/String;)Z 函数地址:  0x7fa869e041d0 模块名:  null
类:  com.tencent.mmkv.MMKV 方法:  decodeStringSet 签名:  (JLjava/lang/String;)[Ljava/lang/String; 函数地址:  0x7fa869e04120 模块名:  null
类:  com.tencent.mmkv.MMKV 方法:  encodeBytes 签名:  (JLjava/lang/String;[B)Z 函数地址:  0x7fa869e04070 模块名:  null
类:  com.tencent.mmkv.MMKV 方法:  decodeBytes 签名:  (JLjava/lang/String;)[B 函数地址:  0x7fa869980f90 模块名:  null
类:  com.tencent.mmkv.MMKV 方法:  containsKey 签名:  (JLjava/lang/String;)Z 函数地址:  0x7fa869980ee0 模块名:  null
类:  com.tencent.mmkv.MMKV 方法:  count 签名:  (J)J 函数地址:  0x7fa869980e30 模块名:  null
类:  com.tencent.mmkv.MMKV 方法:  totalSize 签名:  (J)J 函数地址:  0x7fa869980d80 模块名:  null
类:  com.tencent.mmkv.MMKV 方法:  actualSize 签名:  (J)J 函数地址:  0x7fa869980cd0 模块名:  null
类:  com.tencent.mmkv.MMKV 方法:  removeValueForKey 签名:  (JLjava/lang/String;)V 函数地址:  0x7fa869980c20 模块名:  null
类:  com.tencent.mmkv.MMKV 方法:  valueSize 签名:  (JLjava/lang/String;Z)I 函数地址:  0x7fa869980b70 模块名:  null
类:  com.tencent.mmkv.MMKV 方法:  setLogLevel 签名:  (I)V 函数地址:  0x7fa869980ac0 模块名:  null
类:  com.tencent.mmkv.MMKV 方法:  setCallbackHandler 签名:  (ZZ)V 函数地址:  0x7fa869980a10 模块名:  null
类:  com.tencent.mmkv.MMKV 方法:  setWantModeCheck 签名:  (Z)V 函数地址:  0x7fa869980960 模块名:  null
类:  com.tencent.mmkv.MMKV 方法:  createNB 签名:  (I)J 函数地址:  0x7fa8699808b0 模块名:  null
类:  com.tencent.mmkv.MMKV 方法:  destroyNB 签名:  (JI)V 函数地址:  0x7fa869980800 模块名:  null
类:  com.tencent.mmkv.MMKV 方法:  writeValueToNB 签名:  (JLjava/lang/String;JI)I 函数地址:  0x7fa869980750 模块名:  null类:  com.tencent.mmkv.MMKV 方法:  setWantsContentChangeNotify 签名:  (Z)V 函数地址:  0x7fa8699806a0 模块名:  null
类:  com.tencent.mmkv.MMKV 方法:  setLoadOnNecessaryEnable 签名:  (Z)V 函数地址:  0x7fa8699805f0 模块名:  null
类:  com.tencent.mmkv.MMKV 方法:  setSharedLockFirstWhenReload 签名:  (Z)V 函数地址:  0x7fa869980540 模块名:  null
类:  com.tencent.mmkv.MMKV 方法:  checkContentChangedByOuterProcess 签名:  ()V 函数地址:  0x7fa869980490 模块名:  null
类:  com.tencent.mmkv.MMKV 方法:  checkProcessMode 签名:  (J)Z 函数地址:  0x7fa8699803e0 模块名:  null
类:  com.tencent.mmkv.MMKV 方法:  backupOneToDirectory 签名:  (Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Z 函数地址:  0x7fa869980330 模块名:  null
类:  com.tencent.mmkv.MMKV 方法:  restoreOneMMKVFromDirectory 签名:  (Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Z 函数地址:  0x7fa869980280 模块名:  null
类:  com.tencent.mmkv.MMKV 方法:  backupAllToDirectory 签名:  (Ljava/lang/String;)J 函数地址:  0x7fa8699801d0 模块名:  null
类:  com.tencent.mmkv.MMKV 方法:  restoreAllFromDirectory 签名:  (Ljava/lang/String;)J 函数地址:  0x7fa869980120 模块名:  null
RegisterNatives method counts:  15
类:  com.tencent.qimei.uin.U 方法:  r 签名:  (ZIILjava/lang/String;I[Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; 函数地址:  0x7fa8692f7cd0 模块名:  null
类:  com.tencent.qimei.uin.U 方法:  d 签名:  (Ljava/lang/String;)[B 函数地址:  0x7fa8692f7c20 模块名:  null
类:  com.tencent.qimei.uin.U 方法:  e 签名:  (Ljava/lang/String;Ljava/lang/String;)B 函数地址:  0x7fa8692f7b70 模块名:  null
类:  com.tencent.qimei.uin.U 方法:  n 签名:  (Landroid/content/Context;Ljava/lang/String;[Ljava/lang/Object;)V 函数地址:  0x7fa8692f7ac0 模块名:  null
类:  com.tencent.qimei.uin.U 方法:  m 签名:  (I)Ljava/lang/String; 函数地址:  0x7fa8692f7a10 模块名:  null
类:  com.tencent.qimei.uin.U 方法:  z 签名:  (Landroid/content/Context;)Ljava/lang/String; 函数地址:  0x7fa8692f7960 模块名:  null
类:  com.tencent.qimei.uin.U 方法:  z2 签名:  (Landroid/content/Context;I)Ljava/lang/String; 函数地址:  0x7fa8692f78b0 模块名:  null
类:  com.tencent.qimei.uin.U 方法:  o 签名:  ()Ljava/lang/String; 函数地址:  0x7fa8692f7800 模块名:  null
类:  com.tencent.qimei.uin.U 方法:  x 签名:  (Ljava/lang/String;)Ljava/lang/String; 函数地址:  0x7fa8692f7750 模块名:  null
类:  com.tencent.qimei.uin.U 方法:  u 签名:  ()Ljava/lang/String; 函数地址:  0x7fa8692f76a0 模块名:  null
类:  com.tencent.qimei.uin.U 方法:  a 签名:  (I[B[B[B)[B 函数地址:  0x7fa8692f75f0 模块名:  null
类:  com.tencent.qimei.uin.U 方法:  p 签名:  ()Ljava/lang/String; 函数地址:  0x7fa8692f7540 模块名:  null
类:  com.tencent.qimei.uin.U 方法:  b 签名:  ()Z 函数地址:  0x7fa8692f7490 模块名:  null
类:  com.tencent.qimei.uin.U 方法:  r4 签名:  ([BI[BI)[B 函数地址:  0x7fa8692f73e0 模块名:  null
类:  com.tencent.qimei.uin.U 方法:  w 签名:  (Ljava/lang/String;)Z 函数地址:  0x7fa8692f7330 模块名:  null
RegisterNatives method counts:  1
类:  com.tencent.mobileqq.nativememorymonitor.library.ClassToFindJniOffset 方法:  mark 签名:  ()V 函数地址:  0x7fa8692f71d0 模块名:  null
RegisterNatives method counts:  9
类:  com.tencent.mobileqq.nativememorymonitor.library.NativeMemoryMonitor 方法:  nativeJniHookInit 签名:  (JJ)V 函数地址:  0x7fa8692f7120 模块名:  null
类:  com.tencent.mobileqq.nativememorymonitor.library.NativeMemoryMonitor 方法:  nativeSoLoadHook 签名:  (Ljava/lang/String;Ljava/lang/String;JZ)V 函数地址:  0x7fa8692f7070 模块名:  null
类:  com.tencent.mobileqq.nativememorymonitor.library.NativeMemoryMonitor 方法:  nativeFileHook 签名:  (JJ)V 函数地址:  0x7fa82479ff90 模块名:  null
类:  com.tencent.mobileqq.nativememorymonitor.library.NativeMemoryMonitor 方法:  nativeOpenFileHook 签名:  (J)V 函数地址:  0x7fa82479fee0 模块名:  null
类:  com.tencent.mobileqq.nativememorymonitor.library.NativeMemoryMonitor 方法:  nativeJavaFieldHook 签名:  ([Ljava/lang/Class;[Ljava/lang/String;[Ljava/lang/String;[Lcom/tencent/mobileqq/nativememorymonitor/library/AccessFieldCallback;[Ljava/lang/Class;[Ljava/lang/String;[Ljava/lang/String;[Lcom/tencent/mobileqq/nativememorymonitor/library/AccessFieldCallback;)V 函数地址:  0x7fa82479fe30 模块名:  null
类:  com.tencent.mobileqq.nativememorymonitor.library.NativeMemoryMonitor 方法:  nativeJavaMethodHook 签名:  ([Ljava/lang/Class;[Ljava/lang/String;[Ljava/lang/String;[Lcom/tencent/mobileqq/nativememorymonitor/library/CallMethodCallback;[Ljava/lang/Class;[Ljava/lang/String;[Ljava/lang/String;[Lcom/tencent/mobileqq/nativememorymonitor/library/CallMethodCallback;)V 函数地址:  0x7fa82479fd80 模块名:  null
类:  com.tencent.mobileqq.nativememorymonitor.library.NativeMemoryMonitor 方法:  nativeInit 签名:  (J[Ljava/lang/String;JJJ)V 函数地址:  0x7fa82479fcd0 模块名:  null
类:  com.tencent.mobileqq.nativememorymonitor.library.NativeMemoryMonitor 方法:  nativeDump 签名:  ()V 函数地址:  0x7fa82479fc20 模块名:  null
类:  com.tencent.mobileqq.nativememorymonitor.library.NativeMemoryMonitor 方法:  applyHiddenApiPolicyCrack 签名:  (Landroid/content/pm/ApplicationInfo;)Z 函数地址:  0x7fa82479fb70 模块名:  null
RegisterNatives method counts:  2
类:  com.tencent.mobileqq.nativememorymonitor.library.NativeMemoryMonitor 方法:  nativeGetJavaThreadPeakCount 签名:  ()I 函数地址:  0x7fa82479fac0 模块名:  null
类:  com.tencent.mobileqq.nativememorymonitor.library.NativeMemoryMonitor 方法:  nativeThreadHook 签名:  ()V 函数地址:  0x7fa82479fa10 模块名:  null
RegisterNatives method counts:  1
类:  com.tencent.mobileqq.nativememorymonitor.library.NativeMemoryMonitor 方法:  nativeThreadCreateHookInit 签名:  (Ljava/lang/String;)V 函数地址:  0x7fa82479f960 模块名:  null
RegisterNatives method counts:  1
类:  com.tencent.mobileqq.nativememorymonitor.library.NativeMemoryMonitor 方法:  setupASanCallback 签名:  ()V 函数地址:  0x7fa82479f8b0 模块名:  null
RegisterNatives method counts:  1
类:  com.tencent.mobileqq.nativememorymonitor.library.NativeMemoryMonitor 方法:  getUndetachThreads 签名:  ()Ljava/lang/String; 函数地址:  0x7fa82479f800 模块名:  null
RegisterNatives method counts:  7
类:  com.tencent.mobileqq.nativememorymonitor.library.trafficmonitor.NativeTrafficMonitor 方法:  nativeTrafficMonitorInit 签名:  (Ljava/lang/Object;)V 函数地址:  0x7fa82479f750 模块名:  null
类:  com.tencent.mobileqq.nativememorymonitor.library.trafficmonitor.NativeTrafficMonitor 方法:  nativeSetNetStateIsMobile 签名:  (Z)V 函数地址:  0x7fa82479f6a0 模块名:  null
类:  com.tencent.mobileqq.nativememorymonitor.library.trafficmonitor.NativeTrafficMonitor 方法:  nativeEnableDetailMonitor 签名:  (Z)V 函数地址:  0x7fa82479f5f0 模块名:  null
类:  com.tencent.mobileqq.nativememorymonitor.library.trafficmonitor.NativeTrafficMonitor 方法:  nativeEnableGlobalMonitor 签名:  (Z)V 函数地址:  0x7fa82479f540 模块名:  null
类:  com.tencent.mobileqq.nativememorymonitor.library.trafficmonitor.NativeTrafficMonitor 方法:  nativeSetReportThreshold 签名:  (JJJJ)V 函数地址:  0x7fa82479f490 模块名:  null
类:  com.tencent.mobileqq.nativememorymonitor.library.trafficmonitor.NativeTrafficMonitor 方法:  nativeSetGloBalMonitorThreshold 签名:  (JJJJJJ)V 函数地址:  0x7fa82479f3e0 模块名:  null
类:  com.tencent.mobileqq.nativememorymonitor.library.trafficmonitor.NativeTrafficMonitor 方法:  nativeSetAppIsOnForeground 签名:  (Z)V 函数地址:  0x7fa82479f330 模块名:  null
RegisterNatives method counts:  5
类:  com.tencent.bugly.crashreport.crash.jni.NativeCrashHandler 方法:  regist 签名:  (Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;ZIJ)Ljava/lang/String; 函数地址:  0x7fa823799ee0 模块名:  null
类:  com.tencent.bugly.crashreport.crash.jni.NativeCrashHandler 方法:  unregist 签名:  ()Ljava/lang/String; 函数地址:  0x7fa823799e30 模块名:  null
类:  com.tencent.bugly.crashreport.crash.jni.NativeCrashHandler 方法:  testCrash 签名:  ()V 函数地址:  0x7fa823799d80 模块名:  null
类:  com.tencent.bugly.crashreport.crash.jni.NativeCrashHandler 方法:  setAdditionalAttachmentPathsNative 签名:  ([Ljava/lang/String;)V 函数地址:  0x7fa823799cd0 模块名:  null
类:  com.tencent.bugly.crashreport.crash.jni.NativeCrashHandler 方法:  saveAdditionalAttachmentPathsNative 签名:  (Ljava/lang/String;)V 函数地址:  0x7fa823799c20 模块名:  null
RegisterNatives method counts:  3
类:  com.tencent.bugly.crashreport.crash.jni.NativeCrashHandler 方法:  appendNativeLog 签名:  (Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Z 函数地址:  0x7fa823799b70 模块名:  null
类:  com.tencent.bugly.crashreport.crash.jni.NativeCrashHandler 方法:  getNativeLog 签名:  ()Ljava/lang/String; 函数地址:  0x7fa823799ac0 模块名:  null
类:  com.tencent.bugly.crashreport.crash.jni.NativeCrashHandler 方法:  appendWholeNativeLog 签名:  (Ljava/lang/String;)Z 函数地址:  0x7fa823799a10 模块名:  null
RegisterNatives method counts:  3
类:  com.tencent.bugly.crashreport.crash.jni.NativeCrashHandler 方法:  putNativeKeyValue 签名:  (Ljava/lang/String;Ljava/lang/String;)Z 函数地址:  0x7fa823799960 模块名:  null
类:  com.tencent.bugly.crashreport.crash.jni.NativeCrashHandler 方法:  getNativeKeyValueList 签名:  ()Ljava/lang/String; 函数地址:  0x7fa8237998b0 模块名:  null
类:  com.tencent.bugly.crashreport.crash.jni.NativeCrashHandler 方法:  removeNativeKeyValue 签名:  (Ljava/lang/String;)Ljava/lang/String; 函数地址:  0x7fa823799800 模块名:  null
RegisterNatives method counts:  1
类:  com.tencent.bugly.crashreport.crash.jni.NativeCrashHandler 方法:  setNativeInfo 签名:  (ILjava/lang/String;)V 函数地址:  0x7fa823799750 模块名:  null
RegisterNatives method counts:  1
类:  com.tencent.bugly.crashreport.crash.jni.NativeCrashHandler 方法:  getSoCpuAbi 签名:  ()Ljava/lang/String; 函数地址:  0x7fa8237996a0 模块名:  null
RegisterNatives method counts:  3
类:  com.tencent.bugly.crashreport.crash.jni.NativeCrashHandler 方法:  recordProcessingState 签名:  (Ljava/lang/String;I)V 函数地址:  0x7fa8237995f0 模块名:  null
类:  com.tencent.bugly.crashreport.crash.jni.NativeCrashHandler 方法:  modifyProcessingState 签名:  (IZZ)V 函数地址:  0x7fa823799540 模块名:  null
类:  com.tencent.bugly.crashreport.crash.jni.NativeCrashHandler 方法:  setCrashProcessingInfo 签名:  (Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V 函数地址:  0x7fa823799490 模块名:  null
RegisterNatives method counts:  3
类:  com.tencent.bugly.crashreport.crash.jni.NativeCrashHandler 方法:  getFd 签名:  ()V 函数地址:  0x7fa8237993e0 模块名:  null
类:  com.tencent.bugly.crashreport.crash.jni.NativeCrashHandler 方法:  getProcessInfoAnr 签名:  ()V 函数地址:  0x7fa823799330 模块名:  null
类:  com.tencent.bugly.crashreport.crash.jni.NativeCrashHandler 方法:  getProperties 签名:  (Ljava/lang/String;)Ljava/lang/String; 函数地址:  0x7fa823799280 模块名:  null
RegisterNatives method counts:  11
类:  com.tencent.turingfd.sdk.xq.TNative$aa 方法:  a87_F4D9D65F3914B121 签名:  (Landroid/util/SparseArray;Landroid/content/Context;Ljava/util/Map;Ljava/util/Map;I)Landroid/util/SparseArray; 函数地址:  0x7fa8203bdac0 模块名:  null
类:  com.tencent.turingfd.sdk.xq.TNative$aa 方法:  b87_F4D9D65F3914B121 签名:  (Landroid/util/SparseArray;[BLjava/util/Map;I)Landroid/util/SparseArray; 函数地址:  0x7fa8203bda10 模块名:  null
类:  com.tencent.turingfd.sdk.xq.TNative$aa 方法:  c87_F4D9D65F3914B121 签名:  (Landroid/util/SparseArray;Landroid/content/Context;)Landroid/util/SparseArray; 函数地址:  0x7fa8203bd960 模块名:  null
类:  com.tencent.turingfd.sdk.xq.TNative$aa 方法:  d87_F4D9D65F3914B121 签名:  (Landroid/util/SparseArray;Landroid/content/Context;I)Landroid/util/SparseArray; 函数地址:  0x7fa8203bd8b0 模块名:  null
类:  com.tencent.turingfd.sdk.xq.TNative$aa 方法:  e87_F4D9D65F3914B121 签名:  (Landroid/util/SparseArray;Landroid/content/Context;Ljava/util/Map;I)Landroid/util/SparseArray; 函数地址:  0x7fa8203bd800 模块名:  null
类:  com.tencent.turingfd.sdk.xq.TNative$aa 方法:  f87_F4D9D65F3914B121 签名:  (Landroid/util/SparseArray;[BI)Landroid/util/SparseArray; 函数地址:  0x7fa8203bd750 模块名:  null
类:  com.tencent.turingfd.sdk.xq.TNative$aa 方法:  g87_F4D9D65F3914B121 签名:  (Landroid/util/SparseArray;Landroid/content/Context;Ljava/util/Map;I)Landroid/util/SparseArray; 函数地址:  0x7fa8203bd6a0 模块名:  null
类:  com.tencent.turingfd.sdk.xq.TNative$aa 方法:  h87_F4D9D65F3914B121 签名:  (Landroid/util/SparseArray;Landroid/content/Context;Ljava/util/Map;I)Landroid/util/SparseArray; 函数地址:  0x7fa8203bd5f0 模块名:  null
类:  com.tencent.turingfd.sdk.xq.TNative$aa 方法:  i87_F4D9D65F3914B121 签名:  (Landroid/util/SparseArray;Landroid/content/Context;Ljava/util/Map;Ljava/lang/Object;Ljava/lang/Object;)Landroid/util/SparseArray; 函数地址:  0x7fa8203bd540  模块名:  null
类:  com.tencent.turingfd.sdk.xq.TNative$aa 方法:  j87_F4D9D65F3914B121 签名:  ()Ljava/lang/String; 函数地址:  0x7fa8203bd490 模块名:  null
类:  com.tencent.turingfd.sdk.xq.TNative$aa 方法:  k87_F4D9D65F3914B121 签名:  ([B)[B 函数地址:  0x7fa8203bd3e0 模块名:  null
RegisterNatives method counts:  1
类:  com.tencent.turingfd.sdk.xq.TNative$aa$bb 方法:  onServiceConnected 签名:  (Landroid/content/ComponentName;Landroid/os/IBinder;)V 函数地址:  0x7fa8203bd330 模块名:  null
RegisterNatives method counts:  4
类:  com.tencent.image.ApngImage 方法:  nativeGetNextFrame 签名:  (JJLandroid/graphics/Bitmap;[I)J 函数地址:  0x7fa8203bd120 模块名:  null
类:  com.tencent.image.ApngImage 方法:  nativeStartDecode 签名:  (Ljava/lang/String;[II)J 函数地址:  0x7fa8203bd070 模块名:  null
类:  com.tencent.image.ApngImage 方法:  nativeFreeFrame 签名:  (J)V 函数地址:  0x7fa82a461f90 模块名:  null
类:  com.tencent.image.ApngImage 方法:  nativeFreeImage 签名:  (J)V 函数地址:  0x7fa82a461ee0 模块名:  null

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

漁滒 发表于 2024-5-8 16:16
可能是:1.版本不同。2.时机不同。
wasm2023 发表于 2024-5-8 16:17
正己 发表于 2024-5-9 13:47
试一下我这课里的脚本,以spawn的方式去挂起
《安卓逆向这档事》十七、你的RPCvs佬的RPC
https://www.52pojie.cn/thread-1892127-1-1.html
(出处: 吾爱破解论坛)
 楼主| 还在学习呢 发表于 2024-5-10 17:40
正己 发表于 2024-5-9 13:47
试一下我这课里的脚本,以spawn的方式去挂起
《安卓逆向这档事》十七、你的RPCvs佬的RPC
https://www.52p ...

大佬脚本很好用,不会出现null了,但还是遍历不到想要的so模块(确认so被调用了),请教下有没有可能被加固了之类的原因

点评

你ida静态分析看一下,有可能  详情 回复 发表于 2024-5-10 18:16
正己 发表于 2024-5-10 18:16
还在学习呢 发表于 2024-5-10 17:40
大佬脚本很好用,不会出现null了,但还是遍历不到想要的so模块(确认so被调用了),请教下有没有可能被加 ...

你ida静态分析看一下,有可能
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-12-14 16:57

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表