You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Frida证书固定绕过对所有安卓应用均失败的问题求助

解决Frida证书绕过中getPackageInfoNoCheck重载错误的方案

问题根源

你遇到的错误是因为getPackageInfoNoCheck方法存在多个重载版本,原脚本未指定具体调用哪一个,导致Frida无法正确解析方法调用。

修复步骤

直接修改你使用的frida-script.js脚本中对应方法的调用:

  1. 打开脚本,找到调用getPackageInfoNoCheck的代码段(通常在处理应用包信息的部分)

  2. 将原调用代码:

    const packageInfo = pm.getPackageInfoNoCheck(appInfo, null);
    

    替换为指定重载的版本,根据你的Android版本选择:

    • 适配带三个参数的重载(多数高版本Android):
      const packageInfo = pm.getPackageInfoNoCheck.overload('android.content.pm.ApplicationInfo', 'android.content.res.CompatibilityInfo', 'boolean')(appInfo, null, false);
      
    • 适配带两个参数的重载(低版本Android):
      const packageInfo = pm.getPackageInfoNoCheck.overload('android.content.pm.ApplicationInfo', 'android.content.res.CompatibilityInfo')(appInfo, null);
      

    也可以用try-catch同时兼容两个版本,增强脚本通用性:

    let packageInfo;
    try {
        packageInfo = pm.getPackageInfoNoCheck.overload('android.content.pm.ApplicationInfo', 'android.content.res.CompatibilityInfo', 'boolean')(appInfo, null, false);
    } catch (e) {
        packageInfo = pm.getPackageInfoNoCheck.overload('android.content.pm.ApplicationInfo', 'android.content.res.CompatibilityInfo')(appInfo, null);
    }
    
  3. 保存修改后的脚本,重新执行Frida命令:

    frida -U -l ./frida-script.js -f tech.httptoolkit.pinning_demo
    
  4. 执行%resume后,尝试抓包验证证书绕过是否生效。

替代方案

如果不想修改脚本,可以使用已修复该问题的社区维护版证书绕过功能,比如通过Objection执行:

objection -g tech.httptoolkit.pinning_demo run android sslpinning disable

内容的提问来源于stack exchange,提问作者Rehman Ali

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.22 09:09:17