保障系统安全的密钥解决方案

时间:2010-06-06来源:网络

保证节点安全

安全启动是起点,而安全通信可以从通过CA认证的密钥开始实现。对于嵌入式微控制器而言,下一步也许直接是应用程序,但对大多数应用来说,两者之间至少还有一个操作系统。在最简单的情况下,还有存储器保护,更进一步还包括虚拟存储器支持。理论上讲,一个安全的操作系统可以使应用程序完全隔离于这种存储器保护支持。当然,操作系统架构和规模可能为那些寻求绕过这种安全机制的攻击者提供大量漏洞。

另一个可能的步骤是虚拟机支持。这种虚拟机支持使用额外的硬件,可提供与存储器保护或虚拟存储器支持相同类型的保护,但它更详细,因为它模拟了所有的硬件。

管理程序本质上是一种管理虚拟机环境的操作系统,这种方法用于管理多个系统,但也能提供额外的安全性。其方法是隔离操作系统,并进一步隔离应用程序。一个“瘦”的管理程序通常比传统的操作系统或实时操作系统(RTOS)简单得多,因此缺陷较少,在应用正式方法时也更容易验证。

一些虚拟机系统使用主机操作系统,如Linux,使得这类验证非常困难。另外一种方法是建立一个虚拟机,用它来处理到虚拟机系统的用户接口。虚拟机通过与管理程序通信来控制基础系统。理论上讲这种方法可以提供更好的隔离性能。

制定安全策略

管理程序为系统提供独立多层次安全性(MILS)或域分离功能。MILS可以是多层安全(MLS)系统的一个组件,然而,MLS的实现不需要虚拟机支持,前提是系统(包括安全启动过程)可以得到安全保护。

像SELinux等操作系统使用MLS安全模型,这种模型可以提供比单独Linux更细颗粒的访问控制。一般来说,Linux使用Linux安全模块(LSM)框架。LSM可以支持包括SELinux在内的多种安全模型,另外一个是Smack(简化的强制访问控制内核)。

基本的Linux安全模块提供基于用户/组模型的认证和访问控制,并且它是围绕文件系统搭建而成的。文件可以从组、用户或匿名的角度进行操作,并且读、写和执行属性是单独可控的。访问控制继承了目录树的概念。

SELinux更像是一种面向功能的系统,其策略可以变得相当复杂。这种强制访问控制系统将策略和执行分开来,不仅控制对文件和目录的访问,而且控制对网络接口和消息的访问。

访问可以关联到应用程序,而不仅是用户。例如,文件服务器可以只提供对那些正确标示为共享的文件或目录进行访问。它能跟踪应用程序以及由这些应用程序之一产生的任何子程序。这样,策略可以防止信息从较高安全层次流向较低安全层次。没有正确的允许,更高层次的应用程序不能简单地提供对较低层次的访问。

这种复杂性带来的一个问题是如何正确地使用。较差的策略可能开启漏洞,允许数据或控制移动到不应被允许的地方。这正是大多数系统开始时使用一种或多种基本策略定义、然后逐步修改以满足系统要求的原因。

显示系统的安全

安全操作系统的安全启动对某些环境来说是足够的,但与用户的交互带来了对识别以及用户相关I/O的需求。安全显示器是军用安全系统中常见的一个特色功能(图3)。显示系统的安全性可以用软件或硬件实现。例如,可以设置安全设备驱动程序只在显示器底部显示来自安全应用程序的显示信息。采用全屏显示的应用软件不会覆盖这个安全区域,其它技巧包括用显示硬件执行相同的操作。

图3:在屏幕上留出安全区域非常重要,这种方法通常与其它形式的安全基础架构组合在一起。
图3:在屏幕上留出安全区域非常重要,这种方法通常与其它形式的安全基础架构组合在一起。

人们经常使用的ctrl-alt-delete也是一个相关接口项。理论上,这个组合键应该只是调用系统应用程序。在使用Windows操作系统时,按下这个组合键将弹出一个对话框,其中有任务管理器等启动选项。使用安全显示器后,反馈信息可以通过安全显示区显示,使得任何应用程序无法模拟响应。

1 2

关键词: 保障 系统安全 密钥 方案

加入微信
获取电子行业最新资讯
搜索微信公众号:EEPW

或用微信扫描左侧二维码

相关文章

查看电脑版