修改错别字 去除无用文字

This commit is contained in:
czn
2016-10-22 11:35:55 +08:00
parent 0bc9078334
commit 1d1986e4e5
4 changed files with 26 additions and 33 deletions
@@ -1,4 +1,4 @@
前言:为什么要了解系统Activity,Service,BroadCastReceiver,ContentProvider的启动流程,这是一个对于即将理解插件中的四大组件动态注册,占坑的前提,如果不了解的话,那么很难了解插件hook哪此东西,又是如何骗过AMS来启动Activity,Service,BroadCastReceiver,ContentProvider?
前言:为什么要了解系统Activity,Service,BroadCastReceiver,ContentProvider的启动流程,这是一个对于即将理解插件中的四大组件动态注册,占坑的前提,如果不了解的话,那么很难了解插件hook哪些东西,又是如何骗过AMS来启动Activity,Service,BroadCastReceiver,ContentProvider?
本节主要记录系统BroadCastReceiver的注册,发送流程:
@@ -1,5 +1,5 @@
前言:为什么要了解系统Activity,Service,BroadCastReceiver,ContentProvider的启动流程,这是一个对于即将理解插件中的四大组件动态注册,占坑的前提,如果不了解的话,那么很难了解插件hook哪此东西,又是如何骗过AMS来启动Activity,Service,BroadCastReceiver,ContentProvider?
前言:为什么要了解系统Activity,Service,BroadCastReceiver,ContentProvider的启动流程,这是一个对于即将理解插件中的四大组件动态注册,占坑的前提,如果不了解的话,那么很难了解插件hook哪些东西,又是如何骗过AMS来启动Activity,Service,BroadCastReceiver,ContentProvider?
本节主要记录系统Service的启动流程:
先看时序图:
@@ -55,7 +55,7 @@
- a.共享进程:为android提供一个进程运行多个apk的机制,通过API欺骗机制瞒过系统
- b.占坑:通过预先占坑的方式实现不用在mainfest注册,通过一带多的方式实现服务管理
- b.占坑:通过预先占坑的方式实现不用在manifest注册,通过一带多的方式实现服务管理
- c.Hook机制:动态代理实现函数hook,Binder代理绕过部分系统服务限制,IO重定向(先获取原始Object-->Read,然后动态代理Hook Object后-->Write回去,达到瞒天过海的目的)
@@ -66,9 +66,3 @@
下一篇开始分析基本原理中的Hook机制
---
在此输入正文
@@ -1,6 +1,6 @@
在了解系统的activity,service,broadcastReceiver的启动过程后,今天将分析下360 DroidPlugin是如何预注册占坑的?本篇文章主要分析Service预注册占坑,Service占了坑后又是什么时候开始瞒天过海欺骗AMS的?先看下Agenda:
- **AndroidMainfest.xml中概览**
- **AndroidManifest.xml中概览**
- **Service中关键方法被hook时机**
- **startService被hook**
- **瞒天过海流程图**
@@ -121,6 +121,5 @@ android_util_Binder.cpp
![这里写图片描述](http://img.blog.csdn.net/20160821025803184)
到此,不再向下深究,具体想了解可以看Binder机制及IPC相关内容。
所以,到这把第2个问题彻底弄明白了,ServceManager和ServiceManager根本不是一回事。到次,Service的瞒天过海得以实现,接着,就是介绍时候说的那样无需修改源码,多进程,多service等功能。另外ContentProvider及BroadCast原理是类似,不再进行分析。
所以,到这把第2个问题彻底弄明白了,ServiceManager和ServiceManager根本不是一回事。到次,Service的瞒天过海得以实现,接着,就是介绍时候说的那样无需修改源码,多进程,多service等功能。另外ContentProvider及BroadCast原理是类似,不再进行分析。
下篇将开始分析包管理(宿主插件和插件包名有什么规则),APK解析(为什么可以免安装),进程管理(能确保隐藏起来,不会在process轻易被kill)