脱壳视频打包集android逆向手册cydia substrate框架.pdfVIP

  • 23
  • 0
  • 约3.08万字
  • 约 77页
  • 2021-03-05 发布于北京
  • 举报

脱壳视频打包集android逆向手册cydia substrate框架.pdf

Cydia Substrate 框架 Android HOOK 工具 Cydia Substrate 使用详解 Cydia Substrate 是一个代码修改平台。它可以修改任何主进程的代码,不管是用 J a 还是 C/C++ (native 代码)编写的。而 Xposed 只支持 HOOK app_process 中的 j a 函数,因此 Cydia Substrate 是一款强大而实用的 HOOK 工具。 官网地址: Demo 地址: 官方教程: SDK 地址: Substrate 几个重要 API 介绍 MS.hookClassLoad 函数原型:void hookClassLoad(String name, MS.ClassLoadHook hook); 该方法实现在指定的类被加载的时候发出通知。因为一个类可以在任何时候被加载,所以 Substrate 提供了一个方法用来检测用户 感兴趣的类何时被加载。 参数 描述 name 包名+类名,使用 j a 的.符号 hook MS.ClassLoadHook 的一个实例,当这个类被加载的时候,它 的 classLoaded 方 被执行。 MS.hookMethod 该 API 允许开发者提供一个回调函数替换原来的方法,这个回调函数是一个实现了 MS.MethodHook 接口的对象,是一个典型的 内部类。它包含一个 invoked 函数。 函数原型: void hookMethod(Class _class, Member member, MS.MethodHook hook, MS.MethodPointer old); void hookMethod(Class _class, Member member, MS.MethodA ration a ration); 参数描述 (一) 参数 描述 _class 加载的目标类,为 classLoaded 传下来的类参数 通过反射得到的需要 hook 的方法(或构造函数). 注意: HOOK 字段 (在编 member 译的时候会进行检测). MS.MethodHook 的一个实例,其包含的 invoked 方 被调用,用以代替 hook member 中的代码 (二) 参数 描述 _class 加载的目标类,为 classLoaded 传下来的类参数 通过反射得到的需要 hook 的方法(或构造函数). 注意: HOOK 字 member 段 (在编译的时候会进行检测). An instance of MS.MethodA ration whose boxedinvoked method will be called instead of member. This a ration instance will also be filled in using information from the original implementation, allowing you to use invoke to call the original method implementation. 建议开发者使用第二种方式,这种方式使用起来简单并且很少出错,不需要一个单独的 MS.MethodPointer 类实例。 使用方法 下面以官网的一个实例来说明 cydia substrate 的使用方法。该实例是实现将多个接口组件颜色修改为紫罗兰色。 需要安装: 步骤一:创建一个空的 Android 工程。由于创建的工程将以插件的形式被加载,所以不需要 activity。将SDK 中的 substrate- api.jar 到 project/libs 文件夹中。 步骤二:配置 Manifest 文件

文档评论(0)

1亿VIP精品文档

相关文档