能力值:
( LV4,RANK:50 )
|
-
-
2 楼
asm
bx addr
?
|
能力值:
( LV2,RANK:10 )
|
-
-
3 楼
嗯,我问的是怎样patch函数头部
我memcpy(func, patch, n)
提示EXC_BAD_ACCESS
|
能力值:
( LV9,RANK:150 )
|
-
-
4 楼
你可以反下substrate插件的hookfunction,他就用的就是inline hook,需要根据地址判断是否为thumb,分别做hook,先进到arm模式,跳转用的是 ldr pc,[pc,#8] 好像。
|
能力值:
( LV2,RANK:10 )
|
-
-
5 楼
[QUOTE=waruqi;1138617]你可以反下substrate插件的hookfunction,他就用的就是inline hook,需要根据地址判断是否为thumb,分别做hook,先进到arm模式,跳转用的是 ldr pc,[pc,#8] 好像。[/QUOTE]
看了,它用的是 ldr pc, [pc, 4-8]
btw: 我没仔细看它源码,我按照原理大概写了个
但是执行patch指令的时候会提示EXC_BAD_ACCESS
分页已经设置为带PROT_EXEC
不知道还有什么问题。。
|
能力值:
( LV9,RANK:150 )
|
-
-
6 楼
我是参照substrate做的,是可以的。设置的也是 PROT_READ | PROT_EXEC 没什么问题。
用的也是 ldr pc, [pc, 4-8],不过thumb和arm分别做了处理。。跳转的时候稍微有点区别,其他没什么。
|
能力值:
( LV2,RANK:10 )
|
-
-
7 楼
谢谢,刚刚发现我写错了点东西。
现在可以了
|
能力值:
( LV2,RANK:10 )
|
-
-
8 楼
在非越狱环境中,能实现 inline hook 么?
|
|
|