跳转到内容
彼岸论坛
欢迎抵达彼岸 彼岸花开 此处谁在 -彼岸论坛

[问与答] frida rcp 调用 android app 中的函数无正常返回


小天管理

已推荐帖子

java code by jadx:

public void getUnifiedSign(...) {
...
   try {
...
      //This interface cannot be found in the implementation class in Jadx, and it should be in the.so package.
      HashMap<String, String> securityFactors = this.mUnifiedSign.getSecurityFactors(hashMap3);
      if (securityFactors != null && !securityFactors.isEmpty()) {
         return securityFactors;
      }
      TBSdkLog.e(...);
      return null;
...
   } catch (Throwable th) {
      TBSdkLog.e("mtopsdk.InnerSignImpl", getInstanceId() + " [getUnifiedSign]get sign failed exception ,appKeyIndex=" + this.mtopConfig.appKeyIndex + ",authCode=" + this.mtopConfig.authCode, th);
      return null;
   }
}

hook.js

rpc.exports = {
    sign:function() {
        Java.perform(function() {
            reSign0();
            sign0();
        })
    }
};
function reSign0() {
    //Here, the getUnifiedSign is overridden, and the input and output parameters are printed.
}
function sign0() {
...
    let resp = isi.getUnifiedSign(p1, p2, p3, p4, p5, p6);
    //the resp is null
...
}
}

Frida RCP 调用 getUnifiedSign 总是返回 null ,确认代码已经到达了这个 getSecurityFactors ,但可能直接报错导致返回 null 。但是如果是报错,应该会走到下面的 catch ,并且会输出日志,但是没有日志。日志 hook 已经验证过没有问题,当传一些不正常参数时 hook 的日志能打出来。 敢问如何排查这个问题?和这个鬼杠上了,参考过其它帖子的旧版本弄过但也没成功,还是弄这个最新版的。

意见的链接
分享到其他网站

加入讨论

您现在可以发表并稍后注册. 如果您是会员,请现在登录来参与讨论.

游客
回复主题...

×   粘贴为富文本.   粘贴为纯文本来代替

  只允许使用75个表情符号.

×   您的链接已自动嵌入.   显示为链接来代替

×   您之前的内容已恢复.   清除编辑器

×   您无法直接粘贴图片.要从网址上传或插入图片.

  • 游客注册

    游客注册

  • 会员

    没有会员可显示

  • 最新的状态更新

    没有最新的状态更新
  • 最近查看

    • 没有会员查看此页面.
×
×
  • 创建新的...