热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

AndroidHook原理分析Xposedhook原理分析

hook寓意为钩子,在编程中寓意拦截替换。整体逻辑就是将执行的方法拦截执行替换之后再执行回去,各大框架原理不同但是过程类似。XposedXposed框架核心思想

hook寓意为钩子,在编程中寓意拦截替换。

整体逻辑就是将执行的方法拦截执行替换之后再执行回去,各大框架原理不同但是过程类似。

Xposed

Xposed框架核心思想在于将Java层普通函数注册成本地JNI方法,以此来变相实现hook机制

Xposed在对java方法进行hook时,先将虚拟机里面这个方法的Method改为nativeMethod(其实就是一个标识字段),然后将该方法的nativeFunc指向自己实现的一个native方法,这样方法在调用时,就会调用到这个native方法,接管了控制权。在这个native方法中,xposed直接调用了一个java方法,这个java方法里面对原方法进行了调用,并在调用前后插入了钩子,于是就hook住了这个方法。

参考文章

https://blog.csdn.net/zhangmiaoping23/article/details/52572447?locationNum=9&fps=1

https://tech.meituan.com/2018/02/02/android-anti-hooking.html


推荐阅读
author-avatar
377926138_b741aa
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有