码迷,mamicode.com
首页 > 移动开发 > 详细

Android Root相关

时间:2015-09-28 01:29:37      阅读:541      评论:0      收藏:0      [点我收藏+]

标签:

# 标签: 读博客


本文精彩摘录:

1. 手机系统运行在普通用户权限下的,用户无法操作系统中的文件和数据。

2. 实现root的原理大致为:利用系统漏洞,将su可执行文件复制到Android系统的/system分区下(例如:/system/xbin/su) 并用chmod命令为其设置可执行权限和setuid权限

3. 防止其(su文件)被未经授权的应用所调用,通常还有一个Android应用程序来管理su程序的行为


本文转自: http://blog.csdn.net/zhgxhuaa/article/details/38043015


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的获取不同手机利用的漏洞不同。这里搜集了几个常见的用于获取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

http://www.saurik.com/id/17

http://www.saurik.com/id/18

http://www.saurik.com/id/19


Root后的应用

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、  修改手机字体



转载之后的总结:

关于su,其实这篇文章远没有谈完,然而就我现在的,目前的linux基础知识,我大概明白,应该这样,

先去搞一个su文件,自己写还是在哪弄,不清楚,但是要push到手机的可执行目录 

下面,大概是这样的步骤

adb remount    #(这是先让只读的设备可写,不行的话试试 adb reboot disemmcwp)
adb push su /system/bin/    # (push到手机可执行目录)
adb shell                   #(切入shell中改变文件权限, 提示符应该是$)
cd  /system/bin/
chmod 777 su
su          # (试试效果,因为此时在shell环境,提示符变成#)

(个人认为不要刻意一次性想把一个问题弄得很明白,那样你很快就忘记了,要经常性反复。相信我下次再转载一篇相关类型的,然后自己try i try就大致明白了)

Android Root相关

标签:

原文地址:http://my.oschina.net/wizardmerlin/blog/511745

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!