CN112199662A - 一种基于自适配插件的权限校验系统 - Google Patents
一种基于自适配插件的权限校验系统 Download PDFInfo
- Publication number
- CN112199662A CN112199662A CN202011424774.9A CN202011424774A CN112199662A CN 112199662 A CN112199662 A CN 112199662A CN 202011424774 A CN202011424774 A CN 202011424774A CN 112199662 A CN112199662 A CN 112199662A
- Authority
- CN
- China
- Prior art keywords
- module
- plug
- permission
- interface
- name
- 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.)
- Granted
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/30—Authentication, i.e. establishing the identity or authorisation of security principals
- G06F21/44—Program or device authentication
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/57—Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/604—Tools and structures for managing or administering access control systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
- G06F2009/45587—Isolation or security of virtual machine instances
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2221/00—Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/21—Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/2141—Access rights, e.g. capability lists, access control lists, access tables, access matrices
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Hardware Design (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Health & Medical Sciences (AREA)
- Bioethics (AREA)
- Health & Medical Sciences (AREA)
- Automation & Control Theory (AREA)
- Stored Programmes (AREA)
Abstract
本发明公开了一种基于自适配插件的权限校验系统,包括配置模块、权限抽取适配模块、插件库、虚拟机过滤模块以及虚拟机权限校验模块。该基于自适配插件的权限校验系统利用虚拟机过滤模块以及虚拟机权限校验模块能够在进行本地接口调用时转发框架进行权限验证,使原本准备绕开框架验证的调用再回到框架进行验证,确保用户隐私和安全。
Description
技术领域
本发明涉及一种Android系统安全加固系统,尤其是一种基于自适配插件的权限校验系统。
背景技术
Android是当前移动平台使用最为广泛的操作系统,也是目前遭受恶意软件攻击最多的平台。Android系统的安全性研究已成为热点话题。现如今国内外移动平台环境日益恶化,Android病毒软件呈爆发式增长,提高Android系统的安全性显得十分必要。更有甚者,许多软件开发厂家以利用Android安全缺陷,绕过Android系统验证实现某些功能,美其名曰“黑科技”。Android系统安全措施也在不断的提升,安全校验也分布在系统的多个层面。针对Android应用的权限校验,分为两个层面,框架层面和本地库层面;在框架层面,Android系统的权限校验可以说做的比较健壮,精细到了模块级、类级,甚至于方法级别。然而,对于本地库方法的校验则较为宽松;粒度过大,大多仅仅限制到目录级别,最小的限制级别也在单个库级别。相较于框架层面,权限校验颗粒偏大。而系统诸多的功能的实现,往往是框架层面在做权限校验,进而调用本地库执行真正的功能。这样,就导致诸多应用可以绕过框架安全机制,直接执行本地库方法调用,进行各种系统操作,给用户隐私和安全造成潜在威胁。
发明内容
发明目的:提供一种基于自适配插件的权限校验系统,在应用虚拟机引入了校验机制,能够将主动调用的本地接口转发至框架进行权限校验,确保所有的本地接口调用均经过框架的权限校验。
为了实现上述发明目的,本发明提供了一种基于自适配插件的权限校验系统,包括配置模块、权限抽取适配模块、插件库、虚拟机过滤模块以及虚拟机权限校验模块;
配置模块用于根据各类应用虚拟机的调用需求选定当前安卓系统中需要进行权限校验的本地库;
权限抽取适配模块用于识别当前安卓系统的平台架构,再根据识别的平台架构在插件库中选择相兼容的抽取插件模块;
插件库用于根据权限抽取适配模块的选择启用相应的抽取插件模块,抽取插件模块用于从配置模块选定的各个本地库中提取出需要权限校验的接口名称和权限名称,并将提取出的接口名称和权限名称对应存储至接口权限映射表中;
虚拟机过滤模块用于在应用虚拟机调用接口过程中查询接口权限映射表,判断当前调用的接口是否在接口权限映射表中,若在接口权限映射表中,则进一步查询该接口对应的权限,并调用虚拟机权限校验模块对查询到的权限进行校验,则反馈此接口无需权限验证,可直接调用;
虚拟机权限校验模块用于在调用时将查询到的权限以及应用虚拟机信息转送至安卓系统框架层进行权限校验,从而确认用户或安卓系统是否授予此应用虚拟机相应的权限。
进一步的,插件库设置有插件扩展接口,用于自定义扩展插件库中的抽取插件模块。
进一步的,抽取插件模块在从本地库中提取接口名称和权限名称时,根据各个接口结构体的跳转指令向下追踪,若追踪到的是本地接口或者系统调用时,则将该接口结构体的接口名称和对应的权限名称存储至接口权限映射表中。
进一步的,在接口权限映射表中还包括本地库的库名称,且库名称、接口名称以及权限名称关联存储。
进一步的,权限抽取适配模块在系统首次开机或者升级后开机时执行一次。
进一步的,抽取插件模块包括ARM抽取插件模块、X86抽取插件模块以及MIPS抽取插件模块。
进一步的,虚拟机过滤模块以及虚拟机权限校验模块均运行于应用虚拟机中。
进一步的,配置模块、权限抽取适配模块以及抽取插件模块的执行主体均为进程孵化器,使得应用虚拟机直接由自身内存信息中查询接口权限映射表。
本发明与现有技术相比,其有益效果是:利用配置模块选定当前安卓系统中需要进行权限校验的本地库,只需要设备厂商介入即可,无需用户参与,所以无论针对消费级设备,还是工业级设备,均适用;利用权限抽取适配模块能够识别当前安卓系统的平台架构,从而根据平台架构在插件库中选择相兼容的抽取插件模块,确保接口名称和权限名称提取的可靠性;利用虚拟机过滤模块以及虚拟机权限校验模块能够在进行本地接口调用时转发框架进行权限验证,使原本准备绕开框架验证的调用再回到框架进行验证,确保用户隐私和安全。
附图说明
图1为本发明的系统结构示意图。
具体实施方式
下面结合附图对本发明技术方案进行详细说明,但是本发明的保护范围不局限于所述实施例。
实施例1:
如图1所述,本发明公开的基于自适配插件的权限校验系统包括;配置模块、权限抽取适配模块、插件库、虚拟机过滤模块以及虚拟机权限校验模块;
配置模块用于根据各类应用虚拟机的调用需求选定当前安卓系统中需要进行权限校验的本地库;
权限抽取适配模块用于识别当前安卓系统的平台架构,再根据识别的平台架构在插件库中选择相兼容的抽取插件模块;
插件库用于根据权限抽取适配模块的选择启用相应的抽取插件模块,抽取插件模块用于从配置模块选定的各个本地库中提取出需要权限校验的接口名称和权限名称,并将提取出的接口名称和权限名称对应存储至接口权限映射表中;
虚拟机过滤模块用于在应用虚拟机调用接口过程中查询接口权限映射表,判断当前调用的接口是否在接口权限映射表中,若在接口权限映射表中,则进一步查询该接口对应的权限,并调用虚拟机权限校验模块对查询到的权限进行校验,则反馈此接口无需权限验证,可直接调用;
虚拟机权限校验模块用于在调用时将查询到的权限以及应用虚拟机信息转送至安卓系统框架层进行权限校验,从而确认用户或安卓系统是否授予此应用虚拟机相应的权限。
利用配置模块选定当前安卓系统中需要进行权限校验的本地库,只需要设备厂商介入即可,无需用户参与,所以无论针对消费级设备,还是工业级设备,均适用;利用权限抽取适配模块能够识别当前安卓系统的平台架构,从而根据平台架构在插件库中选择相兼容的抽取插件模块,确保接口名称和权限名称提取的可靠性;利用虚拟机过滤模块以及虚拟机权限校验模块能够在进行本地接口调用时转发框架进行权限验证,使原本准备绕开框架验证的调用再回到框架进行验证,确保用户隐私和安全。
进一步的,插件库设置有插件扩展接口,用于自定义扩展插件库中的抽取插件模块。利用扩展插件接口,能够支持自主扩展插件库,从而便于自定义出其他抽取插件模块,能够精准的提取出权限和接口之间的映射。
进一步的,抽取插件模块在从本地库中提取接口名称和权限名称时,根据各个接口结构体的跳转指令向下追踪,若追踪到的是本地接口或者系统调用时,则将该接口结构体的接口名称和对应的权限名称存储至接口权限映射表中。抽取插件模块的追踪是基于虚拟机的链接器筛选框架服务及其对外接口方法指令或字节码,比如enforceCallingPermission、enforcePermission等等。
进一步的,在接口权限映射表中还包括本地库的库名称,且库名称、接口名称以及权限名称关联存储。通过关联存储能够找到接口名称、权限名称以及库名称的对应关系。
进一步的,权限抽取适配模块在系统首次开机或者升级后开机时执行一次。执行一次即可获得接口权限映射表,满足后续的接口调用查询。
进一步的,抽取插件模块包括但不限于ARM抽取插件模块、X86抽取插件模块以及MIPS抽取插件模块。
进一步的,虚拟机过滤模块以及虚拟机权限校验模块均运行于应用虚拟机中。通过进程孵化器将接口权限映射表映射至应用虚拟机,无需通过进程孵化器进行查找,进而能够有效提高检验的执行效率。
进一步的,配置模块、权限抽取适配模块以及抽取插件模块的执行主体均为进程孵化器,从而依Android系统的特性,由进程孵化器生成接口权限映射表,使得应用虚拟机直接由自身内存信息中查询接口权限映射表,无需执行远程过程调用即可确定是否需要进行框架权限校验,对系统和应用的执行没有性能损失。
如上所述,尽管参照特定的优选实施例已经表示和表述了本发明,但其不得解释为对本发明自身的限制。在不脱离所附权利要求定义的本发明的精神和范围前提下,可对其在形式上和细节上作出各种变化。
Claims (8)
1.一种基于自适配插件的权限校验系统,其特征在于:包括配置模块、权限抽取适配模块、插件库、虚拟机过滤模块以及虚拟机权限校验模块;
配置模块用于根据各类应用虚拟机的调用需求选定当前安卓系统中需要进行权限校验的本地库;
权限抽取适配模块用于识别当前安卓系统的平台架构,再根据识别的平台架构在插件库中选择相兼容的抽取插件模块;
插件库用于根据权限抽取适配模块的选择启用相应的抽取插件模块,抽取插件模块用于从配置模块选定的各个本地库中提取出需要权限校验的接口名称和权限名称,并将提取出的接口名称和权限名称对应存储至接口权限映射表中;
虚拟机过滤模块用于在应用虚拟机调用接口过程中查询接口权限映射表,判断当前调用的接口是否在接口权限映射表中,若在接口权限映射表中,则进一步查询该接口对应的权限,并调用虚拟机权限校验模块对查询到的权限进行校验,若不在接口权限映射表中,则反馈此接口无需权限验证,可直接调用;
虚拟机权限校验模块用于在调用时将查询到的权限以及应用虚拟机信息转送至安卓系统框架层进行权限校验,从而确认用户或安卓系统是否授予此应用虚拟机相应的权限。
2.根据权利要求1所述的基于自适配插件的权限校验系统,其特征在于:插件库设置有插件扩展接口,用于自定义扩展插件库中的抽取插件模块。
3.根据权利要求1所述的基于自适配插件的权限校验系统,其特征在于:抽取插件模块在从本地库中提取接口名称和权限名称时,根据各个接口结构体的跳转指令向下追踪,若追踪到的是本地接口或者系统调用时,则将该接口结构体的接口名称和对应的权限名称存储至接口权限映射表中。
4.根据权利要求1所述的基于自适配插件的权限校验系统,其特征在于:在接口权限映射表中还包括本地库的库名称,且库名称、接口名称以及权限名称关联存储。
5.根据权利要求1所述的基于自适配插件的权限校验系统,其特征在于:权限抽取适配模块在系统首次开机或者升级后开机时执行一次。
6.根据权利要求1所述的基于自适配插件的权限校验系统,其特征在于:抽取插件模块包括ARM抽取插件模块、X86抽取插件模块以及MIPS抽取插件模块。
7.根据权利要求1所述的基于自适配插件的权限校验系统,其特征在于:虚拟机过滤模块以及虚拟机权限校验模块均运行于应用虚拟机中。
8.根据权利要求1所述的基于自适配插件的权限校验系统,其特征在于:配置模块、权限抽取适配模块以及抽取插件模块的执行主体均为进程孵化器,使得应用虚拟机直接由自身内存信息中查询接口权限映射表。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011424774.9A CN112199662B (zh) | 2020-12-09 | 2020-12-09 | 一种基于自适配插件的权限校验系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011424774.9A CN112199662B (zh) | 2020-12-09 | 2020-12-09 | 一种基于自适配插件的权限校验系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112199662A true CN112199662A (zh) | 2021-01-08 |
CN112199662B CN112199662B (zh) | 2021-02-19 |
Family
ID=74033778
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011424774.9A Active CN112199662B (zh) | 2020-12-09 | 2020-12-09 | 一种基于自适配插件的权限校验系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112199662B (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114356786A (zh) * | 2022-03-11 | 2022-04-15 | 中电云数智科技有限公司 | 一种基于接口自动生成的iam接口权限验证方法和装置 |
CN114936051A (zh) * | 2022-05-31 | 2022-08-23 | 金陵科技学院 | 一种基于Android系统多模态生物识别终端进行增值应用的方法 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105094996A (zh) * | 2015-07-21 | 2015-11-25 | 电子科技大学 | 基于动态权限验证的Android系统安全增强方法及系统 |
US20160350525A1 (en) * | 2014-01-26 | 2016-12-01 | Zte Corporation | Application Program Management Method, Device, Terminal, and Computer Storage Medium |
CN106778208A (zh) * | 2016-12-01 | 2017-05-31 | 深圳Tcl新技术有限公司 | 应用程序的访问处理方法及装置 |
CN109918061A (zh) * | 2019-02-13 | 2019-06-21 | 福建星网智慧软件有限公司 | 基于安卓系统的跨平台接口中间件实现方法和装置 |
CN110557395A (zh) * | 2019-09-06 | 2019-12-10 | 东信和平科技股份有限公司 | 一种安全元件访问接口协议适配方法及装置 |
CN111353146A (zh) * | 2020-05-25 | 2020-06-30 | 腾讯科技(深圳)有限公司 | 应用程序敏感权限的检测方法、装置、设备和存储介质 |
-
2020
- 2020-12-09 CN CN202011424774.9A patent/CN112199662B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20160350525A1 (en) * | 2014-01-26 | 2016-12-01 | Zte Corporation | Application Program Management Method, Device, Terminal, and Computer Storage Medium |
CN105094996A (zh) * | 2015-07-21 | 2015-11-25 | 电子科技大学 | 基于动态权限验证的Android系统安全增强方法及系统 |
CN106778208A (zh) * | 2016-12-01 | 2017-05-31 | 深圳Tcl新技术有限公司 | 应用程序的访问处理方法及装置 |
CN109918061A (zh) * | 2019-02-13 | 2019-06-21 | 福建星网智慧软件有限公司 | 基于安卓系统的跨平台接口中间件实现方法和装置 |
CN110557395A (zh) * | 2019-09-06 | 2019-12-10 | 东信和平科技股份有限公司 | 一种安全元件访问接口协议适配方法及装置 |
CN111353146A (zh) * | 2020-05-25 | 2020-06-30 | 腾讯科技(深圳)有限公司 | 应用程序敏感权限的检测方法、装置、设备和存储介质 |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114356786A (zh) * | 2022-03-11 | 2022-04-15 | 中电云数智科技有限公司 | 一种基于接口自动生成的iam接口权限验证方法和装置 |
CN114936051A (zh) * | 2022-05-31 | 2022-08-23 | 金陵科技学院 | 一种基于Android系统多模态生物识别终端进行增值应用的方法 |
CN114936051B (zh) * | 2022-05-31 | 2023-06-09 | 金陵科技学院 | 一种基于Android系统多模态生物识别终端进行增值应用的方法 |
Also Published As
Publication number | Publication date |
---|---|
CN112199662B (zh) | 2021-02-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112199662B (zh) | 一种基于自适配插件的权限校验系统 | |
CN103744686B (zh) | 智能终端中应用安装的控制方法和系统 | |
CN103067392B (zh) | 一种基于Android终端的安全访问控制方法 | |
CN102883048B (zh) | 基于Android操作系统的车载蓝牙通信方法及装置 | |
CN108121594B (zh) | 一种进程管理方法及装置 | |
CN103595867B (zh) | 基于多卡识别的应用程序实现方法及装置 | |
CN103699839A (zh) | 一种内核级rootkit检测处理方法及系统 | |
CN104298921A (zh) | 动画源文件安全漏洞检查方法及装置 | |
CN113138836B (zh) | 一种使用基于Docker容器的防逃逸系统的防逃逸方法 | |
CN108694320A (zh) | 一种多安全环境下敏感应用动态度量的方法及系统 | |
CN102982217B (zh) | 丝印的处理方法和装置 | |
CN202652255U (zh) | 一种sql注入安全防护系统 | |
CN113779578B (zh) | 移动端应用的智能混淆方法和系统 | |
CN107491298A (zh) | 一种按钮对象自动扫描方法及系统 | |
CN103220662A (zh) | 一种应用程序的处理方法和移动终端 | |
CN105453104A (zh) | 系统保护用文件安全管理装置和管理方法 | |
CN105809027B (zh) | 应用程序的权限控制方法及装置 | |
CN111783082A (zh) | 进程的追溯方法、装置、终端和计算机可读存储介质 | |
CN114510723B (zh) | 一种智能合约权限管理漏洞检测方法及装置 | |
CN106127054A (zh) | 一种面向智能设备控制指令的系统级安全防护方法 | |
CN104965780A (zh) | 数据处理方法与系统 | |
CN105701415A (zh) | 一种移动终端内核权限管理系统及方法 | |
CN105893845B (zh) | 一种数据处理方法及装置 | |
CN104516752A (zh) | 一种信息处理方法及电子设备 | |
CN111400281B (zh) | 一种面向oss对象存储的gis数据质检与入库方法 |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
CP01 | Change in the name or title of a patent holder | ||
CP01 | Change in the name or title of a patent holder |
Address after: No.15 Xinghuo Road, Jiangbei new district, Nanjing, Jiangsu Province, 210031 Patentee after: Dongji Technology Co.,Ltd. Address before: No.15 Xinghuo Road, Jiangbei new district, Nanjing, Jiangsu Province, 210031 Patentee before: JIANGSU SEUIC TECHNOLOGY Co.,Ltd. |