CN111008375A - 一种数据保护方法及装置 - Google Patents

一种数据保护方法及装置 Download PDF

Info

Publication number
CN111008375A
CN111008375A CN201911159022.1A CN201911159022A CN111008375A CN 111008375 A CN111008375 A CN 111008375A CN 201911159022 A CN201911159022 A CN 201911159022A CN 111008375 A CN111008375 A CN 111008375A
Authority
CN
China
Prior art keywords
data
api
application
application program
access request
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
Application number
CN201911159022.1A
Other languages
English (en)
Other versions
CN111008375B (zh
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.)
Beijing Kingsoft Internet Security Software Co Ltd
Original Assignee
Beijing Kingsoft Internet Security Software 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 Beijing Kingsoft Internet Security Software Co Ltd filed Critical Beijing Kingsoft Internet Security Software Co Ltd
Priority to CN201911159022.1A priority Critical patent/CN111008375B/zh
Publication of CN111008375A publication Critical patent/CN111008375A/zh
Application granted granted Critical
Publication of CN111008375B publication Critical patent/CN111008375B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

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/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/51Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems at application loading time, e.g. accepting, rejecting, starting or inhibiting executable software based on integrity or source reliability
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing 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/2141Access rights, e.g. capability lists, access control lists, access tables, access matrices

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Telephone Function (AREA)

Abstract

本申请实施例公开了一种数据保护方法及装置,该方法包括接管所述移动终端的操作系统的根权限;根据所述根权限,将所述操作系统的应用程序接口API中的第一API替换为第二API,所述第一API为所述API中的部分或者全部;当接收针对所述第一API发起的第一数据访问请求时,通过所述第二API反馈第二数据;所述第一数据访问请求用于请求访问第一数据,所述第二数据为所述第一数据对应的伪数据。采用本申请实施例,能够有效保护数据,避免发生信息安全问题。

Description

一种数据保护方法及装置
技术领域
本发明涉及计算机技术领域,尤其涉及一种数据保护方法及装置。
背景技术
在基于xposed框架获取手机操作系统的ROOT权限前提下,向访问关键数据的应用程序反馈虚假的数据以解决目前手机环境中的信息安全问题。
随着应用程序的多样化发展,移动终端(如智能手机)上一般都会安装多个应用程序(application,app);而基本上在完成每个app的安装之后,都需要用户开放一定数量的访问权限,比如定位信息的获取权限、通讯录信息的获取权限以及摄像头的启用权限等等;甚至在用户拒绝开放权限的情况下,会拒绝用户使用该app,或者限制用户对app的使用。所以,一般为了正常使用app,用户都会默认允许开放相应的权限。但是,在这种情况下很有可能造成用户的隐私泄露、关键信息的泄露等信息安全问题。
因此,如何有效保护数据,避免发生信息安全问题,是亟待解决的问题。
发明内容
本申请实施例提供了一种数据保护方法及装置,旨在有效保护移动终端上的数据,避免发生信息安全问题。
第一方面,本申请实施例提供了一种数据保护方法,应用于移动终端,该方法包括:
接管所述移动终端的操作系统的根权限;
根据所述根权限,将所述操作系统的应用程序接口API中的第一API替换为第二API,所述第一API为所述API中的部分或者全部;
当接收针对所述第一API发起的第一数据访问请求时,通过所述第二API反馈第二数据;所述第一数据访问请求用于请求访问第一数据,所述第二数据为所述第一数据对应的伪数据。
本申请实施例中通过接管移动终端(如智能手机)的根权限(即root权限),在用户限制部分应用程序对某类型数据的访问权限后,替换(即hook)该应用程序对该类型数据的第一API;进一步地,当该部分应用程序中的应用程序发起对该类型数据的访问请求时,实际上该应用程序对接的第二API;在第二API接收到针对该类型数据的访问请求时,将第二数据(与第一数据同类型的虚假数据)发送至该应用程序。综上所述,本方案能够根据用户的选择,针对性地向不同的应用程序开放相应的数据访问权限;对于用户不信赖的应用程序,可以避免该类程序获取到用户的隐私信息(如定位),能够有效保护用户的关键数据,避免发生信息安全问题。
在一种可能的实现方式中,第二数据可以是在接收到第一数据访问请求时,生成的虚假数据;或者第二数据是提前存储的与第一数据同类型的虚假数据。本申请实施例对此不作限定。
在一种可能的实现方式中,所述接管所述移动终端的操作系统的根权限,包括:在接受到接管指令的情况下,根据xposed框架接管所述移动终端的操作系统的根权限。
在一种可能的实现方式中,所述将所述操作系统的应用程序接口API中的第一API替换为第二API之前,还包括:根据所述xposed框架中的xposed模块,生成所述第二API。
在一种可能的实现方式中,所述当接收针对所述第一API发起的第一数据访问请求时,通过所述第二API反馈第二数据之前,包括:根据所述第一数据访问请求和所述xposed框架中的xposed模块,生成所述第一API对应的所述第二API。
在一种可能的实现方式中,所述当接收针对所述第一API发起的第一数据访问请求时,通过所述第二API反馈第二数据,包括:
当接收所述移动终端的应用程序针对所述第一API发起的第一数据访问请求时,判断所述第一数据的数据类型;
根据所述第一数据的数据类型,生成对应类型的所述第二数据;
通过所述第二API向所述应用程序反馈所述第二数据。
在一种可能的实现方式中,所述第一API为所述应用程序针对所述第一数据的API;所述方法还包括:根据所述移动终端接收的第一指令确定第一应用程序,所述第一应用程序为一个或者多个对所述第一数据无访问权限的应用程序;
将所述第一应用程序的第一API替换为所述第二API。
在一种可能的实现方式中,所述方法还包括:
当接收所述第一应用程序针对所述第一API发起的第一数据访问请求时,判断所述第一应用程序对所述第一数据无访问权限;
根据所述第一数据的数据类型,生成对应类型的所述第二数据;
通过所述第二API向所述第一应用程序反馈所述第二数据。
第二方面,本申请实施例提供了一种数据保护装置,应用于移动终端,该装置包括:
接管单元,用于接管所述移动终端的操作系统的根权限;
替换单元,用于根据所述根权限,将所述操作系统的应用程序接口API中的第一API替换为第二API,所述第一API为所述API中的部分或者全部;
反馈单元,用于当接收针对所述第一API发起的第一数据访问请求时,通过所述第二API反馈第二数据;所述第一数据访问请求用于请求访问第一数据,所述第二数据为所述第一数据对应的伪数据。
在一种可能的实现方式中,所述接管单元,具体用于:在接受到接管指令的情况下,根据xposed框架接管所述移动终端的操作系统的根权限。
在一种可能的实现方式中,所述装置还包括第一生成单元,用于:
在所述将所述操作系统的应用程序接口API中的第一API替换为第二API之前,根据所述xposed框架中的xposed模块,生成所述第二API。
在一种可能的实现方式中,所述装置还包括第二生成单元,用于:
在所述当接收针对所述第一API发起的第一数据访问请求时,通过所述第二API反馈第二数据之前,根据所述第一数据访问请求和所述xposed框架中的xposed模块,生成所述第一API对应的所述第二API。
在一种可能的实现方式中,所述反馈单元,具体用于:
当接收所述移动终端的应用程序针对所述第一API发起的第一数据访问请求时,判断所述第一数据的数据类型;
根据所述第一数据的数据类型,生成对应类型的所述第二数据;
通过所述第二API向所述应用程序反馈所述第二数据。
在一种可能的实现方式中,所述第一API为所述应用程序针对所述第一数据的API;所述装置还包括指定单元,用于:
根据所述移动终端接收的第一指令确定第一应用程序,所述第一应用程序为一个或者多个对所述第一数据无访问权限的应用程序;
将所述第一应用程序的第一API替换为所述第二API。
在一种可能的实现方式中,所述装置还包括识别单元,用于:
当接收所述第一应用程序针对所述第一API发起的第一数据访问请求时,判断所述第一应用程序对所述第一数据无访问权限;
根据所述第一数据的数据类型,生成对应类型的所述第二数据;
通过所述第二API向所述第一应用程序反馈所述第二数据。
第三方面,本申请实施例提供了一种终端设备,包括处理器、通信设备、存储器、输入装置和输出装置,所述处理器、通信设备、存储器、输入装置和输出装置相互连接,其中,所述存储器用于存储应用程序代码,所述处理器被配置用于调用所述应用程序代码,执行上述第一方面任一项所述的方法。
第四方面,本申请实施例提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序包括程序指令,所述程序指令当被处理器执行时使所述处理器执行上述第一方面任一项所述的方法。
第五方面,本申请实施例提供了一种计算机程序,所述计算机程序包括程序指令,所述程序指令当被处理器执行时使所述处理器执行上述第一方面任一项所述的方法。
附图说明
下面将对本申请实施例中所需要使用的附图作介绍。
图1是本申请实施例提供的一种数据保护的应用场景示意图;
图2是本申请实施例提供的一种数据保护方法的流程示意图;
图3是本申请实施例提供的另一种数据保护方法的流程示意图;
图4是本申请实施例提供的又一种数据保护方法的流程示意图;
图5是本申请实施例提供的一种数据保护装置的结构示意图;
图6是本申请实施例提供的一种终端设备的结构示意图。
具体实施方式
为了使本领域技术人员更好地理解本发明方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
以下分别进行详细说明。
首先,对本申请中的部分用语进行解释说明,以便于本领域技术人员理解。
(1)应用程序接口(Application Programming Interface,API)是一些预先定义的函数,或指软件系统不同组成部分衔接的约定;提供应用程序与开发人员基于某软件或硬件得以访问一组例程的能力,而又无需访问原码,或理解内部工作机制的细节。
(2)Hook技术,又称钩子函数,在系统没有调用该函数之前,先捕获该消息,钩子函数先得到控制权,这时钩子函数既可以加工处理(或者改变)该函数的执行行为,还可以强制结束消息的传递。即把系统的程序取出并变为自定义的执行代码片段。实现钩子函数,可以有两个步骤:1.利用系统内部提供的接口,通过实现该接口,然后注入进系统(特定场景下使用)。2.动态代理(使用所有场景)。
(3)Xposed框架(Xposed Framework)是一套开源的、在安卓Android高权限模式下运行的框架服务,可以在不修改Android应用程序包(Android application package,APK)的情况下影响程序运行(修改系统)的框架服务,基于它可以制作出许多功能强大的模块,且在功能不冲突的情况下同时运作;比如:直接修改应用程序的界面、自动抢红包、消息防撤回以及运动步数修改等等。
(4)根权限,也叫root权限,是一种系统权限,是Linux和unix系统中的超级管理员用户帐户,该帐户可以操作所有对象。获得root权限之后就意味着已经获得了系统的最高权限,这时候你可以对系统中的任何文件(包括系统文件)执行所有增、删、改、查的操作。而手机root权限是andriod的使用最高权限,获取了root权限,可以轻松的对手机刷机备份还原卸载系统文件等重要操作。
接下来,对本申请提供的一种数据保护的应用场景进行描述。参阅图1,图1是本申请实施例提供的一种数据保护的应用场景示意图。数据保护的架构可以应用于如图1所示的场景中,该场景中包括了移动终端10(图中以智能手机为例)和应用程序A的弹窗11。其中,移动终端10上安装有应用程序A;当用户首次打开新安装的应用程序时,一般会看到如图1所示的类似界面。在进入应用程序A之前,会出现应用程序A的弹窗11,询问用户是否允许应用程序A获取相应的权限(如存储空间的权限、设备信息的获取权限、定位获取权限等等)。只有当用户点击“允许”后,才能进入应用程序A的相应使用界面;否则,无法正常使用应用程序A。
本发明实施例提供的一种数据保护方法,可以应用于前述用户允许应用程序A获取存储空间和设备信息权限之后。在移动终端10安装有xposed框架以及模块的第三方应用程序或者将xposed框架以及模块集成在操作系统的情况下,经用户的授权后可以接管操作系统的root权限。然后根据用户对应用程序A的限制结果,向应用程序反馈相应的数据,以保护用户的隐私。例如,用户不允许该应用程序A获取设备信息(即该移动终端的相关信息,如IMEI、IP地址、手机号码等等),那么通过实施本发明实施例,应用程序无法获取真实的设备信息。
可以理解的是,图1中的应用场景的只是本发明实施例中的一种示例性的实施方式,本发明实施例中的应用场景包括但不仅限于以上应用场景。
上面描述了一种数据保护的应用场景,下面描述一种数据保护方法的流程,该流程可以应用于上述架构。请参见图2,图2是本申请实施例提供的一种数据保护方法的流程示意图;如图2所示,该方法可以以xposed框架中的相关模块(即接管根权限的程序)为执行主体进行描述,可以包括步骤S201-S205。
步骤S201:接管所述移动终端的操作系统的根权限。
具体地,通过xposed框架接管所述移动终端上的操作系统的根权限;利用xposed方案接管系统的root权限,防止第三方用户获取到root权限以及可以根据该权限对接口进行替换。本发明实施例对如何安装xposed框架以及模块不作限定。可选地,用户在安装xposed框架以及模块对应的程序或者软件后,可以选择使用或者不使用xposed框架。
在一种可能的实现方式中,所述接管所述移动终端的操作系统的根权限,包括:在接受到接管指令的情况下,根据xposed框架接管所述移动终端的操作系统的根权限。例如,用户启动xposed框架后,相应的程序接收到接管指令后,根据xposed框架接管所述移动终端的操作系统的根权限。
步骤S202:根据所述xposed框架中的xposed模块,生成所述第二API。
具体地,通过xposed模块生成通用的api接口(即第二API)。后续接收到用户对目标应用程序的数据访问限制的指令时,直接使用该通用的api接口替换目标应用程序针对某数据的访问接口。
步骤S203:根据所述根权限,将所述操作系统的应用程序接口API中的第一API替换为第二API。
具体地,在xposed框架有了操作系统的根权限后,将第一API替换成第二API(该步骤为hook的一部分),其中,所述第一API为所述API中的部分或者全部。例如,应用程序A本来通过接口a访问手机上的联系人信息,但是由于用户限制其获取联系人信息,就可以将利用xposed的接口b替换掉接口a。但是对于应用程序A而言,它并不会知道接口被替换,依旧会发起针对接口a的数据访问请求。但是实际上,对于系统底层而言,实际对接应用程序A的是接口b。可选地,将系统的API进行hook掉。
步骤S204:当接收针对所述第一API发起的第一数据访问请求时,通过所述第二API反馈第二数据。
具体地,当xposed模块接收到目标应用程序针对第一API发起的第一数据访问请求时,可以通过第二API向该目标应用程序反馈与第一数据同类型的第二数据。例如,当其他应用需要访问app的权限时,会自动到进入到被hook掉的方法内,此时当外部APP访问关键信息时,就可以返回虚假的信息,从而达到保护用户手机信息的作用。
在一种可能的实现方式中,所述当接收针对所述第一API发起的第一数据访问请求时,通过所述第二API反馈第二数据,包括:当接收所述移动终端的应用程序针对所述第一API发起的第一数据访问请求时,判断所述第一数据的数据类型;根据所述第一数据的数据类型,生成对应类型的所述第二数据;通过所述第二API向所述应用程序反馈所述第二数据。例如,当应用程序A针对接口a发起的定位信息(即第一数据)访问请求时,判断该第一数据的类型为移动终端当前的位置信息,如位置C;根据该数据的类型,生成的虚假的位置D,向应用程序A反馈。
在本申请实施例中,通过接管移动终端(如智能手机)的根权限(即root权限),在用户限制部分应用程序对某类型数据的访问权限后,替换(即hook)该应用程序对该类型数据的第一API;进一步地,当该部分应用程序中的应用程序发起对该类型数据的访问请求时,实际上该应用程序对接的第二API;在第二API接收到针对该类型数据的访问请求时,将第二数据(与第一数据同类型的虚假数据)发送至该应用程序。综上所述,本方案能够根据用户的选择,针对性地向不同的应用程序开放相应的数据访问权限;对于用户不信赖的应用程序,可以避免该类程序获取到用户的隐私信息(如定位),能够有效保护用户的关键数据,避免发生信息安全问题。
下面描述另一种数据保护方法的流程,请参见图3,图3是本申请实施例提供的另一种数据保护方法的流程示意图;如图3所示,该方法可以以xposed框架中的相关模块(即接管根权限的程序)为执行主体进行描述,可以包括步骤S301-S304。
步骤S301:接管所述移动终端的操作系统的根权限。
具体地,请参见前述步骤S201,在此不再赘述。
步骤S302:根据所述第一数据访问请求和所述xposed框架中的xposed模块,生成所述第一API对应的所述第二API。
具体地,在被限制访问的应用程序针对第一API发起第一数据访问请求后,根据该第一数据访问请求的请求类型(如对摄像头使用权限的请求),通过xposed模块识别该请求类型后,生成与该请求类型匹配的第二API。根据不同的请求类型,生成对应请求类型的第二API。例如,访问联系人信息的请求,那么生成的接口是专用于反馈联系人信息的接口。
步骤S303:根据所述根权限,将所述操作系统的应用程序接口API中的第一API替换为第二API。
具体地,请参见前述步骤S203,在此不再赘述。
步骤S304:当接收针对所述第一API发起的第一数据访问请求时,通过所述第二API反馈第二数据。
具体地,请参见前述步骤S204,在此不再赘述。
下面描述又一种数据保护方法的流程,请参见图4,图4是本申请实施例提供的又一种数据保护方法的流程示意图;如图4所示,该方法可以以xposed框架中的相关模块(即接管根权限的程序)为执行主体进行描述,可以包括步骤S401-S404。在图4对应的发明实施例中,所述第一API为所述应用程序针对所述第一数据的API。
步骤S401:根据所述移动终端接收的第一指令确定第一应用程序。
具体地,所述第一应用程序为一个或者多个对所述第一数据无访问权限的应用程序。可选地,该第一指令可以为用户在所述移动终端上做出的指令。例如,xposed模块对应的程序向用户提供一个操作界面,在该界面上可以管理所有第三方应用程序(即除了系统自带的应用以外的应用程序)对各类数据的访问权限。例如,手机上安装了微信、QQ音乐和美颜相机三个应用程序,并且系统中就已经安装了xposed架构和xposed模块。那么可以在系统的相关界面,禁止美颜相机获取手机上存储的联系人信息。
步骤S402:将所述第一应用程序的第一API替换为所述第二API。
具体地,在用户选择了某个或多个第一应用程序不能访问某类型数据后,将该第一应用程序原本用于访问该类型的数据的第一API替换成第二API。例如,用户禁止美颜相机访问联系人信息,那么可以hook掉美颜相机的联系人访问方法,例如将美颜相机访问联系人信息的API替换成其他API。可选地,基于代码实现xposed模块,在模块内将联系人的API进行hook掉,同时生成测试的数据联系人1,联系人2等等。
步骤S403:当接收所述第一应用程序针对所述第一API发起的第一数据访问请求时,判断所述第一应用程序对所述第一数据无访问权限。
具体地,当第一应用程序发起对第一数据访问的访问请求(如,第三方APP请求获取手机上用户存储的联系人信息)后,xposed模块判断该应用程序是否有对第一数据的访问权限。因为用户已经选择了该应用程序为第一应用程序,所以该第一应用程序被判断为无访问权限。可选地,在xposed框架中启用步骤S402中的模块。
步骤S404:根据所述第一数据的数据类型,生成对应类型的所述第二数据。
具体地,根据第一数据的数据类型生成与第一数据的数据类型匹配的第二数据。例如,第一数据为联系人信息,那么第二数据也是联系人信息,如联系人1以及联系方式。
步骤S405:通过所述第二API向所述第一应用程序反馈所述第二数据。
具体地,通过第二API将生成的虚假的第二数据(如虚假的联系人信息)发送给第一应用程序。例如,第三方App去获取用户的联系人信息时,会执行到前述步骤S402中模块内提供的api以及相关方法,该模块会将测试的数据返回给该app;那么第三方APP中获得的联系人信息(即虚假的第二数据)就是联系人1,联系人2等内容。
为了便于更好地实施本申请的上述方案,本申请实施例还对应提供了一种数据保护装置,请参见图5,图5是本申请实施例提供的一种数据保护装置的结构示意图;下面结合附图5来进行详细说明:
如图5所示,数据保护装置50可以包括接管单元501、替换单元502、反馈单元503、第一生成单元504、第二生成单元505、指定单元506和识别单元507。可选的单元可以包括第一生成单元504、第二生成单元505、指定单元506和识别单元507。其中,
接管单元501,用于接管所述移动终端的操作系统的根权限;
替换单元502,用于根据所述根权限,将所述操作系统的应用程序接口API中的第一API替换为第二API,所述第一API为所述API中的部分或者全部;
反馈单元503,用于当接收针对所述第一API发起的第一数据访问请求时,通过所述第二API反馈第二数据;所述第一数据访问请求用于请求访问第一数据,所述第二数据为所述第一数据对应的伪数据。
在一种可能的实现方式中,所述接管单元501,具体用于:在接受到接管指令的情况下,根据xposed框架接管所述移动终端的操作系统的根权限。
在一种可能的实现方式中,所述装置还包括第一生成单元504,用于:
在所述将所述操作系统的应用程序接口API中的第一API替换为第二API之前,根据所述xposed框架中的xposed模块,生成所述第二API。
在一种可能的实现方式中,所述装置还包括第二生成单元505,用于:
在所述当接收针对所述第一API发起的第一数据访问请求时,通过所述第二API反馈第二数据之前,根据所述第一数据访问请求和所述xposed框架中的xposed模块,生成所述第一API对应的所述第二API。
在一种可能的实现方式中,所述反馈单元503,具体用于:
当接收所述移动终端的应用程序针对所述第一API发起的第一数据访问请求时,判断所述第一数据的数据类型;
根据所述第一数据的数据类型,生成对应类型的所述第二数据;
通过所述第二API向所述应用程序反馈所述第二数据。
在一种可能的实现方式中,所述第一API为所述应用程序针对所述第一数据的API;所述装置还包括指定单元506,用于:
根据所述移动终端接收的第一指令确定第一应用程序,所述第一应用程序为一个或者多个对所述第一数据无访问权限的应用程序;
将所述第一应用程序的第一API替换为所述第二API。
在一种可能的实现方式中,所述装置还包括识别单元507,用于:
当接收所述第一应用程序针对所述第一API发起的第一数据访问请求时,判断所述第一应用程序对所述第一数据无访问权限;
根据所述第一数据的数据类型,生成对应类型的所述第二数据;
通过所述第二API向所述第一应用程序反馈所述第二数据。
本申请实施例中,通过接管移动终端(如智能手机)的根权限(即root权限),在用户限制部分应用程序对某类型数据的访问权限后,替换(即hook)该应用程序对该类型数据的第一API;进一步地,当该部分应用程序中的应用程序发起对该类型数据的访问请求时,实际上该应用程序对接的第二API;在第二API接收到针对该类型数据的访问请求时,将第二数据(与第一数据同类型的虚假数据)发送至该应用程序。综上所述,本方案能够根据用户的选择,针对性地向不同的应用程序开放相应的数据访问权限;对于用户不信赖的应用程序,可以避免该类程序获取到用户的隐私信息(如定位),能够有效保护用户的关键数据,避免发生信息安全问题。
需要说明的是,图5所示的数据保护装置50中各个单元的具体实现及有益效果可以对应参照图2-4所示的方法实施例中的相应描述,此处不再赘述。
请参见图6,图6是本申请实施例提供的一种终端设备的结构示意图;该终端设备60包括处理器601、存储器602、通信接口603、输入装置606和输出装置606,所述处理器601、存储器602、通信接口603、输入装置606和输出装置606通过总线604相互连接。终端设备60可以是平板电脑、个人电脑等终端设备,输入装置606可以是键盘、鼠标、语音录入、触摸板等装置,输出装置可以是显示器等装置。
存储器602包括但不限于是随机存储记忆体(random access memory,RAM)、只读存储器(read-only memory,ROM)、可擦除可编程只读存储器(erasable programmableread only memory,EPROM)、或便携式只读存储器(compact disc read-only memory,CD-ROM),该存储器602用于相关指令及数据的存储。通信接口603用于接收和发送数据。
处理器601可以是一个或多个中央处理器(central processing unit,CPU),在处理器601是一个CPU的情况下,该CPU可以是单核CPU,也可以是多核CPU。
该终端设备60中的处理器601用于读取所述存储器602中存储的程序代码,执行以下操作:
处理器601用于接管所述移动终端的操作系统的根权限;根据所述根权限,将所述操作系统的应用程序接口API中的第一API替换为第二API,所述第一API为所述API中的部分或者全部;当接收针对所述第一API发起的第一数据访问请求时,通过所述第二API反馈第二数据;所述第一数据访问请求用于请求访问第一数据,所述第二数据为所述第一数据对应的伪数据。
在一种可能的实现方式中,所述处理器601具体用于:
在接受到接管指令的情况下,根据xposed框架接管所述移动终端的操作系统的根权限。
在一种可能的实现方式中,所述处理器601还用于:根据所述xposed框架中的xposed模块,生成所述第二API。
在一种可能的实现方式中,所述处理器601还用于:根据所述第一数据访问请求和所述xposed框架中的xposed模块,生成所述第一API对应的所述第二API。
在一种可能的实现方式中,所述处理器601具体用于:当接收所述移动终端的应用程序针对所述第一API发起的第一数据访问请求时,判断所述第一数据的数据类型;根据所述第一数据的数据类型,生成对应类型的所述第二数据;通过所述第二API向所述应用程序反馈所述第二数据。
本申请实施例中,通过接管移动终端(如智能手机)的根权限(即root权限),在用户限制部分应用程序对某类型数据的访问权限后,替换(即hook)该应用程序对该类型数据的第一API;进一步地,当该部分应用程序中的应用程序发起对该类型数据的访问请求时,实际上该应用程序对接的第二API;在第二API接收到针对该类型数据的访问请求时,将第二数据(与第一数据同类型的虚假数据)发送至该应用程序。综上所述,本方案能够根据用户的选择,针对性地向不同的应用程序开放相应的数据访问权限;对于用户不信赖的应用程序,可以避免该类程序获取到用户的隐私信息(如定位),能够有效保护用户的关键数据,避免发生信息安全问题。
需要说明的是,上述各个操作的实现及有益效果还可以对应参照图2-图4所示的方法实施例的相应描述。
本申请实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序包括程序指令,当所述程序指令被处理器执行时,图2-4所示的方法流程得以实现。
本申请实施例还提供了一种计算机程序,所述计算机程序包括程序指令,当所述程序指令被处理器执行时,图2-图4所示的方法流程得以实现。
在本发明所提供的几个实施例中,应该理解到,所揭露的装置、设备和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。
最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。

Claims (10)

1.一种数据保护方法,应用于移动终端,其特征在于,包括:
接管所述移动终端的操作系统的根权限;
根据所述根权限,将所述操作系统的应用程序接口API中的第一API替换为第二API,所述第一API为所述API中的部分或者全部;
当接收针对所述第一API发起的第一数据访问请求时,通过所述第二API反馈第二数据;所述第一数据访问请求用于请求访问第一数据,所述第二数据为所述第一数据对应的伪数据。
2.根据权利要求1所述的方法,其特征在于,所述接管所述移动终端的操作系统的根权限,包括:
在接受到接管指令的情况下,根据xposed框架接管所述移动终端的操作系统的根权限。
3.根据权利要求2所述的方法,其特征在于,所述将所述操作系统的应用程序接口API中的第一API替换为第二API之前,还包括:
根据所述xposed框架中的xposed模块,生成所述第二API。
4.根据权利要求2所述的方法,其特征在于,所述当接收针对所述第一API发起的第一数据访问请求时,通过所述第二API反馈第二数据之前,包括:
根据所述第一数据访问请求和所述xposed框架中的xposed模块,生成所述第一API对应的所述第二API。
5.根据权利要求3或4所述的方法,其特征在于,所述当接收针对所述第一API发起的第一数据访问请求时,通过所述第二API反馈第二数据,包括:
当接收所述移动终端的应用程序针对所述第一API发起的第一数据访问请求时,判断所述第一数据的数据类型;
根据所述第一数据的数据类型,生成对应类型的所述第二数据;
通过所述第二API向所述应用程序反馈所述第二数据。
6.根据权利要求5所述的方法,其特征在于,所述第一API为所述应用程序针对所述第一数据的API;所述方法还包括:
根据所述移动终端接收的第一指令确定第一应用程序,所述第一应用程序为一个或者多个对所述第一数据无访问权限的应用程序;
将所述第一应用程序的第一API替换为所述第二API。
7.根据权利要求6所述的方法,其特征在于,所述方法还包括:
当接收所述第一应用程序针对所述第一API发起的第一数据访问请求时,判断所述第一应用程序对所述第一数据无访问权限;
根据所述第一数据的数据类型,生成对应类型的所述第二数据;
通过所述第二API向所述第一应用程序反馈所述第二数据。
8.一种数据保护装置,其特征在于,包括:
接管单元,用于接管所述移动终端的操作系统的根权限;
替换单元,用于根据所述根权限,将所述操作系统的应用程序接口API中的第一API替换为第二API,所述第一API为所述API中的部分或者全部;
反馈单元,用于当接收针对所述第一API发起的第一数据访问请求时,通过所述第二API反馈第二数据;所述第一数据访问请求用于请求访问第一数据,所述第二数据为所述第一数据对应的伪数据。
9.一种终端设备,其特征在于,包括处理器、通信接口、存储器、输入装置和输出装置,所述处理器、通信接口、存储器、输入装置和输出装置相互连接,其中,所述存储器用于存储计算机程序,所述处理器被配置用于调用所述计算机程序执行如权利要求1-7任一项所述的方法。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机程序,该计算机程序被处理器执行时实现如权利要求1-7任一项所述的方法。
CN201911159022.1A 2019-11-22 2019-11-22 一种数据保护方法及装置 Active CN111008375B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911159022.1A CN111008375B (zh) 2019-11-22 2019-11-22 一种数据保护方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911159022.1A CN111008375B (zh) 2019-11-22 2019-11-22 一种数据保护方法及装置

Publications (2)

Publication Number Publication Date
CN111008375A true CN111008375A (zh) 2020-04-14
CN111008375B CN111008375B (zh) 2023-09-26

Family

ID=70112753

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911159022.1A Active CN111008375B (zh) 2019-11-22 2019-11-22 一种数据保护方法及装置

Country Status (1)

Country Link
CN (1) CN111008375B (zh)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105653979A (zh) * 2015-12-29 2016-06-08 银江股份有限公司 一种基于代码注入的隐私信息保护方法
CN106650485A (zh) * 2016-09-18 2017-05-10 山东大学 基于Android 的个性化环境感知隐私保护方法
CN109426735A (zh) * 2017-08-29 2019-03-05 中兴通讯股份有限公司 一种保护个人隐私的方法及系统

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105653979A (zh) * 2015-12-29 2016-06-08 银江股份有限公司 一种基于代码注入的隐私信息保护方法
CN106650485A (zh) * 2016-09-18 2017-05-10 山东大学 基于Android 的个性化环境感知隐私保护方法
CN109426735A (zh) * 2017-08-29 2019-03-05 中兴通讯股份有限公司 一种保护个人隐私的方法及系统

Also Published As

Publication number Publication date
CN111008375B (zh) 2023-09-26

Similar Documents

Publication Publication Date Title
EP3370449B1 (en) Method and device for configuring security indication information
US9465948B2 (en) Trust level activation
US8510805B2 (en) Safe and efficient access control mechanisms for computing environments
US20140013429A1 (en) Method for processing an operating application program and device for the same
WO2019072008A1 (zh) 小程序的安全扫描方法、装置以及电子设备
EP3089068A1 (en) Application program management method, device, terminal, and computer storage medium
US20150150119A1 (en) Framework for fine-grain access control from high-level application permissions
US9245112B2 (en) Apparatus and method for managing entitlements to program code
CN112199720A (zh) 权限监控处理方法、装置、计算机设备及介质
CN111062032A (zh) 异常检测方法和系统及计算机可读存储介质
CN106162505B (zh) 软sim通信方法、装置及终端
CN108289080B (zh) 一种访问文件系统的方法、装置和系统
US10719456B2 (en) Method and apparatus for accessing private data in physical memory of electronic device
WO2019127043A1 (zh) 一种终端设备的控制方法及终端设备
CN112463266A (zh) 执行策略生成方法、装置、电子设备以及存储介质
CN117056904A (zh) 应用程序隐私合规判断方法、装置、计算机设备及介质
CN105809027B (zh) 应用程序的权限控制方法及装置
CN107392010B (zh) 执行Root操作的方法及装置、终端设备、存储介质
CN111008375B (zh) 一种数据保护方法及装置
CN113836529A (zh) 进程检测方法、装置、存储介质以及计算机设备
CN106203087B (zh) 注入防护方法、系统、终端以及存储介质
CN112835677A (zh) 一种基于沙盒的固有数据保护方法及系统
Nazar et al. Rooting Android–Extending the ADB by an auto-connecting WiFi-accessible service
CN110765426A (zh) 设备权限设置方法、装置、设备以及计算机存储介质
CN107567627B (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
GR01 Patent grant
GR01 Patent grant