常见xposed框架
xposed--原生
Cydia for Android
magisk--挂载magisk.img
vitrualXposed--双开技术
EXposed --太极
VAEXposed
VirtualHook :VirtualHook 修改 VirtualApp 的核心代码,提供 Hook 注入代码的窗口
VirtrualApp --多开
LEB 的平行空间 --双开大师
360的DroidPlugin、RePlugin --360插件化开发、
滴滴的VirtualAPK
frida -一款基于python + javascript 的hook框架,适用于android/ios/linux/win/osx等平台。
FUPK v3, 早期的一个Android半自动脱壳机。
YAHFA(Yet Another Hook Framework for ART) 是基于 ART 的 Hook 框架,支持 Android 5.0 ~ 9.0 版本的 Java 方法的 Hook 与替代 。而 VirtualHook 则是靠 YAHFA 实现的免 Root Hook。
复制代码
Xposed框架 --原生
Xposed是GitHUB上rovo89大大设计的一个针对Android平台的动态劫持项目,通过替换/system/bin/app_process程序控制zygote进程,使得app_process在启动过程中会加载XposedBridge.jar这个jar包,从而完成对Zygote进程及其创建的Dalvik虚拟机的劫持。与采取传统的Inhook方式(详见Dynamic Dalvik Instrumentation分析这篇本章 )相比,Xposed在开机的时候完成对所有的Hook Function的劫持,在原Function执行的前后加上自定义代码。
Xposed的使用教程--官方rovo89 :https://github.com/rovo89/XposedBridge/wiki/Development-tutorial
Xposed 使用问答--xdadevelopers官方:https://forum.xda-developers.com/xposed/development
https://repo.xposed.info/module/de.robv.android.xposed.installerhttp://www.xposed.pro/index.html
Cydia for Android
https://www.cnblogs.com/xushihai/p/4502703.html
Android Studio Cydia Substrate Hook笔记
https://www.cnblogs.com/gordon0918/p/6763738.html
TurboDex瞬间实现加载Dex的分析
https://note.youdao.com/ynoteshare1/index.html?id=28e62692d218a1f1faef98e4e7724f22&type=note#/
HOOK的框架是
Xpatch
Xpatch用来重新签名打包Apk文件,使重打包后的Apk能加载安装在系统里的Xposed插件,从而实现免Root Hook任意App。
https://github.com/WindySha/Xpatch
magisk框架 --台湾学生出品
magisk的原理。
magisk做的事情是通过boot中创建钩子,进而bind mount构建出一个在system基础上能够自定义替换,增加以及删除的文件系统,实际上并没有对 system 分区进行修改(即 systemless 接口,以不触动 system 的方式修改 system)。所有操作都在启动的时候完成,启动过程中magisk所做的事情:
1.准备阶段,将会把/data/magisk.img挂到/magisk。同时它会遍历magisk目录中的模块是否为启用状态,并且记录。
2.创建骨架system文件系统(由于bind mount 必须要有一个目标文件才能进行bind mount),全部由mkdir 和touch构建
3.将每个标记为启用的/magisk/$MODID/system中文件bind mount到骨架系统
4.执行自定义模块中的脚本
5.遍历骨架中剩余没有被mount的文件,通过真正的system文件进行bind mount。
https://www.xda-developers.com/how-to-install-magisk/
magisk 在xdas上的论坛https://www.xda-developers.com/how-to-install-magisk/
更多介绍:Magisk Manager & Magisk模块推荐(Magisk 框架)https://xposed.xunbug.com/list/8.html
VirtualXposed--双开,免root框架
https://vxposed.com/复制代码
VirtualHookhttps://github.com/rk700/VirtualHook
https://www.52pojie.cn/thread-856216-1-1.html
EXposed--太极
太极(Exposed)使用教程/解释文档https://xposed.appkg.com/2902.html
类太极
https://github.com/skyun1314/haha
文献:skyum大神的我为Xpatch加把米 :https://bbs.pediy.com/thread-256256.htm
frida
Frida是一款基于python + javascript 的hook框架,适用于android/ios/linux/win/osx等平台。Frida的动态代码执行功能,主要是在它的核心引擎Gum中用C语言来实现的。
4.4还是使用10或11版本 不要用12
https://github.com/frida/frida/releases
FUPK v3, Android半自动脱壳机
FUPK v3, 早期的一个Android半自动脱壳机。基于Android 系统 KTU84P (4.4.4_r1)开发,可以脱没被V掉的smali函数。目前市面上的壳基本上都可以过掉,使用前记得先修改一下特征,比如导出的函数接名称,用到的配置文件名称,包名,脱壳魔数等。
https://github.com/F8LEFT/FUPK3
其他资料
JustTrustMe是一个去掉https证书校验的xposed hook插件,去掉之后就可以抓取做了证书校验的app的数据包。JustTrustMe在github的地址位:
https://github.com/Fuzion24/JustTrustMe
安装好模块之后勾选JustTrustMe模块,然后重启手机
Edxposed
非官方 Xposed 框架,支持 8.0 - 9.0
https://github.com/ElderDrivers/EdXposed/tree/sandhook
with VA
免 Root Xposed 环境
https://github.com/ganyao114/SandVXposed
https://bbs.pediy.com/thread-250601.htm
virtualApp
原来作者:lody
商业版好像由ganyao114维护,2019-11-01版本中开始使用sandHook框架
ganyao114 的SandVXposed项目---此项目使用了 VirtualApp 开源版
VirtualApp with SandHook Can load xposed modules without root!
https://github.com/ganyao114/SandVXposed
ganyao114 的SandHook项目 ---SandHook 是作用在 Android ART 虚拟机上的 Java 层 Hook 框架,作用于进程内是不需要 Root 的
https://github.com/ganyao114/SandHook
ganyao939543405的博客
https://blog.csdn.net/ganyao939543405
virtualApp中 动态调试app-Android - hook - 断点动态调试release-apk
whale Hook
ASM框架知识
什么是asm呢?asm是assembly的缩写,是汇编的称号,对于java而言,asm就是字节码级别的编程。
比如 :spring依赖注入为何可以正常工作呢?原因是spring使用了asm框架,可以读取java类字节码
WechatMagician
https://github.com/Gh0u1L5/WechatMagician/issues
Android EagleEye--hook Java 和native 方法
https://github.com/MindMac/AndroidEagleEye
复制代码
An Xposed and adbi based module which is capable of hooking both Java and Native methods targeting Android OS. Related information of the hooked methods will be logged as the output.