论文部分内容阅读
Linux传统安全机制是限制普通用户仅持有最基本的权限而赋予一个超级用户root用户所有的权限,该超级用户的存在违背了安全系统设计中的最小特权原则。为克服该项弱点以满足更高级别的安全需要,各种类型的强制访问控制系统问世。为统一强访系统的实现方式,Linux社区将LSM(Linux安全模块接口)引入内核标准,内核中构建的一个轻量级、通用的访问控制框架。为了对系统增强保护,本文做了两项工作:基于LSM实现Linux系统多权分立的特权管理模型;在内核中对LSM本身施加保护。 本文首先分析了LSM提供的强访机制对系统的保护作用,针对现有单一特权管理模型的弊端,提出了一种多权分立的用户特权分配管理模型并给出了实现。该模型基于Capabilities机制,通过给用户赋予相应的角色而授予用户相应的权能,实现了超级权限的分离,有效取代了超级用户管理机制。 本文其次通过分析内核的脆弱性以及现有的内核保护方法的局限性,认识到具备LSM机制的操作系统并非绝对的安全。通过对LSM实现机制及源代码的分析,本文提出了一种细粒度的LSM保护机制,该机制通过将离散分布在内核中的LSM相关对象在地址空间中迁移聚合到指定页面进行集中保护,实现了字节粒度的内核对象保护机制,且仅引入了较低的性能开销。 通过利用LSM实现的多权分立管理模型对系统提供保护,以及在内核中对LSM本身提供保护,两者结合,本文有效地实现了对整个操作系统的安全保护。