CN113806718A - 访问权限的管理方法及终端设备 - Google Patents

访问权限的管理方法及终端设备 Download PDF

Info

Publication number
CN113806718A
CN113806718A CN202111016460.XA CN202111016460A CN113806718A CN 113806718 A CN113806718 A CN 113806718A CN 202111016460 A CN202111016460 A CN 202111016460A CN 113806718 A CN113806718 A CN 113806718A
Authority
CN
China
Prior art keywords
security domain
authentication
user
control device
terminal
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202111016460.XA
Other languages
English (en)
Inventor
王旭光
王晓林
黄虎
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hisense Mobile Communications Technology Co Ltd
Original Assignee
Hisense Mobile Communications Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hisense Mobile Communications Technology Co Ltd filed Critical Hisense Mobile Communications Technology Co Ltd
Priority to CN202111016460.XA priority Critical patent/CN113806718A/zh
Publication of CN113806718A publication Critical patent/CN113806718A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/44Program or device authentication
    • G06F21/445Program or device authentication by mutual authentication, e.g. between devices or programs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/079Root cause analysis, i.e. error or fault diagnosis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/31User authentication

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Health & Medical Sciences (AREA)
  • Biomedical Technology (AREA)
  • Quality & Reliability (AREA)
  • Stored Programmes (AREA)

Abstract

本申请提供了一种访问权限的管理方法及终端设备,解决了现有技术下user版本系统无法定位异常原因的问题。本申请提前预置进程提权需要的策略文件到终端中,在进程出现异常后,控制设备和终端利用公钥和私钥协作进行鉴权操作,根据鉴权结果判定是否触发提权过程。本申请提出的临时提升进程权限的方法,避免了摄入特殊镜像或者重启终端的操作,且在提权过程中不会擦除用户数据或泄露用户隐私,并且在用户重启终端后可以恢复到提权操作之前的状态,开发者也可以现场调试user版本的终端进行并快速定位到进程问题,无需再次复现问题后分析。

Description

访问权限的管理方法及终端设备
技术领域
本申请涉及终端技术领域,尤其涉及一种访问权限的管理方法及终端设备。
背景技术
终端中运行的是用户版本系统,受该系统权限的限制,当终端进程出现异常后无法进行调试和/或分析并定位异常,很多进程异常复现概率低、耗时长,会增加公司的测试成本。以手机为例,现有技术利用提权方式处理终端的议异常进程时需要修改手机镜像,而修改手机镜像会强制擦除用户数据和重启手机,容易导致问题现场被破环,用户信息丢失。
发明内容
本申请公开了一种访问权限的管理方法及终端设备,用于解决现有技术中用户版本系统中无法定位异常原因的问题。
第一方面,本申请提供一种访问权限的管理方法,应用于用户版本系统,所述用户版本系统中未设置超级用户权限,所述方法包括:
接收控制设备发送的将adbd(android debug bridge daemon,安卓调试服务)进程的访问权限提升到超级用户权限的提权指示;
基于所述提权指示,与所述控制设备交互完成对所述控制设备的鉴权操作;
若鉴权通过,则基于预先下载的su(super ueser,超级用户)安全域,在所述su安全域中运行所述adbd进程。
可选的,基于所述提权指示,与所述控制设备交互完成对所述控制设备的鉴权操作,具体包括:
响应所述提权指示,发送携带第一临时登录凭证的鉴权命令给所述控制设备;
接收所述控制设备发送的第二临时登录凭证;所述第二临时登录凭证是所述控制设备采用私钥对所述第一临时登录进行签名后得到的;
采用与所述私钥对应的公钥对所述第二临时登录凭证的签名进行验签。
可选的,所述在所述su安全域中运行所述adbd进程,具体包括:
若鉴权通过,则修改权限属性为第一指定值,并将安全策略设置为适合su安全域运行的第一安全策略;
重新启动所述adbd进程时,读取所述权限属性;
若所述权限属性为所述第一指定值,则禁止执行降权操作,并基于所述第一安全策略在所述su安全域运行所述adbd进程,其中,所述降权操作用于为所述adbd进程设置低于所述超级用户权限的权限。
可选的,所述基于所述提权指示,与所述控制设备交互完成对所述控制设备的鉴权操作之前,所述方法还包括:
基于所述提权指示,重启所述adbd进程。
可选的,响应于重启终端设备的指示,删除所述su安全域;
所述若鉴权通过,则基于预先下载的超级用户su安全域,在所述su安全域中运行所述adbd进程,具体包括:
若鉴权成功,则下载所述su安全域,并在所述su安全域中运行所述adbd进程。
可选的,所述指提权指示包括shell命令和/或暗码。
可选的,所述基于所述提权指示,与所述控制设备交互完成对所述控制设备的鉴权操作之后,还包括:
若所述鉴权操作的结果为鉴权失败,则提示鉴权失败。
第二方面,本申请还提供一种终端设备,包括:
处理器;
用于存储所述处理器可执行指令的存储器;
其中,所述处理器被配置为执行所述指令,以实现如第一方面中任一项所述的方法。
第三方面,本申请一实施例还提供了一种计算机可读存储介质,当所述计算机可读存储介质中的指令由终端设备的处理器执行时,使得终端设备能够执行如本申请方面中提供的任一方法。
第四方面,本申请实施例中提供了一种计算机程序产品,包括计算机程序,所述计算机程序被处理器执行时实现如本申请第一方面中提供的任一方法。
另外,第二方面、第三方面、第四方面中任一种实现方式所带来的技术效果可参见第一方面中不同实现方式所带来的技术效果,此处不再赘述。
本申请的实施例提供的技术方案至少带来以下有益效果:
本申请提供了提升adbd进程权限的方法,该方法中可通过控制设备和终端设备之间进行交互完成对控制设备的鉴权以保护终端设备的用户数据。在鉴权通过之后,可以在预先下载的su安全域运行adbd进程。在su安全域adbd进程具有超级用户权限,故此可以获取定位异常原因所需的调试信息。由此,本申请无需写入镜像文件,在提权过程中不会擦除用户数据或泄露用户隐私,可以复现问题线程对异常原因进行分析。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。
附图说明
为了更清楚地说明本申请实施例的技术方案,下面将对本申请实施例中所需要使用的附图作简单地介绍,显而易见地,下面所介绍的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例提供的一种终端设备的结构示意图;
图2示例性示出了本申请实施例提供的一种终端设备的软件架构示意图;
图3为本申请实施例中提供的应用场景示意图;
图4为本申请实施例中提供的访问权限的管理方法的流程图;
图5为本申请实施例中提供的鉴权操作流程图;
图6为本申请实施例中提供的提权操作的流程图;
图7为本申请实施例中提供的各进程交互的时序图。
具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述。
其中,在本申请实施例的描述中,除非另有说明,“/”表示或的意思,例如,A/B可以表示A或B;文本中的“和/或”仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况,另外,在本申请实施例的描述中,“多个”是指两个或多于两个。
以下,术语“第一”、“第二”仅用于描述目的,而不能理解为暗示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括一个或者更多个该特征,在本申请实施例的描述中,除非另有说明,“多个”的含义是两个或两个以上。
首先,如图1所示是一种终端设备100的结构示意图。
下面以终端设备100为例对实施例进行具体说明。应该理解的是,图1所示终端设备100仅是一个范例,并且终端设备100可以具有比图1中所示的更多的或者更少的部件,可以组合两个或多个的部件,或者可以具有不同的部件配置。图中所示出的各种部件可以在包括一个或多个信号处理和/或专用集成电路在内的硬件、软件、或硬件和软件的组合中实现。
图1中示例性示出了根据示例性实施例中终端设备100的硬件配置框图。如图1所示,终端设备100包括:射频(radio frequency,RF)电路110、存储器120、显示单元130、摄像头140、传感器150、音频电路160、无线保真(Wireless Fidelity,Wi-Fi)模块160、处理器180、蓝牙模块181、以及电源190等部件。
RF电路110可用于在收发信息或通话过程中信号的接收和发送,可以接收基站的下行数据后交给处理器180处理;可以将上行数据发送给基站。通常,RF电路包括但不限于天线、至少一个放大器、收发信机、耦合器、低噪声放大器、双工器等器件。
存储器120可用于存储软件程序及数据。处理器180通过运行存储在存储器120的软件程序或数据,从而执行终端设备100的各种功能以及数据处理。存储器120可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。存储器120存储有使得终端设备100能运行的操作系统。本申请中存储器120可以存储操作系统及各种应用程序,还可以存储执行本申请实施例所述访问权限的管理方法的代码。
显示单元130可用于接收输入的数字或字符信息,产生与终端设备100的用户设置以及功能控制有关的信号输入,具体地,显示单元130可以包括设置在终端设备100正面的触摸屏131,可收集用户在其上或附近的触摸操作,例如点击按钮,拖动滚动框等。
显示单元130还可用于显示由用户输入的信息或提供给用户的信息以及终端100的各种菜单的图形用户界面(graphical user interface,GUI)。具体地,显示单元130可以包括设置在终端设备100正面的显示屏132。其中,显示屏132可以采用液晶显示器、发光二极管等形式来配置。显示单元130可以用于显示本申请中所述的各种图形用户界面。
其中,触摸屏131可以覆盖在显示屏132之上,也可以将触摸屏131与显示屏132集成而实现终端设备100的输入和输出功能,集成后可以简称触摸显示屏。本申请中显示单元130可以显示应用程序以及对应的操作步骤。
摄像头140可用于捕获静态图像或视频。物体通过镜头生成光学图像投射到感光元件。感光元件可以是电荷耦合器件(charge coupled device,CCD)或互补金属氧化物半导体(complementary metal-oxide-semiconductor,CMOS)光电晶体管。感光元件把光信号转换成电信号,之后将电信号传递给处理器180转换成数字图像信号。
终端设备100还可以包括至少一种传感器150,比如加速度传感器151、距离传感器152、指纹传感器153、温度传感器154。终端设备100还可配置有陀螺仪、气压计、湿度计、温度计、红外线传感器、光传感器、运动传感器等其他传感器。
音频电路160、扬声器161、麦克风162可提供用户与终端设备100之间的音频接口。音频电路160可将接收到的音频数据转换后的电信号,传输到扬声器161,由扬声器161转换为声音信号输出。终端设备100还可配置音量按钮,用于调节声音信号的音量。另一方面,麦克风162将收集的声音信号转换为电信号,由音频电路160接收后转换为音频数据,再将音频数据输出至RF电路110以发送给比如另一终端威者将音频数据输出至存储器120以便进一步处理。本申请中麦克风162可以获取用户的语音。
Wi-Fi属于短距离无线传输技术,终端设备100可以通过Wi-Fi模块160帮助用户收发电子邮件、浏览网页和访问流媒体等,它为用户提供了无线的宽带互联网访问。
处理器180是终端设备100的控制中心,利用各种接口和线路连接整个终端的各个部分,通过运行或执行存储在存储器120内的软件程序,以及调用存储在存储器120内的数据,执行终端设备100的各种功能和处理数据。在一些实施例中,处理器180可包括一个或多个处理单元;处理器180还可以集成应用处理器和基带处理器,其中,应用处理器主要处理操作系统、用户界面和应用程序等,基带处理器主要处理无线通信。可以理解的是,上述基带处理器也可以不集成到处理器180中。本申请中处理器180可以运行操作系统、应用程序、用户界面显示及触控响应,以及本申请实施例所述的访问权限的管理方法。另外,处理器180与输入单元130和显示单元140耦接。
蓝牙模块181,用于通过蓝牙协议来与其他具有蓝牙模块的蓝牙设备进行信息交互。例如,终端设备100可以通过蓝牙模块181与同样具备蓝牙模块的可穿戴电子设备(例如智能手表)建立蓝牙连接,从而进行数据交互。
终端设备100还包括给各个部件供电的电源190(比如电池)。电源可以通过电源管理系统与处理器180逻辑相连,从而通过电源管理系统实现管理充电、放电以及功耗等功能。终端设备100还可配置有电源按钮,用于终端的开机和关机,以及锁屏等功能。
图2是本发明实施例的终端设备100的软件结构框图。
分层架构将软件分成若干个层,每一层都有清晰的角色和分工。层与层之间通过软件接口通信。在一些实施例中,将Android系统分为四层,从上至下分别为应用程序层,应用程序框架层,安卓运行时(Android runtime)和系统库,以及内核层。
应用程序层可以包括一系列应用程序包。
如图2所示,应用程序包可以包括相机,图库,日历,通话,地图,导航,WLAN,蓝牙,音乐,视频,短信息等应用程序。
应用程序框架层为应用程序层的应用程序提供应用编程接口(applicationprogramming interface,API)和编程框架。应用程序框架层包括一些预先定义的函数。
如图2所示,应用程序框架层可以包括窗口管理器,内容提供器,视图系统,电话管理器,资源管理器,通知管理器等。
窗口管理器用于管理窗口程序。窗口管理器可以获取显示屏大小,判断是否有状态栏,锁定屏幕,截取屏幕等。
内容提供器用来存放和获取数据,并使这些数据可以被应用程序访问。所述数据可以包括视频,图像,音频,拨打和接听的电话,浏览历史和书签,电话簿等。
视图系统包括可视控件,例如显示文字的控件,显示图片的控件等。视图系统可用于构建应用程序。显示界面可以由一个或多个视图组成的。例如,包括短信通知图标的显示界面,可以包括显示文字的视图以及显示图片的视图。
电话管理器用于提供终端设备100的通信功能。例如通话状态的管理(包括接通,挂断等)。
资源管理器为应用程序提供各种资源,比如本地化字符串,图标,图片,布局文件,视频文件等。
通知管理器使应用程序可以在状态栏中显示通知信息,可以用于传达告知类型的消息,可以短暂停留后自动消失,无需用户交互。比如通知管理器被用于告知下载完成,消息提醒等。通知管理器还可以是以图表或者滚动条文本形式出现在系统顶部状态栏的通知,例如后台运行的应用程序的通知,还可以是以对话窗口形式出现在屏幕上的通知。例如在状态栏提示文本信息,发出提示音,终端设备振动,指示灯闪烁等。
Android Runtime包括核心库和虚拟机。Android runtime负责安卓系统的调度和管理。
核心库包含两部分:一部分是java语言需要调用的功能函数,另一部分是安卓的核心库。
应用程序层和应用程序框架层运行在虚拟机中。虚拟机将应用程序层和应用程序框架层的java文件执行为二进制文件。虚拟机用于执行对象生命周期的管理,堆栈管理,线程管理,安全和异常的管理,以及垃圾回收等功能。
系统库可以包括多个功能模块和init进程孵化来的用户空间的守护进程、HAL层以及开机动画等,本申请中提及的进程在该层面运行。例如:表面管理器(surfacemanager),媒体库(Media Libraries),三维图形处理库(例如:OpenGL ES),2D图形引擎(例如:SGL)等。
表面管理器用于对显示子系统进行管理,并且为多个应用程序提供了2D和3D图层的融合。
媒体库支持多种常用的音频,视频格式回放和录制,以及静态图像文件等。媒体库可以支持多种音视频编码格式,例如:MPEG4,H.264,MP3,AAC,AMR,JPG,PNG等。
三维图形处理库用于实现三维图形绘图,图像渲染,合成,和图层处理等。
2D图形引擎是2D绘图的绘图引擎。
内核层是硬件和软件之间的层。内核层至少包含显示驱动,摄像头驱动,音频驱动,传感器驱动。
本申请实施例中的终端设备100可以为包括但不限于移动终端、桌面计算机、移动电脑、平板电脑等电子设备。
下面对本申请实施例的技术方案能够适用的应用场景做一些简单介绍,需要说明的是,以下介绍的应用场景仅用于说明本申请实施例而非限定。在具体实施时,可以根据实际需要灵活地应用本申请实施例提供的技术方案。
终端的用户版本系统中adbd进程访问权限较低,当终端设备出现异常时,无法调试和/或定位并分析异常出现的原因。现有技术在对用户版本的终端进行提权操作时,要么会强制擦除用户数据,要么利用img镜像通过关闭或增大系统的SELinux权限、来实现给adbd进程的提权。
但是以上提权方式需要修改终端设备的img镜像,破坏了终端设备的出厂状态,在操作上和实际开发中的局限性很大,需要擦除用户数据和重启终端设备等操作,导致问题现场被破环。并且,很多用户问题复现概率低、耗时长,用修改终端设备的img镜像的方式会增加测试成本。另外,如果用户正在使用终端设备,那么擦除数据也是不能被接受的。
有鉴于此,本申请实施例提供一种访问权限的关联方法和终端设备。
参考图3,其为本申请实施例提供的应用场景示意图。该应用场景中包括控制设备301、网络302、终端设备303。控制设备301但不限于桌面计算机、移动电脑、平板电脑、智能电视等电子设备。控制设备301和终端设备303之间通过无线或有线网络302连接。终端设备303包括但不限于智能手机、平板电脑、可视电话、会议终端、内置多媒体功能的个人计算机、掌上电脑、智能手机等。
本申请实施例可以适用于用户可以通过控制设备301下发提权指示,然后通过网络302将该提权指示发送给终端设备303触发终端设备303和控制设备301进行鉴权操作,以保护终端设备303。当鉴权通过时,终端设备可以通过在预先下载的安全域来运行adbd进程达到提升用户权限的作用。
当然需要说明的是,本申请实施例提供的方法并不限于图3所示的应用场景,还可以用于其它可能的应用场景,本申请实施例并不进行限制。对于图3所示的应用场景的各个设备所能实现的功能将在后续的方法实施例中一并进行描述,在此先不过多赘述。
以下,对本申请实施例中的部分用语进行解释说明,以便于本领域技术人员理解。
提权:指提升adbd进程对终端设备的操作权限,本申请实施例中提权意味将adbd进程的操作权限提升至超级用户权限,以便于获取问题线程的数据进行问题分析所需的信息。如,异常的类型、异常发生的位置及时间等信息。当提权属性未被置位时,会进行降权操作。
init进程:内核启动的第一个用户级进程。init有许多很重要的任务,比如像用户登录、实现运行级别、以及处理孤立进程,同时会监听进程的运行状态。adbd进程为init进程孵化的一个进程。
安全策略:是指在某个安全域内(一个安全域,通常是指属于某个组织的一系列处理和通信资源),用于所有与安全相关活动的一套规则。
安全域:安全域是一个术语,用于概念化计算机、网络,或属于特定安全协议下的信息技术基础设施要素。
SELinux:SELinux是Linux下的一种安全强化机制,是针对特定的进程与指定的文件资源进行权限控制的系统。主要是增强传统Linux操作系统的安全性,并解决传统Linux系统中自主访问控制系统中的各种权限问题。
adbd进程:全称为android debug bridge daemon(andrioid调试服务),主要用途是调试,便于开发工程师进行开发调试。
su安全域:定义了一个最大的策略集合,在此安全域上adbd进程的权限最高。
shell安全域:用户系统的进程所运行的安全域,进程在shell安全域上拥有的最大权限小于在su安全域上拥有的。
img镜像:一种文件形式,可以通过制作数据光盘或者使用虚拟光驱安装.img格式的数据文件。
为进一步说明本申请实施例提供的技术方案,下面结合附图以及具体实施方式对此进行详细的说明。虽然本申请实施例提供了如下述实施例或附图所示的方法操作步骤,但基于常规或者无需创造性的劳动在方法中可以包括更多或者更少的操作步骤。在逻辑上不存在必要因果关系的步骤中,这些步骤的执行顺序不限于本申请实施例提供的执行顺序。
如图4所示,当终端需要对出现的进程异常进行分析处理但又没有权限时,会和控制设备交互完成对adbd进程的提权,进而对进程异常进行分析调试。因此本申请提出一种应用于用户版本系统的访问权限的管理方法,在本申请实施例中,终端设备运行异常后,用户可以将终端设备连接到控制设备中。控制设备中安装有客户端,用户可以通过控制设备按照的客户端下发提取指示给终端设备,该提权指示例如可以是指定的shell代码和/或暗码。由此用户可以根据自己的需求实施对终端设备进行调试。而后,如图4所示,终端设备可以执行的操作包括:
在步骤401中,接收控制设备发送的将adbd进程的访问权限提升到超级用户权限的提权指示。
如前文,指提权指示包括shell命令和/或暗码,本申请中shell命令和暗码可基于需求设置,本申请对此不作限定。
在步骤402中,基于提权指示,与控制设备交互完成对控制设备的鉴权操作。
在本实施例中,与控制设备交互完成对控制设备的鉴权操作时,为了用户信息的安全,一种可能的实施方式为终端设备和控制设备交互要用相匹配的公钥和私钥对临时登录凭证(token)进行验证。具体操作如图5所示可执行为:
在步骤501中,终端设备响应提权指示,发送携带第一临时登录凭证的鉴权命令给控制设备。
在步骤502中,控制设备基于存储的私钥对第一临时登录凭证进行签名,得到第二临时登录凭证,然后发送给终端设备。
在步骤503中,终端设备接收控制设备发送的第二临时登录凭证。
在步骤504中终端设备采用与私钥对应的公钥对第二临时登录凭证的签名进行验签。即对第二临时登录凭证进行签名认证。若验签(鉴权)不通过,则执行步骤403,提示鉴权失败。若验签通过,则执行步骤404,基于预先下载的su安全域,在su安全域中运行adbd进程。
关于adbd进程,启动时会读取提权属性。该提权属性用于记录终端设备是否需要对adbd进程进行降权操作。提权属性有两个取值,包括第一指定值和第二指定值。当提权属性为第一指定值时,会对adbd进程进行降权操作,以将adbd进程设置为低权限。当提权属性为第二指定值,不会对adbd进程进行降权操作,adbd进程将得到在当前安全域中所能拥有的最大权限。
在用户版本系统中,终端设备上只有shell安全域且提权属性默认为第二指定值,即在用户版本系统中adbd进程在终端是启动时会读取到提权属性为第二指定值,此时会先执行降权操作,再在shell安全域上运行adbd进程。
由于进行提权之前adbd进程实际上是运行在shell安全域中,本身拥有的权限不高,因此本申请实施例中基于安全策略对adbd进程进行提权。
由于adbd进程原本是在终端的shell安全域上运行,这时adbd进程在不进行降权操作的情况下拥有的最高权限仍然小于在su安全域上运行时拥有的最高权限。因此需要在鉴权通过后先下载su安全域。由于每个安全域适合的安全策略不同,因此adbd进程在su安全域上运行之前将安全策略切换为适用于su安全域的第一安全策略,并将权限属性修改为第一指定值,接着再重启adbd进程,此时adbd进程拥有在基于第一安全策略在su安全域运行超级用户权限。
在一种实施例中,adbd进程是由init进程启动并管理,adbd进程的每个运行结果和运行状态都会产生一个信号,init进程会根据该信号指示adbd进程或者内核进行接下来的操作。因此提权操作需要内核、init进程和adbd进程共同完成。
如图6所示,若鉴权通过,init进程根据adbd进程验签通过的信号指示adbd进程在步骤601中下载su安全域。
由于每个安全域对应的安全策略不同,adbd进程在su安全域上运行前,init进程在步骤602中通知内核关闭策略切换检查,将安全策略设置为适合su安全域运行的第一安全策略。
策略切换完成后,在步骤603中,init进程通知内核修改权限属性为第一指定值。
在提权过程中,为了保护用户数据,只有在验签通过后才会下载su安全域。由于每个安全域运行的安全策略不同,因此需要关闭终端的策略切换检查并通过策略切换接口将安全策略设置为适合su安全域运行的第一安全策略。若策略切换检查打开,则安全策略无法切换,在su安全域上运行的adbd进程也没有访问终端资源的权限。
在步骤604中,重新启动adbd进程时,读取权限属性。
在步骤605中,若权限属性为第一指定值,则禁止执行降权操作,其中,降权操作用于为adbd进程设置低于超级用户权限的权限。
执行完以上步骤后,此时在基于第一安全策略在su安全域运行的adbd进程拥有超级用户权限,因此基于提权指示,在步骤606中重启adbd进程。
为了更行出的说明各进程和内核之间的运行关系,本申请结合图6对如图7所示的内核结合各进程(包括init进程和adbd进程)交互的时序图进行进一步描述。
验签通过后,init进程会在步骤701中检测到adbd进程发送的验签通过信号,此时终端的安全策略为适合shell安全域运行的第二安全策略。
在步骤702中,init进程还要通知内核关闭策略切换检查。
在步骤703中,通知策略切换接口将安全策略切换到第一安全策略,同时内核将提权属性修改为第一指定值。
在步骤704中,安全策略和提权属性修改完毕后,init进程通知adbd进程下载su安全域并在该安全域上重启。
在步骤705中,重启时先判断提权属性,若是第一指定值,则adbd进程不执行降权操作,即拥有在基于第一安全策略在su安全域运行超级用户权限。
在另一种实施例中,为了用户隐私安全,init进程响应于重启终端设备的指示,删除su安全域,保证用户在重启终端后adbd进程在低权限的状态下运行。
基于以上方法,本申请可以在保证用户隐私并且不破坏用户数据的前提下对终端的进程异常进行分析调试。
由于本申请实施例中的计算机存储介质可以应用于上述方法,因此,其所能获得的技术效果也可参考上述方法实施例,本申请的实施例在此不再赘述。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
显然,本领域的技术人员可以对本申请进行各种改动和变型而不脱离本申请的精神和范围。这样,倘若本申请的这些修改和变型属于本申请权利要求及其等同技术的范围之内,则本申请也意图包含这些改动和变型在内。

Claims (8)

1.一种访问权限管理方法,其特征在于,应用于用户版本系统,所述用户版本系统中未设置超级用户权限,所述方法包括:
接收控制设备发送的将安卓调试服务adbd进程的访问权限提升到超级用户权限的提权指示;
基于所述提权指示,与所述控制设备交互完成对所述控制设备的鉴权操作;
若鉴权通过,则基于预先下载的超级用户su安全域,在所述su安全域中运行所述adbd进程。
2.根据权利要求1所述的方法,其特征在于,基于所述提权指示,与所述控制设备交互完成对所述控制设备的鉴权操作,具体包括:
响应所述提权指示,发送携带第一临时登录凭证的鉴权命令给所述控制设备;
接收所述控制设备发送的第二临时登录凭证;所述第二临时登录凭证是所述控制设备采用私钥对所述第一临时登录进行签名后得到的;
采用与所述私钥对应的公钥对所述第二临时登录凭证的签名进行验签。
3.根据权利要求1所述的方法,其特征在于,所述在所述su安全域中运行所述adbd进程,具体包括:
若鉴权通过,则修改权限属性为第一指定值,并将安全策略设置为适合su安全域运行的第一安全策略;
重新启动所述adbd进程时,读取所述权限属性;
若所述权限属性为所述第一指定值,则禁止执行降权操作,并基于所述第一安全策略在所述su安全域运行所述adbd进程,其中,所述降权操作用于为所述adbd进程设置低于所述超级用户权限的权限。
4.根据权利要求1-3中任一所述的方法,其特征在于,所述基于所述提权指示,与所述控制设备交互完成对所述控制设备的鉴权操作之前,所述方法还包括:
基于所述提权指示,重启所述adbd进程。
5.根据权利要求1所述的方法,其特征在于,所述方法还包括:
响应于重启终端设备的指示,删除所述su安全域;
所述若鉴权通过,则基于预先下载的超级用户su安全域,在所述su安全域中运行所述adbd进程,具体包括:
若鉴权成功,则下载所述su安全域,并在所述su安全域中运行所述adbd进程。
6.根据权利要求1所述的方法,其特征在于,所述指提权指示包括she1l命令和/或暗码。
7.根据权利要求1所述的方法,其特征在于,所述基于所述提权指示,与所述控制设备交互完成对所述控制设备的鉴权操作之后,还包括:
若所述鉴权操作的结果为鉴权失败,则提示鉴权失败。
8.一种终端设备,其特征在于,包括:
处理器;
用于存储所述处理器可执行指令的存储器;
其中,所述处理器被配置为执行所述指令,以实现如权利要求1-7中任一项所述的软件升级方法。
CN202111016460.XA 2021-08-31 2021-08-31 访问权限的管理方法及终端设备 Pending CN113806718A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202111016460.XA CN113806718A (zh) 2021-08-31 2021-08-31 访问权限的管理方法及终端设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202111016460.XA CN113806718A (zh) 2021-08-31 2021-08-31 访问权限的管理方法及终端设备

Publications (1)

Publication Number Publication Date
CN113806718A true CN113806718A (zh) 2021-12-17

Family

ID=78894429

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111016460.XA Pending CN113806718A (zh) 2021-08-31 2021-08-31 访问权限的管理方法及终端设备

Country Status (1)

Country Link
CN (1) CN113806718A (zh)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20170134384A1 (en) * 2015-11-06 2017-05-11 Le Holdings (Beijing) Co., Ltd. Method and device for obtaining superuser permission
CN107889104A (zh) * 2017-11-30 2018-04-06 深圳天珑无线科技有限公司 root权限的授权方法及授权系统、存储装置
CN108595214A (zh) * 2018-04-11 2018-09-28 北京海杭通讯科技有限公司 安卓user版本在SELinux强制模式下获取root特权的方法及系统
CN112528267A (zh) * 2019-09-19 2021-03-19 青岛海信移动通信技术股份有限公司 一种执行root操作的方法以及移动终端

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20170134384A1 (en) * 2015-11-06 2017-05-11 Le Holdings (Beijing) Co., Ltd. Method and device for obtaining superuser permission
CN107889104A (zh) * 2017-11-30 2018-04-06 深圳天珑无线科技有限公司 root权限的授权方法及授权系统、存储装置
CN108595214A (zh) * 2018-04-11 2018-09-28 北京海杭通讯科技有限公司 安卓user版本在SELinux强制模式下获取root特权的方法及系统
CN112528267A (zh) * 2019-09-19 2021-03-19 青岛海信移动通信技术股份有限公司 一种执行root操作的方法以及移动终端

Similar Documents

Publication Publication Date Title
US9380456B1 (en) System, method and computer program product for dynamically switching operating systems in a virtual mobile device platform
US9697629B1 (en) System, method and computer product for user performance and device resolution settings
US11596008B2 (en) System, method and computer program product for secure Bluetooth cryptography in a virtual mobile device platform
US20150100890A1 (en) User interface management method and system
US9667703B1 (en) System, method and computer program product for generating remote views in a virtual mobile device platform
WO2013075412A1 (zh) 移动终端的安全控制方法及装置
Haris et al. Evolution of android operating system: a review
CN110865837B (zh) 一种进行系统升级的方法和终端
US11316693B2 (en) Trusted platform module-based prepaid access token for commercial IoT online services
CN110084035B (zh) 用于在发生拒绝时建议响应指南的电子设备和方法
CN108090345B (zh) linux系统外部命令执行方法及装置
WO2022135215A1 (zh) 一种开机异常的修复方法及装置
CN113836540A (zh) 管理应用权限的方法、设备、存储介质和程序产品
CN113781686A (zh) 智能门锁的临时密码的验证方法、生成方法及装置
KR20140068940A (ko) 애플리케이션용 콘텐츠 핸들링 기법
US11275801B1 (en) Performance metrics collection and promulgation from within a mobile application
WO2022166502A1 (zh) 数据保护方法、系统、介质及电子设备
CN113806718A (zh) 访问权限的管理方法及终端设备
CN114595203A (zh) 基于双系统的文件同步方法、终端设备及存储介质
US20220229666A1 (en) Managing deployment model migrations for enrolled devices
CN113821841A (zh) 资源管理方法、计算装置、计算设备和可读存储介质
CN114138293A (zh) 一种终端及外接存储卡便携系统升级方法
CN114138343A (zh) 一种终端及终端启动方法
CN111159734A (zh) 通信终端及多应用数据互访处理方法
CN113496039A (zh) 一种权限管理方法及终端

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination