论文部分内容阅读
操作系统安全是计算机乃至信息系统安全的基础。访问控制是实现操作系统安全的重要机制之一。访问控制的基本任务是保护存储在计算机上的信息,防止非授权用户对信息的访问以及授权用户的越权访问,保证信息的机密性、完整性和可用性。细粒度的访问控制能够增强操作系统安全策略的灵活性。
主流操作系统采用的自主访问控制基本上是基于用户的,通过用户相关属性来判定进程的操作权限,这是和最小特权原则相悖的,访问控制粒度太粗,不利于系统的安全。基于程序的访问控制依据可执行程序进行访问授权,和基于用户的访问控制共同作用,完成系统的访问控制功能,实现了用户权限和程序权限的分离。进程权限是用户权限和可执行程序权限的交集,不再拥有用户的所有权限,细化了访问控制粒度,提高了系统安全性。
本文介绍了基于程序的访问控制的基本思想,并基于Linux操作系统设计和实现了基于程序的访问控制系统,作为原有DAC访问控制的细粒度补充。系统基于LSM(Linux安全模块)框架实现,受内核版本影响较小,具有通用性,易于和其他安全模块兼容。系统采用模块方式实现,可以根据需要加载,支持动态策略机制。为了减轻对系统性能的影响,实现过程中做了简化,对访问权限类型不作区分,仅保存客体路径或索引节点信息。系统还将常用的系统程序定义为可信任程序,对该类程序,基于程序的访问控制系统直接返回允许访问,既简化了访问控制过程,又能保证系统的安全性。本文设计的基于程序的访问控制系统适合于用作服务器的Linux系统中,可以抵御部分木马程序的攻击,能起到很好的安全效果。