首页 理论教育 安全操作系统的设计原则及其挑战

安全操作系统的设计原则及其挑战

时间:2023-06-09 理论教育 版权反馈
【摘要】:将安全的职能加入到操作系统中大大地增加了操作系统设计的难度。萨尔哲和史克罗德提出了安全操作系统的设计原则:1)最小特权。为使无意或恶意的攻击所造成的损失降到最低,每个用户和程序必须按照“需要”原则,尽可能地使用最小特权。3)开放系统设计。5)基于“允许”的设计原则。应当标识什么资源是可存取的,而不是标识什么资源是不可存取的,也就意味着许可是基于否定背景的,即没有被显式许可标识的都是不允许存取的。

安全操作系统的设计原则及其挑战

操作系统本身(不考虑它们的安全限制)是比较难设计的,因为它处理很多事务,如中断和上下文转换,并且必须使开销最小化,以免影响用户的计算和交互。将安全的职能加入到操作系统中大大地增加了操作系统设计的难度。与此同时,对有效安全的需求正变得越来越普遍。

萨尔哲(Saltzer)和史克罗德(Schroder)提出了安全操作系统的设计原则:

1)最小特权。为使无意或恶意的攻击所造成的损失降到最低,每个用户和程序必须按照“需要”原则,尽可能地使用最小特权。

2)机制的经济性。安全操作系统的设计应小型化、简单、明确。

3)开放系统设计。保护机制应该是公开的,因为安全性不依赖于保密。认为用户不具有软件手册和源程序清单就不能进入系统,是一种很危险的观点。当然,如果没有上述信息,渗透一个系统会增加一定难度。为了安全起见,最保险的假定是假设入侵者已经了解了系统的一切。其实设计保密也不是许多安全系统(即使是高度安全系统)的需求,理想的情况应是将必要的机制加入系统后,使得即便是系统开发者也不能侵入这个系统。

4)完整的存取控制机制。对每个存取访问系统必须进行检查。

5)基于“允许”的设计原则。应当标识什么资源是可存取的,而不是标识什么资源是不可存取的,也就意味着许可是基于否定背景的,即没有被显式许可标识的都是不允许存取的。

6)权限分离。理想情况下对实体的存取应该受到多个安全条件的约束,如用户身份认证和密钥等,这样使得侵入安全操作系统的人将不会轻易拥有对全部资源的存取权限。

7)避免信息流的潜在通道。信息流的潜在通道一般是由可共享实体的存在所引起的,系统为防止这种潜在通道应采取物理或逻辑分离的方法。(www.xing528.com)

8)方便使用。友好的用户接口

操作系统安全的可信性主要依赖于安全功能在系统中实现的完整性、文档系统的清晰性、系统测试的完备性和形式化验证所达到的程度。操作系统可以看成是由内核程序和应用程序组成的一个大型软件,其中内核直接和硬件打交道,应用程序为用户提供使用命令和接口。验证这样一个大型软件的安全性是十分困难的,因此要求在设计中要用尽量小的操作系统部分控制整个操作系统的安全性,并且使得这一小部分便于验证或测试,从而可用这一小部分的安全可信性来保证整个操作系统的安全可信性。

安全操作系统的一般结构如图4-3所示,其中安全内核用来控制整个操作系统的安全操作。可信应用软件由两个部分组成,即系统管理员和操作员进行安全管理所需的应用程序,以及运行具有特权操作的、保障系统正常工作所需的应用程序。用户软件由可信应用软件以外的应用程序组成。

978-7-111-39843-1-Chapter04-3.jpg

图4-3 安全操作系统的一般结构示意图

首先,高安全级别的操作系统对整个操作系统的内核进行分解,用以产生安全内核。安全内核是从内核中分离出来的、与系统安全控制相关的部分软件。例如,KSOS和UCLA Secure UNIX就具有这种结构,因为它们的安全内核已经足够小,所以能够对其进行严格的安全性验证。

开发成本的安全操作系统则不再对操作系统内核进行分解,此时安全内核就是内核。这种结构的例子有LINVS IV、Secure Xenix、Tmach和Secure TUNIS等。

操作系统的可信应用软件和安全内核组成了系统的可信软件,它们是可信计算基的一部分,系统必须保护可信软件不被修改和破坏。

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈