-
-
[原创]利用ROOT权限或Xposed随意对apk进行保资料降级
-
发表于:
2021-1-14 16:32
3937
-
[原创]利用ROOT权限或Xposed随意对apk进行保资料降级
前提:
A.需要先弄好adb 环境
B.手机已root
- 先把要降级的apk push到手机
1 | adb push c:\old.apk / sdcard / old.apk
|
- 执行adb shell
3.su 获取root 权限
su
4.查找原apk文件路径
比如我要降级微信,会找到以为微信包名com.tencent.mm开头的文件夹,复制这个文件夹,
我这里是com.tencent.mm-vC_Ju-mbrC9lmkGcdtinCw==
快速查看包名工具,安利下 -> APK-info
5.强制覆盖原有apk文件
1 | cat / sdcard / old.apk > / data / app / com.tencent.mm - vC_Ju - mbrC9lmkGcdtinCw = = / base.apk
|
6.重启java虚拟机
一般到这里就成功了,如果打不开app,手动再去找到要替换的old.apk再装一下,这个时候应该不会提示不允许降级安装或安装错误之类了,把一些so,odex缓存也刷新一下
再更新一下:
使用xposed插件hook系统使随意降级,注入android进程,核心代码如下(Kotlin),也是以X信举例:
1 2 3 4 5 6 7 8 9 10 11 | / / 原方法签名:private static void checkDowngrade(PackageParser.Package before, PackageInfoLite after)
hookAllMethods( "com.android.server.pm.PackageManagerService.checkDowngrade" ) {
before { m - >
val before = m.args[ 0 ]
val after = m.args[ 1 ]
val packageName = after.get<String>( "packageName" )
if (packageName = = "com.tencent.mm" ) {
after. set < Int >( "versionCode" , before.get< Int >( "mVersionCode" )!! + 1 )
}
}
}
|
checkDowngrade源代码
[招生]科锐逆向工程师培训(2024年11月15日实地,远程教学同时开班, 第51期)