由于自己一直以来对手机管理方面的东西比较感兴趣,加上最近以来老大的驱动,所以决定研究整理一下root相关技术(不局限于root)。手机Root是一门大学问,root的招数各有不同。Root权限的利用同样也是一门学问。接下来将学习研究一下Android中root相关技术。如何取得root权限不是我的特长,所以接下来的整理中,将重点研究整理在获取root权限以后,可以做那些事情,已达到通过root权限优化用户体验的目的。
Root本身是指Linux系统的root帐户,该帐户拥有整个系统至高无上的权利,系统中的所有对象它都可以操作,对于Android手机用户来说的Root是指拥有Root权限,一般情况下,手机厂商出于安全考虑会关闭手机的Root权限,手机系统是运行在普通用户权限下的,用户是无法操作系统中的文件与数据的。因此,目前获取root的方法都是利用系统漏洞实现的。而不同手机厂商可能存在的漏洞不同,也就导致了不同手机root的原理可能不同。不过,不管采用什么原理实现root,最终都需要将su可执行文件复制到Android系统的/system分区下(例如:/system/xbin/su
)
并用chmod命令为其设置可执行权限和setuid权限。为了让用户可以控制root权限的使用,防止其被未经授权的应用所调用,通常还有一个Android应用程序来管理su程序的行为。root的基本原理就是利用系统漏洞,将su和对应的Android管理应用复制到/system分区。
目前最广泛利用的系统漏洞是zergRush,该漏洞适用于Android2.2-2.3.6的系统,其它的漏洞还有Gingerbreak, psneuter等等。
Root的获取不同手机利用的漏洞不同。这里搜集了几个常见的用于获取root权限的漏洞。
http://blog.csdn.net/hikame/article/details/8713297
http://www.kanxue.com/bbs/showthread.php?t=175129
http://blog.csdn.net/androidsecurity/article/details/13293789
http://security.tencent.com/index.php/blog/msg/26
1、 安装/卸载:
A、 静默安装/卸载
B、 秒装/秒卸载
C、 卸载应用保存数据
D、 系统内置应用卸载
E、 卸载后清除残留数据
F、 批量静默安装/卸载
2、 数据备份:
A、 应用安装包的备份
B、 应用数据的备份
C、 系统数据备份
3、 垃圾清理,包括:
A、 内存加速:清理正在运行的进程
B、 限制后台启动
C、 应用卸载后清理残留数据
D、 应用缓存(data目录下的)
E、 一键加速
4、 控制通知栏:
A、 对第三方应用的通知进行拦截和清理
B、 主要实现原理为:进程注入
5、 开机自启动:
A、 通过设置优先级和接收开机广播启动Service,监控到其他开机启动服务则干掉
B、 进程注入。
6、 屏蔽广告:
A、 host黑名单方式(Adblock Plus为代表)
B、 进程注入方式(手机金山毒霸为代表)
7、 省电控制:
A、 控制CPU频率
B、 后台唤醒控制
C、 锁屏时杀掉后台常驻Service等。
8、 联网控制:
A、 原理:iptable
B、 控制应用在WiFi和移动互联网时的网络访问情况
9、 系统伪装:
A、 伪装手机型号
B、 伪装地理位置
C、 伪装运营商
10、 应用权限控制
A、 禁用应用的某些权限
B、 监控第三方应用权限
11、 获取和修改系统信息
A、 获取系统配置信息
B、 获取dump等log信息
C、 修改手机开关机动画
D、 修改手机开关机铃声
E、 修改手机字体
原文地址:http://blog.csdn.net/zhgxhuaa/article/details/38043015