Android Hook框架介绍

Android中Hook框架有两个:
1.Cydia Substrate闭源,从苹果开始到Android
2.xposed开源,从android开始到苹果
上课app与所需资源.zip

Cydia Substrate简介

Cydia Substrate框架很强大
使用的一般步骤:
1.安装Cydia Substrate框架
最新版本:com.saurik.substrate_0.9.4010
2.编写Cydia Substrate插件
关键函数:
MS.hookClassLoad
MS.hookMethod
image.png
Cydia Substrate插件编写
0.导入substrate-api.jar
1.设置权限和入口
2.新建一个类实现回调函数
static void initialize()
3.Hook加载类
使用MS.hookClassLoad
4.Hook方法
使用MS.hookMethod

Cydia Substrate案例-Hook手机设置颜色API

导入jar

旧版
image.png
新版
image.png
image.png

关键代码

CydiaHookDemo.zip
image.png
image.png

效果

image.png

adb连不上真机

image.png
image.png

抓取真机屏幕到电脑上

下载地址:http://adakoda.github.io/android-screen-monitor/
ASM_3_00.zip

Xposed简介

image.png
◆Xposed是一个开源的Hook框架
◆其提供了SDK可以写插件,轻松完成Hook
◆写插件的基本步骤:
◆1.创建一个无Activity的工程
◆2.设置清单文件信息
◆3.导入Xposed jar包,并设置为privoder(compile only)
◆4.创建一个主类并实现Xposed中的接口
◆5.重新handleLoadPackage方法
◆6.建立xposed_init文件外部声明主类
◆7.在handleLoadPackage中完善hook代码

image.png
image.png

Xposed Hook案例-Hook获取手机序列号方法

image.png
image.png

image.png
image.png