[发明专利]基于保护模式与虚拟化机制实现操作系统安全核设计方法有效
申请号: | 201110140909.3 | 申请日: | 2011-05-30 |
公开(公告)号: | CN102184373A | 公开(公告)日: | 2011-09-14 |
发明(设计)人: | 黄皓;钱振江 | 申请(专利权)人: | 南京大学 |
主分类号: | G06F21/22 | 分类号: | G06F21/22 |
代理公司: | 南京君陶专利商标代理有限公司 32215 | 代理人: | 沈根水 |
地址: | 210093*** | 国省代码: | 江苏;32 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 基于 保护 模式 虚拟 机制 实现 操作系统 安全 设计 方法 | ||
技术领域
本发明涉及的是一种基于CPU的保护模式和虚拟化机制的实现操作系统安全核的设计方法,属于计算机应用技术领域。
技术背景
操作系统为用户程序提供了基础服务,为用户程序屏蔽了硬件平台的差异,用户程序利用操作系统提供标准服务来完成自身的任务。操作系统还必须提供驱动程序为用户程序提供各种硬件的接入服务。操作系统为了能够接入不断涌现的新设备,必须能够安装第三方开发的设备驱动程序使其成为操作系统的一部分。现有的操作系统是一个庞大的软件系统,其中还包括第三方开发的驱动程序,操作系统工作时可以执行任何指令。
操作系统及其庞大,各个模块相互依赖,相关数据结构被各个模块共享,现有的软件工程方法难以排除操作系统中存在的漏洞。操作系统的漏洞可能被攻击者利用来安插恶意的程序,达到各式各样的攻击目标。同样第三方开发的驱动程序也可能存在安全漏洞,它们的安全性更加难以控制。
操作系统提供的服务功能分别有不同的模块提供,对用户行为的控制涉及到操作系统的各个模块,在庞大的操作系统中分离对用户行为的控制和对用户服务请求的响应有着一定的难度。
发明内容
本发明提出的是一种基于CPU的保护模式和虚拟化机制的实现操作系统安全核的设计方法,旨在提供一个利用CPU保护模式的机制构造一个充分小的安全核,具有两条性质:(1)安全核之外的任何进程无法破坏安全核;(2)任意进程对任何资源的访问都必须受到安全核的控制。
本发明的技术解决方案:该方法包括如下步骤:
一、CPU保护模式提供了多个权限级0-N,其中权限级0称为特权级,其它权限级1-N称为非特权级,硬件规定了特权级可以执行处理器的所有指令,硬件又规定非特权级只能执行处理器的部分指令,即规定了一些指令只能有特权级执行;利用CPU的保护模式将操作系统划分成一个工作在特权级的安全核与工作在非特权级的操作系统的服务进程两个部分;
二、安全核利用CPU保护模式,使得安全核之外的进程具有性质:1) 未经安全核许可不能访问其它进程的地址空间;2)只能通过向安全核发送消息来访问其它系统资源;
三、指定一个安全核专用的外存储区域存放安全核使用的各种长久性数据,利用硬件虚拟化控制机制,使得当执行一个访问安全核专用的外存储区域的I/O时自动陷入到安全核中,阻止任何安全核之外的程序访问安全核专用的外存储区域,保障安全核的数据的安全性。
安全核提供物理内存分配、消息传递与中断处理服务、进程调度,安全核的物理内存分配服务确保一个进程与另一个进程间的内存空间是隔离的,使一个进程无法直接破坏另一个进程。
安全核提供息传递与中断处理服务,一个进程通过向安全核发送消息来访问除了自身内存地址之外的资源,安全核按照策略进行控制,安全核将消息转发给操作系统的相应的服务进程,由服务进程进行资源访问方面的信息管理工作,安全核只做策略控制,保持简洁性;一个进程通过向安全核发送消息来与另一个进程进行通信。
安全核进程调度服务确保进程调度过程中一个进程的上下文不会受到其它进程的破坏,确保的进程的静态完整性。
利用虚拟化机制使得即使在安全核休眠期间,任何访问安全核的专用存储区域的行为都激活安全核,并且在安全核允许的情况下才能实现访问。
由于将安全核设计成唯一的特权级的程序,安全核可以实现与其它进程的隔离,保证安全核代码的安全。由于安全核采用专用的外村粗区域,并且利用虚拟化机制进行实时监控,保证了安全核数据的安全。由于将安全核设计成了唯一的进程间的通信信道和访问设备的通道,所以任何进程访问系统资源的的行为都会受到安全核的控制。
本发明的优点:安全核本身不会受到其它进程的破坏;任何进程的资源访问都必须在安全核的控制下进行;安全核由几个非常小的独立程序组成,可以进行形式化的描述与验证。
附图说明
附图1是本发明的应用示例图。
具体实施方式
对照附图1,安全核的保护从内外两个方面进行。将安全核设计得充分的小,以便利用现有的软件工程的方法和形式化的方法可以验证安全的正确性,从内部保证安全核的安全性;利用CPU的硬件的保护模式的机制从外部保护安全核的安全性,安全核掌握了进程物理内存分配的权力,安全核在分配物理内存的时候确保安全核的内存空间与其它的任何进程的内存空间都是隔离的;另外安全核控制着进程的加载,这样安全核在非执行状态下其它的任何进程无法破坏安全核,在安全核恢复运行的过程中也可以准确地恢复原来的安全状态。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于南京大学,未经南京大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201110140909.3/2.html,转载请声明来源钻瓜专利网。