乐固官方问题描述模板:
1、小德通+com.idcvideo.xiaodetong【重要】
2、安卓6.0手机,进入应用页面后,加载业务so库后应用闪退【非常重要】
3、安卓6.0手机非必现(如需要登录,提供登录账号)【非常重要】
4、765871277(最好是QQ 方便沟通 快速解决问题)【重要】
5、目前只有加固后的apk(至少要提供加固后的apk)【非常重要】
6、日志文件见附件【重要】
7、问题复现环境:华为手机 MAL-AL10 安卓6.0 【非常重要】
乐固加固前后的apk包内。对比后很明显的看到,classes.dex文件,大小已经发生了很大的变化。同时多出了tencent_stub文件。猜测,classes.dex包是编译后的Android可执行,运行时加载。在65536个方法时,Mulitudex我们都是知道的,之前看《2018美团技术年报》,美团移动团队用python筛选方法,将常用方法放到一个dex文件中,减少ART切换dex的频率。
腾讯的乐固加固,大概是在dex文件中插入tencent_stub引用,同时对原dex内部的方法进行篡改,避免dex2-jar的反编译。这个做法的风险,就是动态加载失败。我觉得是这样,Android6.0是ART转正的版本,业务的so库在Android6.0机子出现问题。不加固的包没有so库问题。
另外说下乐固对签名的处理,我不认为乐固真的如简介中说,只在本地运行签名。我认为是有后台长传云端的,只是做的比较隐秘。
加固后启动崩溃,可查询应用加固后是否重签名并且与加固前签名保持一致。
——如何查看apk的签名信息?安装好java,并配置环境变量。在cmd中执行:keytool -printcert -jarfile *.apk即可看到apk的签名MD5字段信息。确认加固前后apk的签名信息是否一致。
移动应用安全MS 2019/7/31 18:20:44
提供下复现的操作步骤哈,例如是否需要登录,登录后如何操作,点击哪步出现闪退
您使用的是免费版乐固吗?目前免费版乐固不支持实时人工服务,您的问题和信息会提交技术测试并定位,但是需要排期解决的
您自查过加固后签名信息与加固前保持一致了么?
——如何查看apk的签名信息?安装好java,并配置环境变量。在cmd中执行:keytool -printcert -jarfile *.apk即可看到apk的签名MD5字段信息。确认加固前后apk的签名信息是否一致。