首页
社区
课程
招聘
[原创]Android杂文
发表于: 2018-1-30 17:15 8385

[原创]Android杂文

2018-1-30 17:15
8385
辞了工作,近期不太忙了,打算抽出时间写下文章,先列个大纲提醒下自己。

1.进程注入:
      @1:动态进程注入;不修改系统,不影响系统ota升级,需要root权限,主体代码和思路参考libinject,主要介绍android7.0,8.0系统上的适配,zygote进程注入解决方案,如何绕过selinux,如何绕过kingroot,360等自带防御的软件,x86,x86_64的适配和注意事项等。
      @2:静态进程注入;参考xposed,修改系统文件,需要root或者刷机,如xposed替换 app_process,或其他通过修改elf表,或一些病毒类替换liblog.so等,主要介绍兼容性适配,解决分区校验。

2.在完成进程注入后,如何写一个hook框架(java层),包括架构设计(非一次定型,实践中逐步确定),性能考量,接口的制定 (如提供给第三方调用) ,后期维护扩展。
      @1: dvm, 主体代码和思路参考xposed,主要介绍解决兼容性适配,如 jit;基于动态进程注入如何修改,打通接口(比较简单,代码说明)。
      @2:art,主体代码和思路参考yahfa,主要介绍兼容性适配,arm64(作者已支持),x86_64适配,5.0-5.1系统注意事项,绕过内联优化的几种方式,zygote及特殊进程中的注意事项。
      @3:binder,用于定义了协议(aidl)的远程服务的hook,分为服务端hook,替换binder,客户端hook,动态代理。以及用于hook框架的通信。

3.framework层部分代码追踪解答(更多的是自己的心得),主要包括文件io,位置服务(gps流程,系统提供的网络定位,融合定位,wifi、基站定位;ip定位解决思路,不完美),system服务和phone进程相关代码详解等。
基于位置服务,system服务和phone等可以实现模拟位置。
基于 system服务和phone和hook框架实现手机硬件信息的修改(如imei,序列号,cid等),系统信息的修改(如系统定制商,内核版本等),手机卡信息的修改(如imsi,手机号等),应用的隐藏,刷量技巧,自动化等。
基于io和hook实现隐藏root,隐藏应用等。

4.插件化开发,多开适配(延期,因为没做整理)。

5.和开发逆向联系不太紧密的部分,如编译rom,rom移植(无源码同cpu平台移植;源码移植,叫修改编译更合适),刷机注意事项,recovery的移植汉化,自实现基于framebuffer的recovery,bl(uboot,lk的移植,编译)略讲,我也不是很熟悉,bl解锁,root,改串号,救砖等。

以上列个大概,具体动笔时间不能准确定下,抽时间会按顺序写下来。

[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课

收藏
免费 2
支持
分享
最新回复 (24)
雪    币: 6103
活跃值: (1207)
能力值: (RANK:30 )
在线值:
发帖
回帖
粉丝
2
期待~
2018-1-30 17:41
0
雪    币: 44229
活跃值: (19965)
能力值: (RANK:350 )
在线值:
发帖
回帖
粉丝
3
期待文章~
2018-1-30 22:01
0
雪    币: 440
活跃值: (968)
能力值: ( LV3,RANK:30 )
在线值:
发帖
回帖
粉丝
4
期待,先收藏
2018-1-30 22:05
0
雪    币: 3121
活跃值: (1609)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
5
+1
2018-1-31 09:24
0
雪    币: 244
活跃值: (25)
能力值: ( LV2,RANK:15 )
在线值:
发帖
回帖
粉丝
6
期待+1
2018-1-31 09:27
0
雪    币: 6729
活跃值: (3902)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
7
期待ing
2018-1-31 09:35
0
雪    币: 5008
活跃值: (1147)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
8
关注,期待ing
2018-1-31 09:42
0
雪    币: 222
活跃值: (12)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
9
期待.....
2018-2-2 15:41
0
雪    币: 3429
活跃值: (1551)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
10
mark  +1!
2018-2-3 15:32
0
雪    币: 36
活跃值: (1021)
能力值: ( LV3,RANK:30 )
在线值:
发帖
回帖
粉丝
11
mark
2018-2-3 18:52
0
雪    币: 12584
活跃值: (3563)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
12
期待.....
2018-2-3 20:35
0
雪    币: 6818
活跃值: (153)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
13
2018-2-3 23:01
0
雪    币: 2246
活跃值: (85)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
14
期待,先收藏
2018-2-9 17:21
0
雪    币: 102
活跃值: (1845)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
15
mark
2018-2-9 17:47
0
雪    币: 20570
活跃值: (3790)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
16
期待。。。。。。
2018-2-9 18:25
0
雪    币: 2719
活跃值: (1569)
能力值: ( LV3,RANK:30 )
在线值:
发帖
回帖
粉丝
17
期待了
2018-2-9 18:34
0
雪    币: 14471
活跃值: (5718)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
18
  @1:动态进程注入;不修改系统,不影响系统ota升级,需要root权限.
我想说的是,
1、只要root了就不能OTA升级,而不是不修改系统就不影响OTA升级。(其实只要root了就相当于修改了系统)
2、如果都要root权限,你这个所谓动态修改和xposed静态修改并没有本质区别,其实xposed也可以动态修改 app_process,只不过没必要,还不如静态修改。(你的这个所谓动态修改也还不如直接静态修改)。
3、Xposed在android7.0,8.0等版本已不需要root了。
最后于 2018-11-8 08:48 被tDasm编辑 ,原因:
2018-11-8 08:39
0
雪    币: 13
活跃值: (372)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
19
期待
2018-11-8 10:49
0
雪    币: 6737
活跃值: (796)
能力值: ( LV13,RANK:393 )
在线值:
发帖
回帖
粉丝
20
tDasm   @1:动态进程注入;不修改系统,不影响系统ota升级,需要root权限.我想说的是,1、只要root了就不能OTA升级,而不是不修改系统就不影响OTA升级。(其 ...
1、推荐你用下miui开发版,官方root不影响ota升级
2、所谓动态就是不修改系统,可理解为修改内存不修改外存储器中的文件,比如系统,应用文件。我也没说动态能取代静态,动态有些是实现不了的,麻烦您不要偏颇,各有长短。
3、本就不需要root,你可以通过recovery、修改boot.img等方式写入系统或者chroot、加入环境变量等,它获取root是为了安装自己
2018-11-8 10:53
0
雪    币: 14471
活跃值: (5718)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
21
1、大部分手机root后就不能ota升级,不能搞个特例。(大胆设想一下:如果miui既然root了都能ota升级,估计修改了系统也不会影响ota升级)
2、只是针对你首贴说的,而不是要你解释什么是动态什么静态。
3、你首贴没说不需要root。既然xposed不需要root就能实现hook及注入,而你的想法又不是更好,那就表示意义不大?或者说你想重复xposed的劳动?
最后于 2018-11-8 11:10 被tDasm编辑 ,原因:
2018-11-8 11:05
0
雪    币: 6737
活跃值: (796)
能力值: ( LV13,RANK:393 )
在线值:
发帖
回帖
粉丝
22
tDasm 1、大部分手机root后就不能ota升级,不能搞个特例。(大胆设想一下:如果miui既然root了都能ota升级,估计修改了系统也不会影响ota升级)2、只是针对你首贴说的,而不是要你解释什么是动态什 ...
你说的都对
2018-11-8 11:47
0
雪    币: 2679
活跃值: (1576)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
23
mk
2018-11-9 18:02
0
雪    币: 1135
活跃值: (2018)
能力值: ( LV5,RANK:75 )
在线值:
发帖
回帖
粉丝
24
期待文章,关于注入那块有些地方还不是很清楚,希望通过楼主文章解惑。。。
2018-11-11 10:58
0
雪    币: 222
活跃值: (11)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
25
mark
2018-11-11 11:17
0
游客
登录 | 注册 方可回帖
返回
//