首页
论坛
专栏
课程

[原创]SO Hook技术汇总

2015-1-3 22:14 82660

[原创]SO Hook技术汇总

2015-1-3 22:14
82660
小弟祝各位坛友新年快乐,身体健康,工作顺利
---------------------------------------------------------------------------------------
SO HOOK技术汇总:(限于水平,难免会有错误、疏漏之处,请各位大牛斧正)
1. 导入表(GOT)HOOK
    最常见也最简单,为了体系的完整性,稍微再啰嗦下    

2. ARM Inline hook
    ARM Inline 的原理想必各位坛友都知道,就不啰嗦了。 由于ARM有ARM指令和Thumb(1、2)指令集,Inline的实现比较麻烦。鉴于在论坛没有找到比较详细的帖子介绍,这里讨论了关于这两种指令集Inline hook的实现的细节部分。

3. 基于Android linker的"导出表"HOOK
   ELF文件格式并没有PE那种导出表,但也可以实现类似的导出表HOOK。其复杂度和导入表相当,其效果也比较理想(性价比较高^_^)

由于排版水平太烂,直接上PDF吧。
附件包含三个:
1. HookSOLibrary 这三种HOOK的实现库(如果发现BUG,麻烦各位坛友发邮箱告知我下吧,最好把汇编和opcode附上,ThomasKingNew@hotmail.com)
2. SubstrateTest  PDF中的图来源于此,限于篇幅,有些细枝末节的地方并未提出,可动态调试这个APK查看。
3. SO hook技术汇总.pdf 文档

[推荐]看雪企服平台,提供安全分析、定制项目开发、APP等级保护、渗透测试等安全服务!

上传的附件:
上一主题 下一主题
最新回复 (105)
淡然出尘 2015-1-3 22:26
2
0
赞 前排支持~
安于此生 34 2015-1-3 22:27
3
0
收藏一份,感谢
曹无咎 1 2015-1-3 22:36
4
0
强势围观中。。。
bjhrwzh 2015-1-3 22:42
5
0
这个强大啊~~~
cvcvxk 10 2015-1-3 22:55
6
0
顶~
好帖子不多了~
JackJoker 2015-1-4 00:12
7
0
好帖子,支持一个
注册不成 2015-1-4 01:22
8
0
新年快乐
mingxuan三千 2015-1-4 08:54
9
0
顶楼主 学习
熊猫正正 9 2015-1-4 08:59
10
0
顶,谢谢分享
Nermor 1 2015-1-4 08:59
11
0
so cool!
IamHuskar 4 2015-1-4 09:26
12
0
COOL COOL
outdoxl 2015-1-4 09:28
13
0
up 谢谢分享
jimdlf 2015-1-4 09:36
14
0
回复一下 以便不时之需
peterchen 2015-1-4 10:18
15
0
TK,牛X...
cqzhou 2015-1-4 10:26
16
0
╮(╯▽╰)╭ 跟不上大牛的节奏啊
wfgfw 2015-1-4 10:27
17
0
赞一个~
万抽抽 2 2015-1-4 10:58
18
0
好顶赞!
handsome枫雪 2015-1-4 11:05
19
0
感谢LZ分享~~~~~~~~~
boyliang 5 2015-1-4 11:23
20
0
好久没有干货了,顶!
曹操abc 2015-1-4 11:24
21
0
very nice!!!
OnlyEnd 2015-1-4 11:32
22
0
王总元旦都不休息哇~    满满的都是干货!  赞
ThomasKing 6 2015-1-4 15:06
23
0
名字实在太长,就简写了。。。 借TK大神的名气了。
ThomasKing 6 2015-1-4 15:07
24
0
额,元旦出去跨年了,太危险了。。。
qqtianqi 2015-1-4 16:41
25
0
收集一下!!!
huangyalei 2015-1-4 17:44
26
0
收藏学习!
fanfu 2015-1-4 21:07
27
0
TK在android版发的全是干货,学习了,多谢分享
coltor 2 2015-1-4 21:24
28
0
不错,支持~
kwanhua 2015-1-4 21:32
29
0
最近就在学习hook,收藏了
Ericky 6 2015-1-4 23:01
30
0
谢谢king 总分享  正在研究so inject~
birk 2015-1-5 20:36
31
0
楼主真酷啊
ODPan 4 2015-1-6 00:49
32
0
mark
huixingabc 2015-1-6 08:24
33
0
谢谢 收藏了
jeffycf 2015-1-6 14:52
34
0
新年快乐。谢谢分享
zhanggary 2015-1-6 15:15
35
0
逆向熟悉的且有时间能力的可以私聊我
dlgt 2015-1-6 16:07
36
0
这个正需要,谢谢!
leepupu 2015-1-8 20:59
37
0
如果早點看到我就不會自己寫個蠢方法啦
之前做了 thumb inline hook 將絕對地址分多行指令載入寄存器 在push rx, pop pc
花了十幾行還跳不回來...
ThomasKing 6 2015-1-8 22:03
38
0
额,随便怎么跳,只要堆栈平衡能跳回来就行
leepupu 2015-1-8 22:20
39
0
主要是覆盖掉了区域转跳指令
不知道如何补跑盖掉的那段

不过大大的 BLX PC 真是点醒我也
可以减少许多被吃掉的指令
ThomasKing 6 2015-1-8 23:01
40
0
额,小菜一枚。。。 如果纯Thumb去Inline hook的话,也是可以做,不过有点绕。。。切ARM比较简单点吧
xdnice 2015-1-9 08:41
41
0
收藏下。。。
jeffly 2015-1-9 09:04
42
0
不错,谢谢分享
Tensm 1 2015-1-9 16:36
43
0
谢谢分享,好人一生平安
koflfy 1 2015-1-9 19:27
44
0
mark
starup 2015-1-9 21:12
45
0
好东西,感谢楼主分享,只搞过got表的hook,inline没做过,只听说过思路。
mdjshifan 2015-1-11 11:22
46
0
arm的inline实现了,这个thumb就是没弄好,IDA译码错误问题,4字节对齐问题,谢谢楼主
mdjshifan 2015-1-11 11:23
47
0
通过你的文章我把thumb inlinehook问题解决了,非常感谢
mdjshifan 2015-1-11 11:43
48
0
虽然没给libTKHooklib.so的源码但是思路足矣
ThomasKing 6 2015-1-11 13:31
49
0
个人觉得有了思路,自己再实现一把,才能弄懂,学到东西。
叹小白 2015-1-12 13:30
50
0
好东西。。谢谢。。
游客
登录 | 注册 方可回帖
返回