首页
社区
课程
招聘
[原创]Cydia Substrate Inline Hook若干bug修复方案
2015-2-13 10:45 37561

[原创]Cydia Substrate Inline Hook若干bug修复方案

2015-2-13 10:45
37561
收藏
点赞1
打赏
分享
最新回复 (33)
雪    币: 188
活跃值: (167)
能力值: ( LV3,RANK:30 )
在线值:
发帖
回帖
粉丝
cacorothuo 2015-3-12 17:02
26
0
哦。你说 AAssetManager_open 函数啊。呵呵。。。
雪    币: 465
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
dosvip 2015-4-3 00:34
27
0
感谢分享,下载学习
雪    币: 3
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
Bobinson 2015-5-31 11:17
28
0
感谢您的教导。请问在哪里可以找到cydiasubstrate source code / update?
雪    币: 281
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
starwalker 2015-7-30 12:25
29
0
楼主厉害,最近正好在研究substrate,多谢分享
雪    币: 11
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
kilybeer 2016-2-29 22:35
30
0
比较好奇,文档中的代码表示什么意思,
thumb[0] = T$bx(A$pc);
thumb[1] = T$nop;
arm[0] = A$ldr_rd_$rn_im$(A$pc, A$pc, 4-8);
arm[1] = reinterpret_cast<uint32_t>(replace);
雪    币: 11
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
kilybeer 2016-2-29 22:50
31
0
最少8字节跳转,下面的解释好理解多了。
应该是8个字节吧。
因为要实现任意位置的跳转,无法直接寻址,所以只能使用间接寻址了。
比如 0x12345678 这种,立即数不包含在指令中,而放在代码段(通常是函数的结束之后),装入的指令为 LDR Rd, [PC, #offset],即立即数是位于以 PC为基址加上一个偏移量的地址处。
所有应该修改了8个字节。
雪    币: 3
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
jksalfjls 2016-8-25 00:40
32
0
pdf中的代码:
thumb[0] = 0xF85F;
thumb[1] = 0xF000;

不知道作者这2条opcode是哪里得到的。
用arm-linux-androideabi-as汇编器编译该条"ldr pc, [pc, #-4]"指令,分别以arm和thumb模式得到如下结果。thumb不识别,arm的opcode与作者所写不一致
arm32:
04F01FE5      ldr pc, [pc, #-4]
thumb:不识别
雪    币: 6
活跃值: (841)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
路易 2016-8-29 17:45
33
0
楼主还在吗?
雪    币: 2649
活跃值: (1541)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
hhhaiai 2016-9-25 18:53
34
0
目的是什么啊  完全不懂
游客
登录 | 注册 方可回帖
返回