首页
社区
课程
招聘
[原创]Android Art Hook 技术方案
发表于: 2015-4-14 00:46 40141

[原创]Android Art Hook 技术方案

2015-4-14 00:46
40141
****公司高层有命,帖子涉及业务要撤掉****

[注意]传递专业知识、拓宽行业人脉——看雪讲师团队等你加入!

收藏
免费 0
支持
分享
最新回复 (35)
雪    币: 97
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
占位mark
2015-4-14 08:09
0
雪    币: 76
活跃值: (13)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
3
梁兄的作品 一定要顶
学习了
2015-4-14 08:56
0
雪    币: 11096
活跃值: (17617)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
4
路过来支持一下楼主的研究
2015-4-14 09:01
0
雪    币: 21
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
5
boy出品  必属精品
2015-4-14 09:12
0
雪    币: 29
活跃值: (499)
能力值: ( LV8,RANK:120 )
在线值:
发帖
回帖
粉丝
6
太屌了!跪顶!
2015-4-14 09:25
0
雪    币: 370
活跃值: (1180)
能力值: ( LV9,RANK:310 )
在线值:
发帖
回帖
粉丝
7
站位前排支持梁哥!
2015-4-14 09:36
0
雪    币: 693
活跃值: (108)
能力值: ( LV5,RANK:60 )
在线值:
发帖
回帖
粉丝
8
不错,支持一下。本质上是ArtMethod对象的动态修改。与腾讯的加壳方案原理是一样的。
2015-4-14 09:36
0
雪    币: 35
活跃值: (139)
能力值: ( LV7,RANK:100 )
在线值:
发帖
回帖
粉丝
9
梁大大,出品必是干活
2015-4-14 10:07
0
雪    币: 26
活跃值: (25)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
10
厉害 mark
2015-4-14 10:21
0
雪    币: 219
活跃值: (52)
能力值: ( LV3,RANK:30 )
在线值:
发帖
回帖
粉丝
11
先膜拜楼主,再膜拜大哥
2015-4-14 11:26
0
雪    币: 257
活跃值: (67)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
12
谢谢分享,路过来看看
2015-4-14 12:05
0
雪    币: 44
活跃值: (35)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
13
发现楼主这个在method_handler中 没有回调函数啊
2015-4-14 12:26
0
雪    币: 11
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
14
感谢分享挺不错的文章
2015-4-14 13:11
0
雪    币: 43
活跃值: (388)
能力值: ( LV9,RANK:140 )
在线值:
发帖
回帖
粉丝
15
分析得很详细,和我的方案差不多的样子。我的方案也是用汇编写一个通用的bridge,然后setNativeMethod。在art里,java的native方法实际上也是要编译成一段native代码,并且由art_quick_invoke_stub调用。我的方案就是用汇编写一段通用的java的native方法的native代码,来实现hook。但是我的方案有个问题,在hook后的方法里若是抛出异常,在异常的poll里产生一个死循环,整个app会死掉。不知道兄台你这方案有没有遇到这个问题。
2015-4-14 14:01
0
雪    币: 463
活跃值: (283)
能力值: ( LV6,RANK:90 )
在线值:
发帖
回帖
粉丝
16
5.x上ArtMethod以及相关联的的类变化太大.而且还有解释器模式.想要通用需要修正的太多.不像dalvik的Method需要的几个成员变量变化不大.
2015-4-14 14:46
0
雪    币: 233
活跃值: (148)
能力值: ( LV9,RANK:210 )
在线值:
发帖
回帖
粉丝
17
我的跑起来目前看很正常
2015-4-14 16:03
0
雪    币: 1353
活跃值: (2336)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
18
贴子没了啊
2015-4-14 16:15
0
雪    币: 69
活跃值: (270)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
msf
19
bing的缓存 还是能看到原文的。  我看看了
2015-4-14 16:23
0
雪    币: 133
活跃值: (587)
能力值: ( LV4,RANK:40 )
在线值:
发帖
回帖
粉丝
20
就是我想要的 看看
2015-4-14 16:25
0
雪    币: 233
活跃值: (148)
能力值: ( LV9,RANK:210 )
在线值:
发帖
回帖
粉丝
21
是的,因为截获entrypoint的思路是通用的,只要找到调用约定。
2015-4-14 16:58
0
雪    币: 2323
活跃值: (4113)
能力值: ( LV12,RANK:530 )
在线值:
发帖
回帖
粉丝
22
只能:呵呵
2015-4-14 17:17
0
雪    币: 341
活跃值: (143)
能力值: ( LV7,RANK:110 )
在线值:
发帖
回帖
粉丝
23
http://blog.csdn.net/L173864930/article/details/45035521

duang......
2015-4-14 18:58
0
雪    币: 941
活跃值: (1264)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
24
thanks for your duang, it's reback!
2015-4-14 19:29
0
雪    币: 3366
活跃值: (1358)
能力值: ( LV4,RANK:40 )
在线值:
发帖
回帖
粉丝
25
Good 我还以为来晚了
2015-4-15 20:39
0
游客
登录 | 注册 方可回帖
返回
//