CN103365685A - 一种基于android超级权限方法和装置 - Google Patents
一种基于android超级权限方法和装置 Download PDFInfo
- Publication number
- CN103365685A CN103365685A CN2013102162608A CN201310216260A CN103365685A CN 103365685 A CN103365685 A CN 103365685A CN 2013102162608 A CN2013102162608 A CN 2013102162608A CN 201310216260 A CN201310216260 A CN 201310216260A CN 103365685 A CN103365685 A CN 103365685A
- Authority
- CN
- China
- Prior art keywords
- program
- property parameters
- administrator right
- described target
- super authority
- 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
Links
Images
Landscapes
- Stored Programmes (AREA)
Abstract
本发明实施例公开了一种基于android超级权限方法,包括运行目标程序;运行属性参数设置函数设置所述目标程序的属性参数,使得所述目标程序拥有管理员权限;通过所述拥有管理员权限的目标程序运行操作命令。本发明实施例还公开了一种基于android超级权限装置。采用本发明,具有可通过运行属性参数设置函数设置属性参数,以达到在一般用户模式下获取超级权限的优点。
Description
技术领域
本发明涉及移动终端领域,尤其涉及一种基于android超级权限方法和装置。
背景技术
Android(由Google公司和开放手机联盟领导及开发的一种操作系统)系统中,每个文件都有自己的用户和组,并且每个文件都有自己的基本权限。
Android有两个重要模式,eng模式和user模式,在eng模式下,基本程序的用户和组都是root(管理员),可以进行任意的操作,当需要修改一些系统程序时,例如修改了Settings.apk,只需要修改这个程序,编译,首先通过adb remount命令把android的system分区重新挂载为可读写的分区,然后通过adb pushSettings.apk/system/app把Settings.apk写入android平板或者手机/system/app目录下。但是在user模式下,安全级别提高,系统程序的用户和组不是root,并且重要的目录都不具有可写权限,adbd程序的用户和组就是普通用户shell(普通用户),所以无法使用push命令,同时由于system分区是只读的,不能把文件写入到system分区,所以需要重新烧录整个system.img,速度很慢。如果想在user模式下的android系统执行某个命令,由于命令程序的用户和组不是root导致无法执行普通命令。例如,当要查看内核信息时,输入cat/proc/kmsg会提示权限不足。
发明内容
本发明实施例提供一种基于android超级权限方法及装置。可通过运行属性参数设置函数设置属性参数,以达到在一般用户模式下获取超级权限的目的。
本发明实施例提供了一种基于android超级权限方法,包括:
运行目标程序;
运行属性参数设置函数设置所述目标程序的属性参数,使得所述目标程序拥有管理员权限;
通过所述拥有管理员权限的目标程序运行操作命令。
进一步的,当所述目标程序为adbd程序时,所述运行属性参数设置函数设置所述目标程序的属性参数,将使得所述目标程序拥有管理员权限包括:
运行属性参数设置函数property_set设置adbd程序的属性参数sky.root.service,使得所述adbd程序拥有管理员权限。
进一步的,当所述目标程序为挂载模块程序时,所述运行属性参数设置函数设置所述目标程序的属性参数,使得所述目标程序拥有管理员权限包括:
运行属性参数设置函数setuid和setgid设置挂载模块程序的属性参数uid和gid,使得所述挂载模块程序拥有管理员权限。
进一步的,当所述目标程序为超级权限程序时,所述运行属性参数设置函数设置所述目标程序的属性参数,使得所述目标程序拥有管理员权限包括:
运行属性参数设置函数setuid和setgid设置超级权限程序的属性参数uid和gid,使得所述超级权限程序拥有管理员权限。
一种基于android超级权限装置,包括:
运行程序模块,用于运行目标程序;
设置模块,用于设置所述目标程序的属性参数,使得所述目标程序拥有管理员权限;
运行命令模块,用于通过所述拥有管理员权限的目标程序运行操作命令。
进一步的,所述设置模块包括:
Adbd程序设置单元,用于运行属性参数设置函数property_set设置adbd程序的属性参数sky.root.service,使得所述adbd程序拥有管理员权限。
进一步的,所述设置模块包括:
挂载模块程序设置单元,用于运行属性参数设置函数setuid和setgid设置挂载模块程序的属性参数uid和gid,使得所述挂载模块程序拥有管理员权限。
进一步的,所述设置模块包括:
超级权限程序设置单元,用于运行属性参数设置函数setuid和setgid设置超级权限程序的属性参数uid和gid,使得所述超级权限程序拥有管理员权限。
实施本发明实施例可通过运行属性参数设置函数设置属性参数,以达到在一般用户模式下获取超级权限的目的。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明一种基于android超级权限第一实施例流程图;
图2是本发明一种基于android超级权限第二实施例流程图;
图3本发明一种基于android超级权限第三实施例流程图;
图4本发明一种基于android超级权限第四实施例流程图;
图5是本发明一种基于android超级权限装置的实施例示意图;
图6是本发明一种基于android超级权限装置的设置模块实施例示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明基于android超级权限方法第一实施例流程如图1所示,其可包括:
步骤101:运行目标程序。所述目标程序可以包括adbd程序、挂载模块程序和超级权限程序等。其中adbd为android的调试进程,当电脑需要连接android时,电脑上需要安装adb程序。adbd就是android终端侧处理来自电脑端的adb命令的程序。当电脑连接上android手机或者android平板,用户可以向android输入命令。挂载模块程序用于将一个设备(通常是存储设备)挂接到一个已存在的目录上,然后通过访问这个目录来访问存储设备。超级权限程序用于对命令或程序赋予管理员权限。
步骤102:运行属性参数设置函数设置所述目标程序的属性参数,使得所述目标程序拥有管理员权限。当所述目标程序为adbd程序时,运行属性参数设置函数property_set设置adbd程序的属性参数sky.root.service,使得所述adbd程序拥有管理员权限。当所述目标程序为挂载模块程序时,运行属性参数设置函数setuid和setgid设置挂载模块程序的属性参数uid和gid,使得所述挂载模块程序拥有管理员权限。当所述目标程序为超级权限程序时,运行属性参数设置函数setuid和setgid设置超级权限程序的属性参数uid和gid,使得所述超级权限程序拥有管理员权限。
步骤103:通过所述拥有管理员权限的目标程序运行操作命令。例如,adbd程序拥有管理员权限后,执行命令adb push Settings.apk/system/app,把Settings.apk写入到android的/system/app目录下。挂载模块程序拥有管理员权限后,remount程序就以管理员权限运行,可以把分区重新挂载为可读写的分区。超级权限程序拥有管理员权限后,命令cat/proc/kmsg通过exec函数来执行,cat/proc/kmsg是运行在sudo程序里的,而sudo的用户和组都是管理员,从而达到命令能够顺利执行。
实施本发明实施例可通过运行属性参数设置函数设置属性参数,以达到在一般用户模式下获取超级权限的目的。
本发明基于android超级权限方法的第二实施例流程如图2所示:
步骤201:运行目标程序。本实施例中的目标程序为adbd程序。
步骤202:运行属性参数设置函数property_set设置adbd程序的属性参数sky.root.service,使得所述adbd程序拥有管理员权限。当用户输入adb root命令后,运行属性参数设置函数property_set,adbd程序的属性参数sky.root.service被设置为1,使得所述adbd程序拥有管理员权限。
步骤203:通过所述拥有管理员权限的目标程序运行操作命令。例如,adbd程序拥有管理员权限后,执行命令adb push Settings.apk/system/app,把Settings.apk写入到android的/system/app目录下。
实施本发明实施例可通过运行属性参数设置函数property_set设置属性参数sky.root.service,以达到adbd程序在一般用户模式下获取超级权限的目的。
本发明基于android超级权限方法的第三实施例流程如图3所示:
步骤301:运行目标程序。本实施例中的目标程序为挂载模块程序。
步骤302:运行属性参数设置函数setuid和setgid设置挂载模块程序的属性参数uid和gid,使得所述挂载模块程序拥有管理员权限。在adb shell里面输入remount<分区>,remount的用户和组通过setuid和setgid函数将uid和gid参数设置为0,使得所述挂载模块程序拥有管理员权限。
步骤303:通过所述拥有管理员权限的目标程序运行操作命令。所述挂载模块程序拥有管理员权限后,remount程序就以管理员权限运行,可以把分区重新挂载为可读写的分区。
实施本发明实施例可通过运行属性参数设置函数setuid和setgid设置属性参数uid和gid,以达到挂载模块程序在一般用户模式下获取超级权限的目的。
本发明基于android超级权限方法的第四实施例流程如图4所示:
步骤401:运行目标程序。本实施例中的目标程序为超级权限程序。
步骤402:运行属性参数设置函数setuid和setgid设置超级权限程序的属性参数uid和gid,使得所述超级权限程序拥有管理员权限。在adb shell里输入sudocat/proc/kmsg命令,cat/proc/kmsg是查看内核调试信息的命令,在此作为sudo程序的参数,而sudo运行时,通过setuid和setgid函数将uid和gid参数设置为0,使得所述超级权限程序拥有管理员权限。
步骤403:通过所述拥有管理员权限的目标程序运行操作命令。超级权限程序拥有管理员权限后,命令cat/proc/kmsg通过exec函数来执行,cat/proc/kmsg是运行在sudo程序里的,而sudo的用户和组都是管理员,从而达到命令能够顺利执行。
实施本发明实施例可通过运行属性参数设置函数setuid和setgid设置属性参数uid和gid,以达到超级权限程序在一般用户模式下获取超级权限的目的。
与本发明基于android超级权限方法的实施例相对应,本发明还提供了基于android超级权限装置实施例。
本发明基于android超级权限装置的第一实施例框图如图5所示,本发明实施例中的基于android超级权限装置可以实现在平板电脑、手机上,该装置至少可以包括:运行程序模块310、设置模块320、运行命令模块330。其中:
运行程序模块310,用于运行目标程序。所述目标程序可以包括adbd程序、挂载模块程序和超级权限程序等。
设置模块320,用于设置所述目标程序的属性参数,使得所述目标程序拥有管理员权限。当所述目标程序为adbd程序时,设置模块320运行属性参数设置函数property_set设置adbd程序的属性参数sky.root.service,使得所述adbd程序拥有管理员权限。当所述目标程序为挂载模块程序时,设置模块320运行属性参数设置函数setuid和setgid设置挂载模块程序的属性参数uid和gid,使得所述挂载模块程序拥有管理员权限。当所述目标程序为超级权限程序时,设置模块320运行属性参数设置函数setuid和setgid设置超级权限程序的属性参数uid和gid,使得所述超级权限程序拥有管理员权限。
运行命令模块330,用于通过所述拥有管理员权限的目标程序运行操作命令。例如,adbd程序拥有管理员权限后,运行命令模块330执行命令adb pushSettings.apk/system/app,把Settings.apk写入到android的/system/app目录下。挂载模块程序拥有管理员权限后,remount程序就以管理员权限运行,运行命令模块330可以把分区重新挂载为可读写的分区。超级权限程序拥有管理员权限后,运行命令模块330通过exec函数来执行命令cat/proc/kmsg,cat/proc/kmsg是运行在sudo程序里的,而sudo的用户和组都是管理员,从而达到命令能够顺利执行。
具体的,如图6所示,所述设置模块320至少包括:
Adbd程序设置单元321,用于运行属性参数设置函数property_set设置adbd程序的属性参数sky.root.service,使得所述adbd程序拥有管理员权限。当用户输入adb root命令后,Adbd程序设置单元321运行属性参数设置函数property_set,adbd程序的属性参数sky.root.service被设置为1,使得所述adbd程序拥有管理员权限。
挂载模块程序设置单元322,用于运行属性参数设置函数setuid和setgid设置挂载模块程序的属性参数uid和gid,使得所述挂载模块程序拥有管理员权限。挂载模块程序设置单元322在adb shell里面输入remount<分区>,remount的用户和组通过setuid和setgid函数将uid和gid参数设置为0,使得所述挂载模块程序拥有管理员权限。
超级权限程序设置单元323,用于运行属性参数设置函数setuid和setgid设置超级权限程序的属性参数uid和gid,使得所述超级权限程序拥有管理员权限。超级权限程序设置单元323在adb shell里输入sudo cat/proc/kmsg命令,cat/proc/kmsg是查看内核调试信息的命令,在此作为sudo程序的参数,而sudo运行时,通过setuid和setgid函数将uid和gid参数设置为0,使得所述超级权限程序拥有管理员权限。
实施本发明实施例可通过运行属性参数设置函数设置属性参数,以达到在一般用户模式下获取超级权限的目的。
本发明实施例的模块或单元,可以通过通用集成电路,例如CPU(CentralProcessing Unit,中央处理器),或通过ASIC(Application Specific IntegratedCircuit,专用集成电路)来实现。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)或随机存储记忆体(Random Access Memory,RAM)等。
以上所揭露的仅为本发明较佳实施例而已,当然不能以此来限定本发明之权利范围,因此依本发明权利要求所作的等同变化,仍属本发明所涵盖的范围。
Claims (8)
1.一种基于android超级权限方法,其特征在于,包括:
运行目标程序;
运行属性参数设置函数设置所述目标程序的属性参数,使得所述目标程序拥有管理员权限;
通过所述拥有管理员权限的目标程序运行操作命令。
2.根据权利要求1所述的方法,其特征在于,当所述目标程序为adbd程序时,所述运行属性参数设置函数设置所述目标程序的属性参数,将使得所述目标程序拥有管理员权限包括:
运行属性参数设置函数property_set设置adbd程序的属性参数sky.root.service,使得所述adbd程序拥有管理员权限。
3.根据权利要求1所述的方法,其特征在于,当所述目标程序为挂载模块程序时,所述运行属性参数设置函数设置所述目标程序的属性参数,使得所述目标程序拥有管理员权限包括:
运行属性参数设置函数setuid和setgid设置挂载模块程序的属性参数uid和gid,使得所述挂载模块程序拥有管理员权限。
4.根据权利要求1所述的方法,其特征在于,当所述目标程序为超级权限程序时,所述运行属性参数设置函数设置所述目标程序的属性参数,使得所述目标程序拥有管理员权限包括:
运行属性参数设置函数setuid和setgid设置超级权限程序的属性参数uid和gid,使得所述超级权限程序拥有管理员权限。
5.一种基于android超级权限装置,其特征在于,包括:
运行程序模块,用于运行目标程序;
设置模块,用于设置所述目标程序的属性参数,使得所述目标程序拥有管理员权限;
运行命令模块,用于通过所述拥有管理员权限的目标程序运行操作命令。
6.根据权利要求5所述的装置,其特征在于,所述设置模块包括:
Adbd程序设置单元,用于运行属性参数设置函数property_set设置adbd程序的属性参数sky.root.service,使得所述adbd程序拥有管理员权限。
7.根据权利要求5所述的装置,其特征在于,所述设置模块包括:
挂载模块程序设置单元,用于运行属性参数设置函数setuid和setgid设置挂载模块程序的属性参数uid和gid,使得所述挂载模块程序拥有管理员权限。
8.根据权利要求5所述的装置,其特征在于,所述设置模块包括:
超级权限程序设置单元,用于运行属性参数设置函数setuid和setgid设置超级权限程序的属性参数uid和gid,使得所述超级权限程序拥有管理员权限。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2013102162608A CN103365685A (zh) | 2013-06-03 | 2013-06-03 | 一种基于android超级权限方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2013102162608A CN103365685A (zh) | 2013-06-03 | 2013-06-03 | 一种基于android超级权限方法和装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN103365685A true CN103365685A (zh) | 2013-10-23 |
Family
ID=49367115
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2013102162608A Pending CN103365685A (zh) | 2013-06-03 | 2013-06-03 | 一种基于android超级权限方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103365685A (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103997684A (zh) * | 2014-05-13 | 2014-08-20 | 深圳创维数字技术股份有限公司 | 一种更新操作系统方法和装置 |
CN107491669A (zh) * | 2017-02-16 | 2017-12-19 | 东软集团股份有限公司 | 超级用户权限的获取方法及装置 |
CN108279855A (zh) * | 2015-03-05 | 2018-07-13 | 青岛海信宽带多媒体技术有限公司 | 一种读写存储设备的方法 |
CN109977663A (zh) * | 2019-03-14 | 2019-07-05 | 四川长虹电器股份有限公司 | 防止Android智能终端设备被恶意root提权的方法 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20060253909A1 (en) * | 2005-05-06 | 2006-11-09 | Mikhail Cherepov | Method to control and secure setuid/gid executables and processes |
CN102981835A (zh) * | 2012-11-02 | 2013-03-20 | 福州博远无线网络科技有限公司 | 安卓应用程序永久获取Root权限的方法 |
CN103067463A (zh) * | 2012-12-19 | 2013-04-24 | 新浪网技术(中国)有限公司 | 用户root权限集中管理系统和管理方法 |
-
2013
- 2013-06-03 CN CN2013102162608A patent/CN103365685A/zh active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20060253909A1 (en) * | 2005-05-06 | 2006-11-09 | Mikhail Cherepov | Method to control and secure setuid/gid executables and processes |
CN102981835A (zh) * | 2012-11-02 | 2013-03-20 | 福州博远无线网络科技有限公司 | 安卓应用程序永久获取Root权限的方法 |
CN103067463A (zh) * | 2012-12-19 | 2013-04-24 | 新浪网技术(中国)有限公司 | 用户root权限集中管理系统和管理方法 |
Non-Patent Citations (1)
Title |
---|
吴倩 赵晨啸 郭莹: "《Android安全机制解析与应用实践》", 31 May 2013, 机械工业出版社 * |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103997684A (zh) * | 2014-05-13 | 2014-08-20 | 深圳创维数字技术股份有限公司 | 一种更新操作系统方法和装置 |
CN108279855A (zh) * | 2015-03-05 | 2018-07-13 | 青岛海信宽带多媒体技术有限公司 | 一种读写存储设备的方法 |
CN108279855B (zh) * | 2015-03-05 | 2021-07-06 | 青岛海信宽带多媒体技术有限公司 | 一种读写存储设备的方法 |
CN107491669A (zh) * | 2017-02-16 | 2017-12-19 | 东软集团股份有限公司 | 超级用户权限的获取方法及装置 |
CN107491669B (zh) * | 2017-02-16 | 2020-06-05 | 东软集团股份有限公司 | 超级用户权限的获取方法及装置 |
CN109977663A (zh) * | 2019-03-14 | 2019-07-05 | 四川长虹电器股份有限公司 | 防止Android智能终端设备被恶意root提权的方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103049375B (zh) | 一种摄像头在线调试方法 | |
CN104965725B (zh) | 一种基于sd卡的嵌入式设备全自动固件烧写方法 | |
CN202956753U (zh) | 一种嵌入式系统中闪存芯片的编程装置及系统 | |
CN103365685A (zh) | 一种基于android超级权限方法和装置 | |
CN103853586A (zh) | 一种在uefi层实现无线网卡驱动的方法 | |
CN107480327A (zh) | 一种仿真验证方法、装置和电子设备 | |
CN104375933A (zh) | 一种单元测试方法和装置 | |
CN103123605A (zh) | 一种Android平台自动化集成测试方法和装置 | |
CN103677745B (zh) | 一种在龙芯主板中写入和读取设备标识的方法 | |
CN104572394A (zh) | 进程监控方法及装置 | |
CN104063284B (zh) | 运行应用程序的方法和装置 | |
KR102128472B1 (ko) | 인-스토리지 컴퓨팅 동작들을 수행할 수 있는 스토리지 장치, 이의 동작 방법, 및 이를 포함하는 시스템 | |
CN105955773A (zh) | 系统升级方法和装置 | |
CN104461638A (zh) | 一种基于Bootloader的XFP光模块升级方法 | |
CN103560934A (zh) | 一种电力猫生产测试方法及装置 | |
CN109344082B (zh) | 一种自动测试寄存器的方法与系统 | |
CN103902903A (zh) | 基于动态沙箱环境的恶意代码分析方法及系统 | |
CN104461603A (zh) | 一种信息处理方法及电子设备 | |
CN106055935A (zh) | 一种进程控制方法、装置及电子设备 | |
EP3314560B1 (en) | Transmitting application data for on-device demos | |
CN102750167B (zh) | 应用程序启动方法、装置和计算机系统 | |
CN109376045A (zh) | 一种bios参数自动化验证装置及验证方法 | |
JP7001581B2 (ja) | 遠隔端末ユニットを動作させるための方法及びシステム | |
CN104765626A (zh) | 一种固件程序烧写方法及装置 | |
CN204423360U (zh) | 一种嵌入式系统的调试系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20131023 |