基于智能移动终端的隐私数据保护方法及系统与流程

文档序号:16544868发布日期:2019-01-08 20:47阅读:183来源:国知局
基于智能移动终端的隐私数据保护方法及系统与流程

本发明涉及数据保护技术领域,尤其涉及基于智能移动终端的隐私数据保护方法及系统。



背景技术:

android系统自诞生以来就得到了迅猛发展,目前它已成为大多数移动设备的首选系统,占据着庞大的市场份额。与此同时,android系统也引起了更多恶意攻击者的注意,利用android系统漏洞进行攻击的事件层出不穷,android系统上的漏洞修复问题亟待解决。目前针对android系统漏洞的修复,只能依托于android官方和各设备厂商来实施,主要通过系统升级的方式实现,存在漏洞修复代价大、漏洞修复不及时等诸多问题。

得益于移动操作系统便利、丰富的计算功能和互联功能,人们对于智能手机的依赖也越来越高,由此也产生了大量与用户个人相关的数据,例如:手机号码、通讯录、短信息、聊天记录、电子邮件、网络软件的账号密码等等。然而这些隐私数据的保护并没有引起足够的重视。虽然android系统提供了权限动态申请、数据请求通知、进程隔离等保护隐私数据的安全机制,但是由于android的开放性导致恶意应用的开发成本和难度大大降低,加之android系统、应用自身存在的一些问题和漏洞,大大增加了隐私数据保护的难度。

为了保护android生态系统以及android用户,android操作系统提供了文件访问控制,安全沙箱隔离机制,权限机制,应用签名等方式保证平台的安全性。虽然android系统提供了诸多的安全机制,但是这些安全机制也存在着一些缺陷,比如进程间通讯机制可以突破沙箱的隔离限制、权限机制的滥用等。android系统沿用了linux系统中的用户与权限机制,其沙箱隔离机制就是从linux系统中的用户隔离机制转化过来的。linux系统使用用户编号(uid)唯一标识用户;而在android系统上,上层的应用程序对应着linux底层的用户,因此应用程序被赋予唯一的uid。android系统在安装应用程序时,pms会分配一个新的uid来标识应用程序。uid在应用程序的生命周期内永远不会发生变化。当应用程序在访问数据和资源时都会根据uid来验证自己的身份。android系统就可以通过linux内核的多用户安全模型非常便捷地运用到沙箱机制上。不同的应用程序分别在linux内核中分别以不同的用户身份运行,因此,两个不同的应用程序的uid分别为x1和x2,它们的代码、数据、堆栈以及生成的dalvik虚拟机都运行在自己的进程空间中,它们运行期间生成的文件、数据库日志等资源的所有者也都是各自的uid。从资源和进程上看,android应用程序与其他的应用程序形成了天然的隔离。如此基于linux系统多用户模型设计的应用程序沙箱隔离机制便拥有了内核级别的安全特性。

在沙箱隔离机制的限制下,不同的应用程序之间相互独立,彼此隔离。运行在进程沙箱内的应用程序无法访问系统的资源。但是应用程序可以通过权限机制来访问系统的资源或者通过组件间通讯方式来访问另一应用程序的组件。

针对隐私数据的保护,官方通过动态权限申请,数据请求通知等提醒用户应用可能存在的隐私数据请求。遗憾的是,普通用户没有对隐私数据足够重视且恶意软件会模糊这种申请通知,保护效果不好。所以目前研究人员通过研究应用窃取隐私泄露的操作,自动检测可能的隐私数据泄露,提醒用户该隐私泄露可能存在的危害。遗憾的是目前实现的方法要么需要获取root权限修改系统框架,可能带来了新的安全问题。要么是需要针对某个应用进行相应的修改处理。都不具有普遍性。



技术实现要素:

针对上述问题中存在的不足之处,本发明提供基于智能移动终端的隐私数据保护方法及系统。

为实现上述目的,本发明提供一种基于智能移动终端的隐私数据保护方法,包括:

发送隐私数据请求;

拦截隐私数据请求,并发送经伪装处理的隐私数据请求;

接收经伪装处理的隐私数据请求,返回该请求对应的真实数据;

接收并保存真实数据,根据用户选择对真实数据进行伪造或拒绝,并发送伪造数据或拒绝信息;

接收伪造数据或拒绝信息。

作为本发明的进一步改进,拦截隐私数据请求并进行伪装处理的方法为:

对应用进程所在的android源码进行代理,当应用程序调用aidl接口时,拦截隐私数据请求,并对隐私数据请求和真实数据进行伪装。

作为本发明的进一步改进,对应用进程所在的android源码进行代理的方法为:

对android四组件的处理:

actvity组件,通过提前在资源配置文件manifest中注册伪装的activity信息,当启动activity时,请求启动伪装的activity,并通知加载自身activity相关资源;

service组件,通过调用隐藏接口的方式实现对service服务的调用;

broadcastreceiver组件,通过重构发送请求intent实现对隐私数据请求的伪装处理;

contentprovider组件,通过注册contentprovider,进行进程启动。

作为本发明的进一步改进,当用户选择保护隐私数据,则对真实数据进行伪造,并发送伪造数据;

当用户选择拒绝访问隐私数据,则对真实数据进行拒绝,并发送拒绝信息。

作为本发明的进一步改进,隐私数据包括位置信息、ip地址、手机信息、通讯录和短信。

本发明提供一种基于智能移动终端的隐私数据保护系统,包括:

应用程序,用于发送隐私数据请求以及接收伪造数据或拒绝信息;

安全容器,用于拦截隐私数据请求,并发送经伪装处理的隐私数据请求;以及,接收并保存真实数据,根据用户选择对真实数据进行伪造或拒绝,并发送伪造数据或拒绝信息;

系统服务,用于接收经伪装处理的隐私数据请求,返回该请求对应的真实数据。

作为本发明的进一步改进,拦截隐私数据请求并进行伪装处理的方法为:

对应用进程所在的android源码进行代理,当应用程序调用aidl接口时,拦截隐私数据请求,并对隐私数据请求和真实数据进行伪装。

作为本发明的进一步改进,对应用进程所在的android源码进行代理的方法为:

对android四组件的处理:

actvity组件,通过提前在安全容器资源配置文件manifest中注册伪装的activity信息,当应用程序需启动activity时,安全容器会对系统服务请求启动伪装的activity,然后通知应用程序加载自身activity相关资源;

service组件,通过调用隐藏接口的方式实现对service服务的调用;

broadcastreceiver组件,通过重构发送请求intent实现对隐私数据请求的伪装处理;

contentprovider组件,通过注册contentprovider,进行进程启动。

作为本发明的进一步改进,当用户选择保护隐私数据,则对真实数据进行伪造,并发送伪造数据;

当用户选择拒绝访问隐私数据,则对真实数据进行拒绝,并发送拒绝信息。

作为本发明的进一步改进,隐私数据包括位置信息、ip地址、手机信息、通讯录和短信。

与现有技术相比,本发明的有益效果为:

1、不需要获取root权限,也不需要修改系统;

2、不针对某款软件,具有通用性;

3、高性能,占用极少系统内存,达到保护隐私目的;

4、操作简单,用户只需要正常打开应用,选择保护隐私即可。

附图说明

图1为现有数据请求的流程图;

图2为本发明一种实施例公开的基于智能移动终端的隐私数据保护方法的流程图。

具体实施方式

为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明的一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。

下面结合附图对本发明做进一步的详细描述:

如图1所示的现有数据请求的流程图,现有隐私数据的请求过程为:应用程序向系统服务请求隐私数据,系统服务向应用程序返回该请求对应的数据,其无法达到对真实数据保护。

为此,本发明提供一种通用的、不需要修改系统和应用的、通过隐私数据伪装来保护用户隐私数据不被窃取的基于智能移动终端的隐私数据保护方法及系统;本发明的原理为:基于应用层轻量级安全容器,本发明模拟了通信请求的过程,对应用通信和向系统服务(systemserver)请求信息进行拦截。在应用启动时,对应用进程所在的android源码(ams,pms,wms等对象)进行了代理,在应用调用aidl接口时,便会被安全容器进行拦截,并不会直接发送请求到系统服务,容器会进行消息的处理伪装甚至拒绝等操作。

如图2所示,本发明提供一种基于智能移动终端的隐私数据保护方法,包括:

应用程序发送隐私数据请求;

安全容器拦截隐私数据请求,并发送经伪装处理的隐私数据请求;

系统服务接收经伪装处理的隐私数据请求,返回该请求对应的真实数据;

安全容器接收并保存真实数据,根据用户选择对真实数据进行伪造或拒绝,并发送伪造数据或拒绝信息;其中,当用户选择保护隐私数据,则对真实数据进行伪造,并发送伪造数据;当用户选择拒绝访问隐私数据,则对真实数据进行拒绝,并发送拒绝信息;隐私数据包括位置信息、ip地址、手机信息、通讯录和短信等;

应用程序接收伪造数据或拒绝信息。

进一步,拦截隐私数据请求并进行伪装处理的方法为:对应用进程所在的android源码进行代理,当应用程序调用aidl接口时,拦截隐私数据请求,并对隐私数据请求和真实数据进行伪装。具体的:

对应用进程所在的android源码进行代理的方法为:对android四组件的处理;其中:

actvity组件,通过提前在容器资源配置文件manifest中注册伪装的activity信息,当应用程序想要启动activity,安全容器会对系统服务请求启动伪装的activity,然后通知应用程序加载自身activity相关资源;

service组件,本发明无法在资源配置文件manifest中提前注册,为此通过调用隐藏接口的方式实现对service服务的调用;

broadcastreceiver组件,通过重构发送请求intent实现对隐私数据请求的伪装处理;通过对请求的伪装处理可避免安全容器外的应用程序接收到相同的intent请求,执行对应的操作;

contentprovider组件,由于android系统对于进程启动有诸多限制,通过注册大量contentprovider,进行进程启动。

本发明还提供一种基于智能移动终端的隐私数据保护系统,包括:

应用程序,用于发送隐私数据请求以及接收伪造数据或拒绝信息;

安全容器,用于拦截隐私数据请求,并发送经伪装处理的隐私数据请求;以及,接收并保存真实数据,根据用户选择对真实数据进行伪造或拒绝,并发送伪造数据或拒绝信息;其中,当用户选择保护隐私数据,则对真实数据进行伪造,并发送伪造数据;当用户选择拒绝访问隐私数据,则对真实数据进行拒绝,并发送拒绝信息;隐私数据包括位置信息、ip地址、手机信息、通讯录和短信等;

系统服务,用于接收经伪装处理的隐私数据请求,返回该请求对应的真实数据。

进一步,拦截隐私数据请求并进行伪装处理的方法为:对应用进程所在的android源码进行代理,当应用程序调用aidl接口时,拦截隐私数据请求,并对隐私数据请求和真实数据进行伪装。具体的:

对应用进程所在的android源码进行代理的方法为:对android四组件的处理;其中:

actvity组件,通过提前在容器资源配置文件manifest中注册伪装的activity信息,当应用程序想要启动activity,安全容器会对系统服务请求启动伪装的activity,然后通知应用程序加载自身activity相关资源;

service组件,本发明无法在资源配置文件manifest中提前注册,为此通过调用隐藏接口的方式实现对service服务的调用;

broadcastreceiver组件,通过重构发送请求intent实现对隐私数据请求的伪装处理;通过对请求的伪装处理可避免安全容器外的应用程序接收到相同的intent请求,执行对应的操作;

contentprovider组件,由于android系统对于进程启动有诸多限制,通过注册大量contentprovider,进行进程启动。

本发明设计的应用层容器仅仅本发明的基础模块,本发明在这个基础模块上,基于隐私安全的思想,对一些重要通信请求进行了代理注入。如本发明对位置相关的ilocationmanager进行了代理,当需要获取位置信息时,本发明的安全容器首先拦截到应用程序的位置请求通信,根据用户的选择决定位置信息如何处理并返还给应用程序。同样ip地址,手机信息,通讯录,短信等等敏感信息都可以根据用户选择进行。

本发明的安全容器负责信息的转发处理传递,应用程序的请求都会先经过本发明的安全容器,由安全容器负责请求处理。当应用程序想要获取隐私数据,如ip地址,位置信息等等,如果用户选择了保护隐私数据,安全容器将伪造一个合法的信息返回给应用本身,当应用想要跨应用本身进行数据读取,本发明同样会进行拦截,不允许读取别的应用的隐私数据,如通讯录,短信等等重要信息。不会影响应用的正常流程同时也保护了用户的隐私数据。

本发明的优点在于:

1、不需要获取root权限,也不需要修改系统;

2、不针对某款软件,具有通用性;

3、高性能,占用极少系统内存,达到保护隐私目的;

4、操作简单,用户只需要正常打开应用,选择保护隐私即可。

以上仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1