一种基于分裂核心虚拟机的安全智能手机和控制方法

文档序号:6430697阅读:210来源:国知局
专利名称:一种基于分裂核心虚拟机的安全智能手机和控制方法
技术领域
本发明涉及智能手机,尤其是指可以安全操控的智能手机及安全操控的控制方法。
背景技术
随着电子和通信技术的飞速发展,智能手机已经大量进入人们的生活,迅速成为人们不可或缺的随身设备。由于智能手机具有强大的计算、存储和通讯硬件及相关功能,因此可以安装大量各类软件,满足用户千奇百怪的需求。然而,正因为智能手机可以安装大量的软件,病毒、木马等恶意程序就可以乘虚而入,感染智能手机系统。由于手机具有支付功能并存储了大量的个人信息,手机被恶意程序感染的后果将比桌面电脑被感染的后果严重得多。因此,若不能解决手机的安全问题,智能手机就不能真正被用户广泛接受并推广。站在安全角度考虑,较为保险可靠地运行不受信任的软件的主要方法是使用虚拟机,即将不受信任的软件放到虚拟机上运行,其访问的所有资源都是被系统虚拟出的,而非实体资源。这样,恶意软件即使控制了虚拟机的所有资源,也无法对系统造成影响,不能窃取用户个人信息,也不能调用支付功能。但是,由于手机硬件资源非常有限,内存、CPU、电池电量等资源都不足以支持在手机上随便运行一个全功能的虚拟机来运行不受信任的软件。一般来说,系统可以给予不同程序不同的权限来约束各种程序的行为,如果权限分配得当,恶意程序一般难以非法获得系统的敏感数据或使用系统未授权的设备。但是,越来越多的恶意程序为了吸引用户使用,把权限和功能绑定,这样,用户要使用相应的功能, 就必须授予程序较多的功能,从而为恶意程序打开了大门。对这些程序,用户既希望使用其功能,又希望避免其破坏作用,只使用权限的手段就无法实现。而通过使用虚拟机,虚拟出相应数据和设备给予恶意程序,就可以让这些程序以为获得了相应的权限,从而正常运行。 而由于在虚拟机中,恶意程序的运行结果是受到严格监控的,任何可能窃取系统敏感信息或非法使用系统设备的请求都将被查新定向到虚拟的数据和设备,因此恶意程序的任何行为都不会对系统安全造成影响。因此,通过把不受信任的程序放到虚拟机上运行,就可以很好的既获得恶意程序的功能又避免其危害。但是,由于手机等移动设备本身的硬件资源毕竟有限,要实现完整的虚拟机是不现实的,其内存、运算和电量开销是不可接受的,在完整的虚拟机中程序的执行效率也会大大下降,严重影响了程序的用户体验。现代手机操作系统为了安全和性能的考虑,已经将永久存储设备划分为启动区、 系统区和数据区,并设计了核心态和用户态以隔离系统关键程序,保障系统的稳定运行。但是现有操作系统还存在一定缺陷,其由于未含有虚拟机,用户进程总是可以访问到系统的真实数据,因此恶意程序可以很容易窃取用户的敏感数据或者盗用用户名义进行非法活动
发明内容
本发明所要解决的技术问题是提供一种可以在尽可能少占用内存、CPU、电池电量等资源的情况下实现不影响用户体验的轻量级虚拟机,以实现在手机等资源有限的设备上安全地运行不受信任的软件的智能手机及控制方法。为了解决上述技术问题,本发明首先提供的技术方案是一种基于分裂核心虚拟机的安全智能手机,其包括具有核心态和用户态的操作系统,及用于存储系统数据、程序和配置信息的永久存储设备;其特征在于所述永久存储设备被划分为核心区、系统区、虚拟区和信任区四个不同的分区;其中所述核心区用于存储所述操作系统核心启动文件;所述系统区用于存储所述操作系统的关键程序和数据;所述核心区和所述系统区都是只读的,无论受信任程序还是不受信任程序都不能修改这两个区的数据;所述信任区用于存储所述操作系统中的真实用户数据和受信任程序的程序文件;所述虚拟区中则存储伪造出的用户数据和不受信任程序的程序文件。在所述操作系统的用户态建立用户态进程,在所述操作系统核心态内存中为所述受信任或不受信任的进程均维护了一个进程信息表所述进程信息表中记录了所述进程的各种运行参数和数据;在所述操作系统核心判定所述进程是否受信任,受信任则该请求将被所述操作系统核心定向至所述信任区,不受信任则该请求将被定向至所述虚拟区。在所述进程信息表中增加一个域登记进程是否受到信任;所述域登记进程是否受到信任是指在所述操作系统创建用户态进程时,如果其程序文件存储在所述信任区,则在所述进程信息表中登记该进程为受信任进程,在所述虚拟区则登记该进程为不受信任进程。在用户建立一个程序时,其缺省安装至所述虚拟区;当用户经过使用认为所述程序是安全的,其可以指令所述操作系统将所述程序文件从所述虚拟区移动到所述信任区。针对智能手机的控制方法,本发明提供的技术方案是一种基于分裂核心虚拟机的安全智能手机的控制方法,其步骤如下a)首先将永久存储设备划分为核心区、系统区、虚拟区和信任区四个不同的分区; 其中所述核心区和所述系统区都是只读的;所述核心区用于存储所述操作系统核心启动文件;所述系统区用于存储所述操作系统的关键程序和数据;所述信任区用于存储所述操作系统中的真实用户数据和受信任程序的程序文件;所述虚拟区中则存储伪造出的用户数据和不受信任程序的程序文件;b)启动系统,先从所述核心区加载所述操作系统核心,然后从所述系统区加载各类服务程序;其中所述操作系统核心和主要的服务程序都运行在所述操作系统的核心态;c)建立用户态进程及进程信息表当用户提交任何服务请求需要运行程序来完成时,所述操作系统用对应的程序文件创建相应用户态进程;所述操作系统在核心态内存中为所有受信任和不受信任的程序所创建的进程都维护了一个进程信息表,所述进程信息表中记录了所述进程的各种运行参数和数据;d)当操作系统核心收到一个来自用户态进程的请求时,判定所述进程是否受信任,受信任则该请求将被所述操作系统核心定向至所述信任区,不受信任则该请求将被定向至所述虚拟区。其中,在所述步骤C)中的所述进程信息表中增加一个域登记进程是否受到信任; 所述域登记进程是否受到信任是指在所述操作系统创建用户态进程时,如果其程序文件存储在所述信任区,则在所述进程信息表中登记该进程为受信任进程,在所述虚拟区则登记该进程为不受信任进程;根据所述步骤d),当所述操作系统核心从用户进程收到一个访问请求时,先查看所述请求进程的进程信息表,并查看其是否属于受信任的进程;如果是受信任的进程,所述操作系统核心可把所述请求定向到所述信任区;如果是不受信任的进程,则把所述请求定向到所述虚拟区。在用户建立一个程序时,其缺省安装至所述虚拟区;在用户发出使用所述程序的请求时,所述操作系统核心将因其程序文件来自所述虚拟区而判定为不受信任进程,因此将其所有请求定向到所述虚拟区,从而屏蔽其访问用户真实数据的权利;当用户经过使用认为所述程序是安全的,其可以指令所述操作系统将所述程序文件从所述虚拟区移动到所述信任区。上述智能手机及其控制方法利用现在操作系统对进程和设备完全隔离的特性,在核心态维护两套数据,把受信任的进程的系统请求定向到真实设备,而把不受信任的进程的系统请求定向到虚拟设备。这样,系统不仅可以以极小的代价实现一个轻量级虚拟机,而且软件在该虚拟机上的运行效率可以保持与在物理机上相同。此外,所有受信任和不受信任的程序均在统一的系统下运行,程序之间的协同工作不会因为虚拟机的存在而有任何影响。因此,基于本专利方法实现的手机安全系统不会对手机的用户体验产生任何影响。本发明的智能手机的控制方法及智能手机的优点如下1、手机中不受信任程序智能读取到虚拟的用户数据和资源,无法窃取用户的个人信息,也无法恶意访问收费服务,杜绝恶意程序的安全隐患。2、不受信任的程序可以正常运行,其与恶意无关的功能仍然可以被用户使用。3、由于所有虚拟运行环境的接口与实际运行环境都是相同的,不受信任的程序难以发现自己访问的数据是虚拟环境。4、因为所有虚拟化操作都是在核心态实现的,只要系统没有严重的设计缺陷,不受信任的程序难以突破系统的虚拟边界。5、受信任的程序可以访问系统的所有数据和资源,可以正常提供需要的服务。6、所有程序的执行效率几乎不受影响,系统的整体运行效率基本与不使用本发明的方法时相当。


图1本发明的系统原理框图
具体实施例方式针对本发明基于分裂核心虚拟的安全智能手机及控制方法,现举一较佳实施例结合图式进行具体说明,参考图1,其中本发明的安全智能手机的操作系统采用的谷歌的安卓(android)操作系统。该操作系统是一个权限分立的操作系统。在该操作系统中,每个应用都以唯一的一个系统识别身份运行。系统的各部分也分别使用各自独立的识别方式。如此将应用与应用,应用与系统隔离开。系统更多的安全功能通过权限机制提供。权限可以限制某个特定进程的特定操作,也可以限制每个URI权限对特定数据段的访问。因此,该操作系统具有对进程进行完全隔离的特性。其具有用户态和核心态两种运行模式。本发明的永久存储设备(flash)采用NAND-Flash存储设备。安卓操作系统和 NAND-Flash永久存储设备均为目前智能手机广泛采用的系统和存储设备,因此,关于该系统及存储设备的现有相关技术则不再赘述。永久存储设备,参看图1,其被划分为核心区、系统区、虚拟区和信任区四个不同的分区。其中,核心区用于存储操作系统核心启动文件,系统区用于存储操作系统的关键程序和数据。这两个区都是只读的,无论受信任程序还是不受信任程序都不能修改这两个区的数据。信任区用于存储系统中的真实用户数据,而虚拟区中则存储伪造出的用户数据。该四个分区通过文件系统加载功能连接到操作系统核心。当系统启动时,先从只读的核心区加载操作系统核心,然后从系统区加载各类服务程序。系统核心和主要的服务程序都运行在系统的核心态,可以完全不受限制地访问系统资源,以提高系统运行效率。服务加载完成之后,系统即可为用户服务。当用户提交任何服务请求时,系统启动相应用户态进程。这些进程有受信任的,也有不受信任的。系统在内存中为每个进程维护了一个进程信息表,其中记录了进程的各种运行参数和数据。在进程信息表中被增加一个域登记进程是否受到信任。域登记进程是否受到信任是指在操作系统创建用户态进程时,如果其程序文件存储在信任区,则在进程信息表中登记该进程为受信任进程,在虚拟区则登记该进程为不受信任进程;该域登记了用户对用于创建该进程的程序文件的安全性认知,只有用户认为绝对安全、已经经由用户亲自指令系统将其程序文件移动到信任区的程序,才会在进程信息表中被标记为受信任的。自然,无论是受信任的进程还是不受信任的进程,都不能直接访问系统的资源,必须通过系统调用利用核心态的服务才能进行。因此,当系统核心收到一个访问请求时,可以先查看请求进程的进程信息表,查看其是否属于受信任的进程。如果是受信任的进程,核心可把请求定向到信任区,从而运行受信任的进程访问到真实的数据,为用户提供尽可能完善的服务;如果是不受信任的进程,则把请求定向到虚拟区,让进程获得虚假的数据,从而既防止了恶意进程窃取用户数据,又让进程可以运行下去为用户提供适当的服务。在用户建立一个程序时,其缺省安装至虚拟区;在用户发出使用程序的请求时,操作系统核心将因其程序文件来自虚拟区而判定为不受信任进程,因此将其所有请求定向到虚拟区,从而屏蔽其访问用户真实数据的权利;当用户经过使用认为该程序是安全的,其可以指令操作系统将该程序文件从虚拟区移动到所述信任区。之后,在用户发出使用所述程序的请求时,操作系统核心将因其程序文件来自信任区,因而判定该进程为受信任的并将其所有请求定向到信任区,从而运行该程序访问用户真实数据,为用户提供更多服务。这样,不受信任的进程永远无法访问到系统的真实数据,而只能读到伪造出的数据。受信任的程序则正常获得了系统数据和资源,为用户提供正常的服务。通过使用本发明的技术,在核心态将可能影响系统的系统调用根据程序的性质重新定向到不同的数据区,就可以实现一个轻量级的虚拟机,使用很少的资源即可实现较高的安全性。
权利要求
1.一种基于分裂核心虚拟机的安全智能手机,其包括具有核心态和用户态的操作系统,及用于存储系统数据、程序和配置信息的永久存储设备;其特征在于所述永久存储设备被划分为核心区、系统区、虚拟区和信任区四个不同的分区;其中所述核心区用于存储所述操作系统核心启动文件;所述系统区用于存储所述操作系统的关键程序和数据;所述核心区和所述系统区都是只读的,无论受信任程序还是不受信任程序都不能修改这两个区的数据;所述信任区用于存储所述操作系统中的真实用户数据和受信任程序的程序文件;所述虚拟区中则存储伪造出的用户数据和不受信任程序的程序文件。
2.根据权利要求1所述的基于分裂核心虚拟机的安全智能手机,其特征在于在所述操作系统的用户态建立用户态进程,在所述操作系统核心态内存中为所述受信任或不受信任的进程均维护了一个进程信息表所述进程信息表中记录了所述进程的各种运行参数和数据;在所述操作系统核心判定所述进程是否受信任,受信任则该请求将被所述操作系统核心定向至所述信任区,不受信任则该请求将被定向至所述虚拟区。
3.根据权利要求2所述的基于分裂核心虚拟机的安全智能手机,其特征在于在所述进程信息表中增加一个域登记进程是否受到信任;所述域登记进程是否受到信任是指在所述操作系统创建用户态进程时,如果其程序文件存储在所述信任区,则在所述进程信息表中登记该进程为受信任进程,在所述虚拟区则登记该进程为不受信任进程。
4.根据权利要求3所述的基于分裂核心虚拟机的安全智能手机,其特征在于在用户建立一个程序时,其缺省安装至所述虚拟区;当用户经过使用认为所述程序是安全的,其可以指令所述操作系统将所述程序文件从所述虚拟区移动到所述信任区。
5.根据权利要求1所述的基于分裂核心虚拟机的安全智能手机的控制方法,其特征在于所述步骤如下a)首先将永久存储设备划分为核心区、系统区、虚拟区和信任区四个不同的分区;其中所述核心区和所述系统区都是只读的;所述核心区用于存储所述操作系统核心启动文件;所述系统区用于存储所述操作系统的关键程序和数据;所述信任区用于存储所述操作系统中的真实用户数据和受信任程序的程序文件;所述虚拟区中则存储伪造出的用户数据和不受信任程序的程序文件;b)启动系统,先从所述核心区加载所述操作系统核心,然后从所述系统区加载各类服务程序;其中所述操作系统核心和主要的服务程序都运行在所述操作系统的核心态;c)建立用户态进程及进程信息表当用户提交任何服务请求需要运行程序来完成时, 所述操作系统用对应的程序文件创建相应用户态进程;所述操作系统在核心态内存中为所有受信任和不受信任的程序所创建的进程都维护了一个进程信息表,所述进程信息表中记录了所述进程的各种运行参数和数据;d)当操作系统核心收到一个来自用户态进程的请求时,判定所述进程是否受信任,受信任则该请求将被所述操作系统核心定向至所述信任区,不受信任则该请求将被定向至所述虚拟区。
6.根据权利要求5所述的基于分裂核心虚拟机的安全智能手机的控制方法,其特征在于在所述步骤c)中的所述进程信息表中增加一个域登记进程是否受到信任;所述域登记进程是否受到信任是指在所述操作系统创建用户态进程时,如果其程序文件存储在所述信任区,则在所述进程信息表中登记该进程为受信任进程,在所述虚拟区则登记该进程为不受信任进程;根据所述步骤d),当所述操作系统核心从用户进程收到一个访问请求时,先查看所述请求进程的进程信息表,并查看其是否属于受信任的进程;如果是受信任的进程,所述操作系统核心可把所述请求定向到所述信任区;如果是不受信任的进程,则把所述请求定向到所述虚拟区。
7.根据权利要求6所述的基于分裂核心虚拟机的安全智能手机的控制方法,其特征在于在用户建立一个程序时,其缺省安装至所述虚拟区;在用户发出使用所述程序的请求时,所述操作系统核心将因其程序文件来自所述虚拟区而判定为不受信任进程,因此将其所有请求定向到所述虚拟区,从而屏蔽其访问用户真实数据的权利;当用户经过使用认为所述程序是安全的,其可以指令所述操作系统将所述程序文件从所述虚拟区移动到所述信任区。
全文摘要
一种基于分裂核心虚拟机的安全智能手机及其控制方法,其包括具有核心态和用户态的操作系统,及用于存储系统数据、程序和配置信息的永久存储设备;永久存储设备被划分为核心区、系统区、虚拟区和信任区四个不同的分区;通过在启动系统时在核心区和系统区加载操作系统核心及各服务程序,建立用户进程及进程信息表,来判定进程是否受信任,受信任定向至信任区,反之定向至虚拟区。本发明在核心态将可能影响系统的系统调用根据程序的性质重新定向到不同的数据区,就可以实现一个轻量级的虚拟机,使用很少的资源即可实现较高的安全性。
文档编号G06F21/20GK102289621SQ201110230770
公开日2011年12月21日 申请日期2011年8月12日 优先权日2011年8月12日
发明者王阳, 罗迒哉 申请人:鲲鹏通讯(昆山)有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1