论文部分内容阅读
操作系统的安全特性从操作系统诞生之日就成为研究人员关注的焦点,如何构建一个安全的操作系统正是当前安全研究的热点课题。通过访问控制对系统进行加固,能够有效地增强操作系统安全性。BLP、BIBA、DTE等安全模型的提出,标志着对于访问控制的研究已经日趋成熟。基于各种模型实现的Selinux、DTE、Smack等模块的应用则意味着访问控制的研究已经到了实用阶段。为更好地支持这些模型,各个操作系统提供了各种实现框架。Linux提供了LSM,并基于LSM重新实现了Selinux、DTE、Smack、Apparmor等众多安全模块。FreeBSD也提供了TrustedBSD MAC框架,它与LSM实现同样功能。然而,Windows系统不支持强制访问控制,并缺少支持不同访问控制模型的通用框架,导致在Windows上实施访问控制时,需要自行设计底层实现,重复了大量工作。本文针对上述问题,提出了一套Windows实施访问控制策略的框架,通过提供多安全模块支持解决方案、Windows内核对象安全标签设置方案和敏感操作的Hook方案,为安全模型的研究和安全模块的开发提供了一个通用、安全、高效的平台。本文主要的工作和特色为:(1)需求分析。论文首先阐述了访问控制机制在安全操作系统中的重要地位,访问控制模型和实施框架的发展历史以及典型的实施框架功能结构。然后通过研究访问控制的概念、自主访问控制和强制访问控制的特点,结合访问控制实施框架的通用需求,针对Windows操作系统原有安全机制及特点,总结出了Windows下访问控制实施框架应满足的需求;(2)框架设计。论文通过研究LSM、TrustedBSD MAC框架的设计思想,根据Windows下访问控制实施框架的需求分析,提出了一个工作在Windows内核态,可以加载各种访问控制模块,并为安全模块提供底层支持的通用的访问控制实施框架(Windows Access-control Enforcement Facility Framework,WAEF),并从Hook架构设计、框架启动方式以及多安全模块加载方案三方面进行了框架设计;(3)具体实现。论文针对Windows系统的特点提供了为Windows内核中各种敏感对象打上安全标签的方法以及对Windows关键操作进行Hook的解决方案;(4)性能分析。论文对基于WAEF开发的对所有系统调用进行Hook并加载全允许策略的安全模块以及操作系统安全加固软件研发及产业化项目(PFAC)实现的部分强制访问控制功能模块进行了性能测试,并对测试结果进行了分析。