浅析LINUX系统服务器的安全问题_第1页
浅析LINUX系统服务器的安全问题_第2页
浅析LINUX系统服务器的安全问题_第3页
浅析LINUX系统服务器的安全问题_第4页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、浅析LINUX系统服务器的安全问题摘要: 随着Internet应用的广泛深入,计算机系统的安全问题日益引起人们的高度重视。操作系统是连接计算机硬件与上层软件及用户的桥梁,它的安全性是至关重要的。论文阐述了B2级安全服务器的系统需求,重点对自主访问服务器系统需求和功能描述进行说明,最后还就LINUX系统服务器的安全相关问题进行重点分析,有利于提高LINUX服务器安全性能设计水平。关键词:LINUX;自主访问控制(DAC);访问控制链表(ACL);服务器安全1 引言 随着计算机系统在社会各领域的广泛应用,大量的数据和信息将在计算机系统中存放、传输和处理。计算机系统多用户的应用,使得计算机系统安全成

2、为越来越重要的课题。尤其是在使用计算机系统的政府、国防、金融等信息敏感部门,计算机系统的安全显得尤为重要。任何计算机系统敏感信息的泄漏都将带来巨大的损失和灾难性的后果。目前,随着社会信息化的发展,计算机安全问题也日益严重,建立安全防范体系的需求越来越强烈。操作系统是整个计算机信息系统的核心,操作系统安全是整个安全防范体系的基础。信息安全是涉及国家主权的问题,而操作系统安全又是信息安全的重要内容。操作系统安全是计算机系统软件安全的必要条件。本文主要探讨了LINUX系统服务器的安全问题。 2Linux安全服务器的系统需求 此系统开发符合GB 17859中规定的结构化保护级(相当于TCSEC中规定的

3、B2级)功能要求的安全操作系统,其主要功能要求包括:(1)标识与鉴别;(2)自主访问控制;(3)强制访问控制;(4)安全审计;(5)客体重用;(6)最小特权管理;(7)可信路径;(8)隐蔽通道分析;(9)加密卡支持等等。 首先,通过标识与鉴别机构,认证用户的身份,登录进入系统。标识机构用于唯一标识进入系统的每个用户的身份,鉴别机构用于验证用户身份的合法性。一个用户通过输入登录名(Login Name)和口令(Password)进入系统,存取系统的资源。口令必须严格地保护,口令的失密可能导致另一个用户冒名顶替进入系统,访问口令主人资源。在Linux安全服务器中,限制用户只能在一定的安全级范围登录

4、进入系统。用户登录时可选择安全级,若不选择,则系统取该用户的默认安全级;如果用户选择的安全级和默认安全线不在规定的范围之内,则系统拒绝该用户进入系统。 第二,在操作系统中用户建立一个进程,这个进程使用用户的标识和安全级进行存取控制检查,查看是否可以通过MAC和DAC机构。MAC提供客体在主体间共享的控制。与DAC不同的是,MAC由系统管理员管理,DAC由客体的拥有者管理。客体的拥有者可以改变客体的DAC方式,但不能改变客体的MAC方式。TCB根据安全级来实施MAC。系统中的每个主体和客体都具有一个安全级,主体的安全级在登录时赋值,客体的安全级为创建它的主体的安全级。安全级由级别(Classif

5、ication)和类别(Category)组成。级别是线性关系,如绝密=机密=秘密;类别是集合的概念,为偏序关系。 安全级格式表示为:级别:类别1,类别2,?,类别n 对每个客体及用户都分配一个安全级,一个安全级仅包含一个单一的级别,而它的类别集合可能包含任意数目的类别。我们将一个安全级写成一个级别与一个类别表,下面是一个例子:secret;NATO,NUCLEAR,CKYPTO 多级安全策略的目的就是防止未被许可的用户能够访问到具有一定密级的信息。在一个安全级中的级别是线性有序的,例如: unclassfiedconfidentialsecrettop secret 类别是彼此独立的,并且是

6、无序的。为了合法的得到某一信息,用户的级别必须大于或等于该信息的级别,并且用户必须具有包括该信息所有访问类别的类别集合。例如,考虑具有如下安全级的一个文件F:secret;NATO,NUCLEAR 如果一个用户具有如下的安全级 top secret;NATO,NUCLEAR,CRYPTO 那该用户就能够访问文件F,因为该用户具有比文件F高的级别,并且它的类别集合包括了该文件的所有类别。而具有如下安全级的用户就不能访问该文件: top secret;NATO,CRYPTO 因为它缺少类别NUCLEAR。 第三,由MAC构成的访问隔离防止普通用户存取仅系统管理员才能访问的敏感TCB文件。 第四,进

7、程的特权为用户提供超越系统存取控制的能力。特权管理的思想是将UNIX超级用户的特权划分为一组细粒度的特权。管理员可以灵活地给予某(些)用户执行一系列操作和管理命令的特权,从而减少超级用户操作和管理系统的安全风险;管理员也可以给予某些文件以它所执行操作要求具有的固定特权。 第五,审计机构监视和记录用户和管理员的敏感操作。审计是系统中对所发生的事件进行记录的一种行为,它是安全系统中的一个重要方面。审计为系统进行事故原因的查询、定位、事故发生前的预测、报警以及事故发生之后的实时处理提供详细、可靠的依据或支持。 如上所述,TCB通过建立一系列的安全控制来保证系统的安全性。任何用户都必须通过标识与答别机

8、构(login和passwd),在系统中建立一个进程。然后,这个进程及其产生的后续进程只要通过了MAC和DAC检查,就可以访问系统中的相应客体。任何企图超越MAC和DAC的特权任务都必须通过特权机构的检查。最后,所有敏感操作都是在审计机构的监视下完成的。 3 Linux安全服务器的设计和实现 3.1 系统安全体系结构 这里Linux 级安全服务器将采用FLASK体系结构和Linux组织提供的LSM(Linux Security Module)动态加载技术,通过安全相关模块与系统原有功能的分离,以及实现不同策略的安全模块的动态加载,实现对多安全策略的支持。根掘FLASK系统结构,本系统将分为两个

9、主要部分: (1) 在原有系统中插入策略执行点。策略执行点一般在主体对客体进行操作前,如果当前的安全策略允许主体对客体进行该操作,则该操作继续进行,一般是调用原有系统中的相关模块来完成:如果当前的安全策略不允许主体对客体进行该操作,则该操作被终止,并返回错误信息。在策略执行点同时对系统操作进行安全审计。策略执行点并不直接对是否允许主体对客体的某种操作进行判定,而是通过hook(钩子)函数调用安全服务器中的相关功能来完成策略判定。 (2) 安全服务器。安全服务器是安全系统的核心部分,负责对安全策略的执行和判定,同时维护系统和主体客体的安全信息。hook函数是原有系统与安全服务器之间进行交互的唯一

10、方式。通过动态更改hook函数的指向,可以实现对不同安全策略的调用,实现对多安全策略的支持。通过采用LSM技术,可以实现对安全服务器或其中某个安全策略模块的动态加载。 3.2 ACL机构 ACL机构兼容传统的UNIX保护机构,UNIX文件中权限模式位直接对应为该文件的ACL表的基本项,两者的保护功能完全相同。可以利用getfac1命令来显示文件的ACL表:文件拥有者能够利用setfac1命令在文件的ACL表中增加users(用户)项或groups(用户组)项;也可用该命令删除这些项,也可以删除基本项:还可用该命令来改变文件ACL表中的某一项的权限。 ACL机构能使客体拥有者以单个用户为单位进行

11、授权访问或拒绝访问控制,从而使系统具有更细的存取控制粒度。所有ACL信息的改变都是以一个基本操作方式(系统调用)通过setfacl命令来完成的,这就避免了出现中间非安全状态的可能性。当ACL表增大时,进程的运行速度必然降低,这实际上也就限制了ACL表项数不能太大。 为进一步解释基本ACL,先看看文件初始化ACL表的表项与其模式位的直接对应关系。当一个文件创建时,其权限模式位及其基本ACL表也随之建立。基本ACL具有四项:user、group、other及mask。文件模式中拥有者的权限总与该文件ACL表user项的权限位相同;文件模式中其它用户的权限位也总与其ACL表中的other项的权限位相

12、同,且两者在ACL中是唯一的。文件基本ACL表中的group和mask项的权限位在初始化时与文件模式中拥有者的同组用户的权限位一样,它们同样也是唯一的。基本ACL表可以通过加入扩展user项和扩展group项来进行扩展。不同用户组可以在扩展group项中指定相应的权限;扩展user项用于指定各用户登录到系统之后对文件所具有的访问权限。 在文件创建时,该文件扩展ACL项是基于其父目录的默认ACL项而获得的。这些目录文件的默认ACL项用于说明当在目录下创建文件时,这些默认ACL项将被加入到新创建的文件ACL表中。 3.3 功能描述 自主存取控制(简称DAC)是根据用户意愿进行信息存取的机制。目前在

13、Linux中存在的DAC机制是传统的文件权限模式,本次开发的目的是在系统中加入ACL机制。利用ACL,用户能够有选择地授予其他用户某些存取权限,来对信息进行保护,防止信息被非法提取。ACL机制在兼容原有的文件权限模式的基础上,使客体拥有者以单个用户组为单位进行授权访问或拒绝访问控制,从而使系统具有更细致的存取控制粒度,也就是说不是文件属主或者和文件属主不在同一个组里的某些用户可以和其它用户有区别,拥有更多的访问权限。 3.4 DAC部分系统构思 在原有的文件权限模式之上,加入ACL表。使客体拥有者以单个用户组为单位进行授权访问或拒绝访问控制。原始的文件模式提供文件的基本ACL项(原始的文件模式

14、位usergroupother分别对应ACL表中的ACL_USER_OBJACL_GROUP_OBJ (ACL_MASK)ACL_OTHER类型的权限位,ACL表项的类型描述详见数据结构部分)。目录客体拥有默认ACL表项,可以继承给在该目录中创建的文件和子目录。 客体拥有自己的ACL表。客体属主和特权用户可以任意修改客体的ACL表。系统对于ACL表是这样存放的:每个不同的文件系统都拥有一个ACL表文件,该文件系统中所有ACL信息的文件的ACL信息都存放在该表文件中。每个文件在文件系统中都有唯一的一个I节点号,根据该I节点号和hash值的余数把该表文件划分成不同的组。 I节点区第一个4个字节,放

15、的是该组已经存放的文件(I节点)个数;第二个4个字节放的是数掘块区的64字节data block的个数;第三个4个字节放的是按I节点号最小的该组的第一个inode number;第4个4个字节放的是I节点号是第三个4个字节中的值的文件在数据块区中的偏移量(offset),该offset以整个ACL表文件为基础。I节点区从第三个4个字节开始每个在数据块区中的文件都占8个字节,前4个是I节点号,后4个是浚文件的偏移量,并且按照I节点号从小到大升序排列整齐。 一个文件可能占多于1个data block的字节数,无论这个文件占多少字节,第一个data block的格式都是这样的:数据块区的第一个4个字节,记录的是该文件一共有多少acl数据个数(ACL项数),每个acl数据一共占4个字节,1个字节的标识类型,2个字节的限定词,1个字节的权限集。文件的acl数据个数是根据用户来增加或者删减的,基本ACL是有4个acl项。第二个4个字节是该文件的I节点号;第三个4个字节,是该文件的第一个acl项。 所有写到磁盘表文件中的文件都至少包含一个不是ACL基本项的项,也就是至少有5个ACL项。主体对客体进行访问时,在DAC检查点通过ACL访问校验算法来控制。 4 结语 本文主要对于浅析LINUX系统服务器的安全

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论