kali-cc 发表于 2016-8-30 10:34

[Xposed框架]Android Hook 菜鸟入门教程一

Android Hook 菜鸟入门教程一


前言:由于只有一点Java基础,没有搞过Android开发 所以做起来比较难 ,看论坛里大神写的帖子还是有点费力的,所以这是对基础差的同学的帖子。


Android Hook常用的两个框架


1.Cydia substrate框架
参考:
官网
http://www.cydiasubstrate.com
跟着鬼哥学Android java hook系列
http://www.52pojie.cn/thread-288128-1-1.html


2.Xposed框架(本教程使用的)
参考:https://github.com/rovo89/XposedBridge/wiki/Development-tutorial


使用的工具
    Android studio
    夜神模拟器


先给出最基础的,根据官方给出的教程(有坑),下面开始


模块基本开发流程


1.首先创建工程
创建工程android4.0.3(api15,Add No Activity)
最初的样子


2.Adding the Xposed Framework API to your project(添加Xposed Framework API 到我们的工程)
首先到这里下载api-82-sources.jar,api-82.jar
https://bintray.com/rovo89/de.robv.android.xposed/api
放到上图的app/libs目录下
3.修改 AndroidManifest.xml
修改为
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.kali.hook_test_01"
    android:versionCode="1"
    android:versionName="1.0" >
    <uses-sdk android:minSdkVersion="15" />
    <application
      android:label="@string/app_name" >
      <meta-data
            android:name="xposedmodule"
            android:value="true" />
      <meta-data
            android:name="xposeddescription"
            android:value="Hook log test" />
      <meta-data
            android:name="xposedminversion"
            android:value="53" />
    </application>
</manifest>

这里面是要做适当的修改的

4.修改build.gradle


dependencies {
    compile fileTree(dir: 'libs', include: ['*.jar'])
    testCompile 'junit:junit:4.12'
    compile 'com.android.support:appcompat-v7:24.1.1'
}



dependencies {
    provided 'de.robv.android.xposed:api:82'
    provided 'de.robv.android.xposed:api:82:sources'
    testCompile 'junit:junit:4.12'
    compile 'com.android.support:appcompat-v7:24.1.1'
}


5.新建一个类Tutorial


package com.kali.hook_test_01;

import de.robv.android.xposed.IXposedHookLoadPackage;
import de.robv.android.xposed.XposedBridge;
import de.robv.android.xposed.callbacks.XC_LoadPackage.LoadPackageParam;

public class Tutorial implements IXposedHookLoadPackage {
    public void handleLoadPackage(final LoadPackageParam lpparam) throws Throwable {
      XposedBridge.log("Loaded app: " + lpparam.packageName);
    }
}

6.入口assets/xposed_init配置,声明需要加载到XposedInstaller 的入口类:

com.kali.hook_test_01.Tutorial //完整类名:包名+类名

OK 下面基本的都做完了 我们看一下目录结构 很简单

要改的地方 我都用红箭头指出来了 够入门吧
运行一下 查看log日志

成功的实现了这个简单的Hook
打包一下这个工程 有需要的可以下载下

https://yunpan.cn/cM2Gumn835hza (提取码:151c)


kali-cc 发表于 2016-9-1 08:53

不苦小和尚 发表于 2016-8-31 22:39
为什么按照楼主的配置提示报错啊Could not identify launch activity: Default Activity not found
Error...

这个工程项目没有Activity 在Xposed日志里log出来 所以会Error

文远张辽 发表于 2018-10-13 10:54

我也是遇到了这个问题,
10:48        Error running app: Default Activity not found
请问楼主是如何配置run configuration的

fo66 发表于 2016-8-30 10:46

不错啊 谢谢了 好教材{:301_1003:}

leizit 发表于 2016-8-30 10:47

我想问问虚拟机可以安装这个框架吗

KaQqi 发表于 2016-8-30 11:09

突然感觉自己落后于时代了……还是Windows的简单点

KaQqi 发表于 2016-8-30 11:10

我来看看看 发表于 2016-8-30 11:00
感谢分享

hi,又见面了……你天天就这么水贴吗…………咱们真有缘

epjlc 发表于 2016-8-30 13:54

框架是有了……。要是能给几个好的插件和模块就更好了

细叶随想 发表于 2016-8-30 15:49

感谢楼主的分享。。。。。。

kali-cc 发表于 2016-8-30 18:38

leizit 发表于 2016-8-30 10:47
我想问问虚拟机可以安装这个框架吗

这个没用过一直是模拟器和真机 你可以试试

kali-cc 发表于 2016-8-30 18:39

cqr2287 发表于 2016-8-30 11:09
突然感觉自己落后于时代了……还是Windows的简单点

偶遇大神 膜拜

kali-cc 发表于 2016-8-30 18:40

epjlc 发表于 2016-8-30 13:54
框架是有了……。要是能给几个好的插件和模块就更好了

后面会慢慢放出来
页: [1] 2 3 4 5
查看完整版本: [Xposed框架]Android Hook 菜鸟入门教程一