一,介绍
Xposed 框架是一套开源的,在 Android 高权限模式下运行的框架服务,它可以在不修改 App 源码的情况下影响程序运行(修改系统)。基于 Xposed,可以制作出许多功能强大的模块,且在功能不冲突的情况下同时运作。
其实现原理如下:
- Xposed 框架的原理是通过替换系统级别的 /system/bin/app_process 程序控制 zygote 进程,使得 app_process 在启动过程中加载 XposedBridge.jar,这个 jar 包里面定义了对系统方法、属性的一系列 Hook 操作,同时还提供了几个 Hook API 供我们编写 Xposed 模块使用。在编写 Xposed 模块时,引用 Xposed 提供的几个 Hook 方法就可以实现对系统级别任意方法和属性的修改了。
历史版本变迁:
自原版Xposed框架为安卓平台的注入提供了统一规范以来,安卓玩机进入了一个全新的时代。而在时间变迁中,原版Xposed开发停止,新的框架逐渐接替其位置。
EdXposed框架在高版本安卓上几乎完全取代了原版Xposed的地位,同时也有梦境这个历史较短的新兴框架。与此同时,太极、应用转生、Xpatch等虚拟框架通过修改应用的方式实现了无需root的注入,将Xposed带给了无root的设备。
LSPosed是基于EdXposed开发的半个新框架,它的出现主要由于EdXposed的以下现状:
-
主要维护者solohsu是一只老鸽子,长期没有写新的代码。
-
EdXposed在MlgmXyysd的主导下,倾向于保持与原版Xposed框架的兼容性、行为一致性,存在大量历史包袱。
-
EdXposed管理器没有很好地适应当前Xposed界的发展情况,允许用户进行一些可能给手机带来卡顿的操作。
简单来说,LSPosed相比EdXposed,区别主要体现在:
-
精简,LSPosed去除了95%普通用户用不到的功能
-
强制白名单,启用模块必须要勾选对应的注入应用。
-
即时模块列表,不用重启手机,直接重启软件即可。
-
冷启动快(开机速度),秒杀Edxposed
二,LSPosed安装
LSPosed 框架是基于 riru 框架开发的,因此需要先安装 riru 框架:
https://github.com/RikkaApps/Riru/releases
然后再刷入LSPosed框架:
https://github.com/LSPosed/LSPosed/releases
这里有两种zip包可选:Zygisk-LSPosed和Riru-LSPosed,更推荐Zygisk-LSPosed:
下载以上zip文件后,通过adb传到手机中,然后在Magisk中点击从本地安装,直接安装即可:
问题:LSPosed无图标
刷入成功后,就可以看到 LSPosed 的图标,如果没有出现的话,就去手机的 /data/adb/lspd/
目录下找apk包,然后再点击安装即可。
问题:LSPosed未激活
正常安装完LSPosed会直接激活,如果LSPosed显示未激活,请点击 图1 中Magisk安装,根据步骤点击安装,之后LSPosed就可以激活了。
三,安装Xposed模块
安装模块的流程都是一样的,这里以JustTrustMePlus.apk
为例:
将 JustTrustMePlus.apk
安装到手机,跟安装其他app一样,安装成功后,在LSPosed的模块列表中可以看到 JustTrustMe
,然后启用即可:
我在自己的专栏【Android 逆向进阶】中写有更多关于Android 逆向的进阶内容,欢迎订阅阅读。