执行Root操作的方法及装置、终端设备、存储介质制造方法及图纸

技术编号:16645162 阅读:41 留言:0更新日期:2017-11-26 18:10
一种执行Root操作的方法及装置、终端设备,以避免Root造成的系统安全隐患。其中,方法,包括:Root服务进程接收来自请求方进程的与待执行的Root操作对应的请求;所述Root服务进程对所述请求进行安全校验;若安全校验通过,启动Root执行进程并将所述请求发送给所述Root执行进程;所述Root执行进程获取Root权限,并在获得Root权限后执行所述Root操作。

Method, device, terminal device and storage medium for performing Root operation

A method, device and terminal device for Root operation to avoid system security hidden trouble caused by Root. The method includes: requesting Root service receives a request from Party process and Root to execute the corresponding operation; the Root service process on the request of the security check; if the security check by Root, start the implementation process and the request is sent to the Root implementation of the Root implementation process; the process of acquiring Root permissions, and in Root access after the execution of the Root operation.

【技术实现步骤摘要】
执行Root操作的方法及装置、终端设备、存储介质
本申请涉及终端设备
,尤其涉及一种执行Root操作的方法及装置、终端设备、存储介质。
技术介绍
在各类操作系统中,具备Root权限的用户可以拥有对操作系统中任何对象进行操作的最高权限。在相关技术中,一些操作系统并没有向所有用户开放Root权限,但是,可以利用操作系统的漏洞来获得Root权限。以Android操作系统为例,可利用操作系统的漏洞,将预先编译好的su文件拷贝到Android设备的指定目录(如:/system/bin或/system/xbin/)下。此后,普通用户便可通过执行su文件来获取Root权限。目前的Root方案中,由于是通过将su文件写入到指定目录下来获得Root权限,一旦对操作系统成功Root之后,任意用户或程序都可以对系统的任意资源进行读、写、删等操作,造成一定的系统安全隐患。
技术实现思路
有鉴于此,本申请提供一种执行Root操作的方法及装置、终端设备、存储介质。为实现上述目的,本申请提供的技术方案如下:一种执行Root操作的方法,包括:Root服务进程接收来自请求方进程的与待执行的Root操作对应的请求;所述Root服务进程对所述请求进行安全校验;若安全校验通过,启动Root执行进程并将所述请求发送给所述Root执行进程;所述Root执行进程获取Root权限,并在获得Root权限后执行所述Root操作。一种执行Root操作的装置,包括:请求接收单元,接收来自请求方进程的与待执行的Root操作对应的请求;校验单元,对所述请求进行安全校验;进程启动单元,在安全校验通过后,启动Root执行进程并将所述请求发送给所述Root执行进程;提权单元,使所述Root执行进程获得Root权限;Root操作执行单元,在获得Root权限后通过所述Root执行进程执行所述Root操作。一种终端设备,包括:处理器;用于存储处理器可执行指令的存储器;所述处理器被配置为:Root服务进程接收来自请求方进程的与待执行的Root操作对应的请求;所述Root服务进程对所述请求进行安全校验;若安全校验通过,启动Root执行进程并将所述请求发送给所述Root执行进程;所述Root执行进程获取Root权限,并在获得Root权限后执行所述Root操作。一种计算机存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如下步骤:Root服务进程接收来自请求方进程的与待执行的Root操作对应的请求;所述Root服务进程对所述请求进行安全校验;若安全校验通过,启动Root执行进程并将所述请求发送给所述Root执行进程;所述Root执行进程获取Root权限,并在获得Root权限后执行所述Root操作。通过以上技术方案可以看出,当请求方进程出现进行某种Root操作的需求时,可以通过向Root服务进程发送请求并由Root服务进程对所述请求进行安全校验;此后,若安全校验通过,启动Root执行进程并由Root执行进程获得Root权限并执行上述Root操作。由于上述过程并不需要通过将su文件写入到指定目录下的方式来获得Root权限,在满足请求方进程的Root操作需求的同时,确保了系统的安全性。附图说明图1为根据一示例性实施例示出的一种执行Root操作的方法的流程;图2为根据一示例性实施例示出的一种终端设备的硬件结构;图3为根据一示例性实施例示出的一种执行Root操作的装置的框图。具体实施方式在相关技术中,可通过各种Root工具来获取操作系统的Root权限。以Android为例,常见的Root工具的Root过程大致为:首先,根据操作系统的漏洞,编写一系列跟系统调用相关的特殊函数,并将这些特殊函数编译成一个动态链接库(DynamicLinkLibrary,DLL)文件,如:so文件。然后,调用者可以在Androidnative层通过系统函数dlopen()、dlsym()等来动态加载动态链接库文件,并调用动态链接库文件的内部函数来执行系统漏洞。最后,利用系统漏洞将预先编译好的su文件拷贝到Android设备的指定目录(如:/system/bin或者/system/xbin/)下。这样,普通用便可以通过执行指定目录下的su程序来获取Root权限。上述Root方案主要存在如下问题:①需要将su文件拷贝到系统的指定目录下,这一动作对系统目录进行了侵入式读写,容易对系统稳定性造成不可预知的影响;②普通用户可以通过执行su文件直接获取到Root权限,一旦有了Root权限就意味普通用户具有系统的最高权限,可以对系统的任何资源进行读写,用户的行为变得不可控,且随意修改系统文件或者误操作,容易对系统造成不可恢复性的损害,给系统安全性造成一定隐患。本申请为解决以上问题中的至少一个方面,提出一种Root操作的执行方案。图1为根据一示例性实施例示出的一种执行Root操作的方法的流程。该方法可应用于各类终端设备(如手机等)。如图1所示,在该方法的实现过程中,在终端设备上可运行三个进程:请求方进程、Root服务进程以及Root执行进程。其中,Root服务(RootService)进程以及Root执行进程构建一种Root安全沙箱(即按照安全策略限制程序行为的用于执行Root操作的环境)。在一实施例中,该方法可以通过如下步骤来实现:步骤101:请求方进程向Root服务进程发送与待执行的Root操作对应的请求。举例而言,请求方进程可以是运行于终端设备上的App客户端的进程。对于某些App客户端来说,需要执行一些Root操作,Root操作一般需要在具备操作系统的Root权限的前提下才能执行。例如,某App客户端为了手机上的支付安全,需要将手机安装的某程序进行卸载,而将手机安装的某程序进行卸载的操作便是一种Root操作。在一实施例中,上述请求可以携带一些参数,包括但不限于:请求方进程的进程ID、待执行的Root操作的类型以及该Root操作所涉及的对象或文件所在目录信息等。Root服务进程可以对应于Android系统上的一个标准Service组件,该Root服务运行在一个独立的进程中。该Root服务进程可以在终端设备开机后被自动开启,也可在某个请求方进程首次发起某Root操作请求后开启,并可以一直维持运行状态,直至被主动关闭。本文提及的Root安全沙箱,是手机系统(如:Android系统)上的一个安全执行环境,在该安全执行环境中,普通用户可以运行需要Root权限才能执行的操作命令,且不会对系统产生永久性的影响,也不会破坏到手机系统其它用户的权限。并且,在该执行环境中所作的Root操作的不会留下任何痕迹和/或历史记录。该Root安全沙箱由上述Root服务进程和Root执行进程来维持。步骤102:Root服务进程在收到上述请求之后,对所述请求进行安全校验。本申请实施例中,出于防止系统Root权限被滥用的考虑,请求方进程在出现执行Root操作的需求时,请求方进程自身并不具备Root权限,而是需要通过发送请求的方式来请求其他进程(即下文需具体描述的Root执行进程)来执行Root操作。实际应用中,并不希望终端设备上所有的App客户端都具备请求执行相应的Root操作的权限,而是希望将这一权限开放给指定的一个或多个Ap本文档来自技高网...
执行Root操作的方法及装置、终端设备、存储介质

【技术保护点】
一种执行Root操作的方法,包括:Root服务进程接收来自请求方进程的与待执行的Root操作对应的请求;所述Root服务进程对所述请求进行安全校验;若安全校验通过,启动Root执行进程并将所述请求发送给所述Root执行进程;所述Root执行进程获取Root权限,并在获得Root权限后执行所述Root操作。

【技术特征摘要】
1.一种执行Root操作的方法,包括:Root服务进程接收来自请求方进程的与待执行的Root操作对应的请求;所述Root服务进程对所述请求进行安全校验;若安全校验通过,启动Root执行进程并将所述请求发送给所述Root执行进程;所述Root执行进程获取Root权限,并在获得Root权限后执行所述Root操作。2.根据权利要求1所述的方法,在执行所述Root操作后,还包括:在执行完所述Root操作后结束所述Root执行进程。3.根据权利要求1所述的方法,所述Root执行进程获取Root权限,包括:利用系统漏洞将所述Root执行进程的进程ID添加到具备Root权限的Root用户组中。4.根据权利要求3所述的方法,所述Root服务进程对所述请求进行安全校验,包括:所述Root服务进程根据预先确定的白名单,校验述请求携带的请求方进程ID是否在所述白名单中,若是,确定安全校验通过,若否,确定安全校验不通过;或,所述Root服务进程校验所述请求对应的Root操作是否为安全操作,若是,确定安全校验通过,若否,确定安全校验不通过。5.根据权利要求1所述的方法,所述Root执行进程为由所述Root服务进程创建的子进程,并由所述Root执行进程结束该子进程。6.根据权利要求1所述的方法,还包括:所述Root执行进程获得执行所述Root操作的结果,并将所述结果反馈给所述Root服务进程;所述Root服务进程将所述结果反馈给所述请求方进程。7.一种执行Root操作的装置,包括:请求接收单元,接收来自请求方进程的与待执行的Root操作对应的请求;校验单元,对所述请求进行安全校验;进程启动单元,在安全校验通过后,启动Root执行进程并将所述请求发送给所述Root执行进程;提权单元,使所述Root执行进程获得Root权限;Root操作执行单元,在获得R...

【专利技术属性】
技术研发人员:王保初
申请(专利权)人:阿里巴巴集团控股有限公司
类型:发明
国别省市:开曼群岛,KY

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1