[发明专利]安卓user版本在SELinux强制模式下获取root特权的方法及系统在审
申请号: | 201810321612.9 | 申请日: | 2018-04-11 |
公开(公告)号: | CN108595214A | 公开(公告)日: | 2018-09-28 |
发明(设计)人: | 胡艳伟 | 申请(专利权)人: | 北京海杭通讯科技有限公司 |
主分类号: | G06F9/4401 | 分类号: | G06F9/4401;G06F8/41 |
代理公司: | 深圳市科吉华烽知识产权事务所(普通合伙) 44248 | 代理人: | 赵雪佳 |
地址: | 100020 北京市*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 可执行文件 配置文件 强制模式 特权 计算机软件应用 源代码 编译规则文件 安卓系统 时间成本 现场环境 子进程 编译 调试 帮助 | ||
本发明提供一种安卓user版本在SELinux强制模式下获取root特权的方法及系统,属于计算机软件应用领域。本发明方法包括如下步骤:设置两个属性;修改SELinux的编译规则文件,使安卓系统编译时生成特权SELinux配置文件;编写可执行文件,完成SELinux配置文件的切换;编写可执行文件对应的rc文件;修改adbd源代码,使adbd fork出来的子进程shell有root权限。本发明的有益效果为:解决了需要调试等一些特殊问题,在不破坏现场环境的情况下,提供了有力的帮助,大大缩短了时间成本。
技术领域
本发明涉及计算机软件应用领域,尤其涉及一种安卓user版本在SELinux强制模式下获取root特权的方法及系统。
背景技术
Android4.4版本之前,Android系统的底层的权限管理使用的是DAC模式,Android4.4版本之后,使用的是MAC+DAC模式,尽管有些版本不是完全的MAC控制,但是随着安全性能越来越高,在最新的android系统当中,已经使用了完全的MAC来控制权限,也就是说如果Android系统内部没有许可获得特权,那么用户几乎是不能获得root权限的,即使用户获得DAC的root权限,在实际操作过程中,还是会被MAC拒绝而失败。而MAC的控制就是使用SELinux来实现的。
其中,DAC为Discretionary Access Control的简称,代表自主访问控制。访问控制模式是rwxrwxrwx,r代表read,w代表write,x代表execute,没有对应权限以-代替,每三个字符一组,这三个组分别是:所有者用户-所有者组-其他。
MAC为Mandatory Access Control的简称,代表强制访问控制,访问控制模式是user:role:type,代表用户:角色:类型。
正是因为这样严格的权限管理,我们在有些情况下就会遇到问题,比如:客户在使用 user版本遇到了重大的必须解决的问题后,需要将系统里面的一些数据获取出来或通过设置手机里面的参数来调试的时候,却被权限管理挡在门外了,也就是需要一种在SELinux 正常工作的情况下,依然可以在user版本上获取特权的机制,方便临时调试。现存在的几种方案是根据系统属性值将SELinux临时关闭,但这种方案的弊端是google认证会不定期检查user版本关闭SELinux的情况,一旦google检测到这种情况,就会要求厂商更新软件,否者,google认证不与通过,这增加了后期维护的成本。现存的还有一种方案是为用户编译可调试版本,让客户或者售后重新下载软件,然后一直测试直到问题重现,再来调试,时间成本太高,并且本身版本性质不同也有一些差异,问题能否重现也不得而知。
其中,申请号:201210436649.9,专利名称为《安卓应用程序永久获取root权限的方法》的专利未考虑SELinux在强制模式下的情况,在此模式下,此方案行不通,在获取root权限上会失败;并且,此方案依赖已经root好的系统作为前置条件,其运行在应用层面,在设置suid会被root检测程序检测出,从而无法获取root权限。
发明内容
为解决现有技术中的问题,本发明提供一种安卓user版本在SELinux强制模式下获取root特权的方法,还提供一种实现该方法的系统。
本发明方法包括如下步骤:
S1:设置两个属性,其中,第一属性用来标识安卓系统是否需要启动特权root;第二属性用来通知init进程执行SELinux配置文件的重新加载;
S2:修改SELinux的编译规则文件,使安卓系统编译时生成特权SELinux配置文件,
S3:编写可执行文件,完成SELinux配置文件的切换;
S4:编写可执行文件对应的rc文件;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京海杭通讯科技有限公司,未经北京海杭通讯科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201810321612.9/2.html,转载请声明来源钻瓜专利网。