吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 409|回复: 3
收起左侧

[已解决] apk替换包名后可以运行,但是有些功能会提示key不正确

  [复制链接]
Pammer 发表于 2025-3-8 11:11
本帖最后由 Pammer 于 2025-3-8 21:46 编辑

新人正在尝试搞apk共存,全局替换了包名 com.xxxx.xxx 和 com/xxxx/xxx 后可以安装并且运行,但是使用某些功能时会报错,于是便怀疑程序有包名检测
使用算法助手来查看哪里检测,发现不是位于主程序里,而是在它的一个 sdk 中,并且修改前后的调用堆栈似乎有些区别



编辑:
这个调用堆栈好像是一样的,我看算法助手捕捉到了3个获取应用签名的行为,分别是 getAppMD5Signature getAppSHA1Key getAppHashKey,应该是乱序的


修改前:
[Asm] 纯文本查看 复制代码
01
02
03
04
05
06
07
08
09
10
11
12
13
14
15
16
17
at Y.W.FIrjD.yu.aNnMP.GgD.XposedBridge$LegacyApiSupport.handleAfter(Unknown Source:33)
at org.lsposed.lspd.impl.LSPosedBridge$NativeHooker.callback(Unknown Source:279)
at LSPHooker_.getPackageInfo(Unknown Source:18)
at com.umeng.commonsdk.statistics.common.DeviceConfig.getAppSHA1Key(DeviceConfig.java:2)
at com.umeng.commonsdk.statistics.b.b(EnvelopeManager.java:11)
at com.umeng.commonsdk.statistics.b.a(EnvelopeManager.java:13)
at com.umeng.commonsdk.framework.UMEnvelopeBuild.buildEnvelopeWithExtHeader(UMEnvelopeBuild.java:18)
at com.umeng.commonsdk.internal.d.a(UMInternalManager.java:5)
at com.umeng.commonsdk.internal.UMInternalManagerAgent.sendInternalEnvelopeByStateful2(UMInternalManagerAgent.java:1)
at java.lang.reflect.Method.invoke(Native Method)
at com.umeng.commonsdk.internal.c.workEvent(UMInternalDataProtocol.java:87)
at com.umeng.commonsdk.framework.UMWorkDispatch.handleEvent(UMWorkDispatch.java:5)
at com.umeng.commonsdk.framework.UMWorkDispatch.access$000(UMWorkDispatch.java:1)
at com.umeng.commonsdk.framework.UMWorkDispatch$1.handleMessage(UMWorkDispatch.java:5)
at android.os.Handler.dispatchMessage(Handler.java:106)
at android.os.Looper.loop(Looper.java:193)
at android.os.HandlerThread.run(HandlerThread.java:65)


修改后:
[Asm] 纯文本查看 复制代码
01
02
03
04
05
06
07
08
09
10
11
12
13
14
15
16
17
at I.rkhzNkrZzso.rAQYfUMu.XposedBridge$LegacyApiSupport.handleAfter(Unknown Source:33)
at org.lsposed.lspd.impl.LSPosedBridge$NativeHooker.callback(Unknown Source:279)
at LSPHooker_.getPackageInfo(Unknown Source:18)
at com.umeng.commonsdk.statistics.common.DeviceConfig.getAppMD5Signature(DeviceConfig.java:2)
at com.umeng.commonsdk.statistics.b.b(EnvelopeManager.java:10)
at com.umeng.commonsdk.statistics.b.a(EnvelopeManager.java:13)
at com.umeng.commonsdk.framework.UMEnvelopeBuild.buildEnvelopeWithExtHeader(UMEnvelopeBuild.java:18)
at com.umeng.commonsdk.internal.d.a(UMInternalManager.java:5)
at com.umeng.commonsdk.internal.UMInternalManagerAgent.sendInternalEnvelopeByStateful2(UMInternalManagerAgent.java:1)
at java.lang.reflect.Method.invoke(Native Method)
at com.umeng.commonsdk.internal.c.workEvent(UMInternalDataProtocol.java:87)
at com.umeng.commonsdk.framework.UMWorkDispatch.handleEvent(UMWorkDispatch.java:5)
at com.umeng.commonsdk.framework.UMWorkDispatch.access$000(UMWorkDispatch.java:1)
at com.umeng.commonsdk.framework.UMWorkDispatch$1.handleMessage(UMWorkDispatch.java:5)
at android.os.Handler.dispatchMessage(Handler.java:106)
at android.os.Looper.loop(Looper.java:193)
at android.os.HandlerThread.run(HandlerThread.java:65)


分析了半天实在是晕了,有没有大佬知道这个是怎么一回事?

一些可能有用的信息?




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

ByCool1 发表于 2025-3-8 13:26
应该是校对的apk签名

免费评分

参与人数 1热心值 +1 收起 理由
Pammer + 1 我很赞同!

查看全部评分

howill 发表于 2025-3-8 14:13
有些功能依赖的第三方库是有验证的,看图像是一个统计库,可以把相应的统计功能找到代码屏蔽了试试看

免费评分

参与人数 1吾爱币 +1 收起 理由
Pammer + 1 我很赞同!

查看全部评分

 楼主| Pammer 发表于 2025-3-8 21:46
howill 发表于 2025-3-8 14:13
有些功能依赖的第三方库是有验证的,看图像是一个统计库,可以把相应的统计功能找到代码屏蔽了试试看{:1_91 ...

好吧还真是这样,代码我得慢慢找找…………
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

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

GMT+8, 2025-4-25 10:50

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

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