操作系统安全性的主要目标是标识系统中的用户,对用户身份进行认证,对用户的操作进行控制,防止恶意用户对计算机资源进行窃取,篡改,破坏等非法存取,防止正当用户操作不当而危害系统安全,从而既保证系统运行的安全性,又保证系统自身的安全性。具体包括如下几个方面:
身份认证机制:实施强认证方法,比如口令、数字证书等;
访问控制机制:实施细粒度的用户访问控制,细化访问权限等;
数据保密性:对关键信息,数据要严加保密;
数据完整性:防止数据系统被恶意代码破坏,对关键信息进行数字签名技术保护;
系统的可用性:操作系统要加强应对攻击的能力,比如防病毒,防缓冲区溢出攻击等;
审计:审计是一种有效的保护措施,它可以在一定程度上阻止对计算机系统的威胁,并对系统检测,故障恢复方面发挥重要作用。
按照形成安全威胁的途径来分,安全威胁可以分为如下6类:
(1)不合理的授权机制。
(2)不恰当的代码执行。
(3)不恰当的主体控制。
(4)不安全的进程间通信(IPC)。
(5)网络协议的安全漏洞。
(6)服务的不当配置。
按照威胁的行为方式划分,通常有下面的4种:
(1)切断: (2)截取:
(3)篡改: (4)伪造:
Bell-LaPadula模型(简称BLP模型)是对应于军事类型安全密级分类的计算机操作系统模型。BLP模型是最早的一种计算机多级安全模型,也是受到公认最著名的状态机模型。
对BLP安全模型的评价
BLP模型是最早的一种安全模型,也是最有名的多级安全策略模型。它已为许多操作系统所使用。
BLP模型是一个很安全的模型,既有自主访问控制,又有强制访问控制。
BLP模型中当低安全级的信息向高安全级流动,可能破坏高安全客体中数据完整性,被病毒和黑客利用。
BLP模型通过防止非授权信息的扩散报系统的安全,但它不能防止非授权修改系统信息。Biba模型,其主要应用类似BLP模型的规则来保护信息的完整性。
为了体现用户完整性,他们提出了职责隔离(Separation of Duty)目标;为了保证数据完整性,他们提出了应用相关的完整性验证进程。
基于角色的存取控制(Role-Based Access Control,RBAC)模型主要用于管理特权,在基于权能的访问控制中实现职责隔离及极小特权原理。
域类型增强(Domain and Type Enforcement,DTE)模型通过赋予文件不同的类型(Type)、赋予进程不同的域(Domain)来进行访问控制,从一个域访问其他的域以及从一个域访问不同的类型都要通过DTE决策的控制。
身份鉴别是安全操作系统中的第一道关卡,用户在访问安全系统之前,首先经过身份鉴别系统识别身份,然后访问监控器根据用户的身份和授权数据库决定用户是否能够访问某个资源。
所谓标识就是用户要向系统表明自己的身份。标识应当具有唯一性,不能被伪造。
为了增强口令的安全性,需选择很难破译的加密算法,让硬件解密商品不能发挥作用;控制用户口令的强度(长度、混合、大小写);
系统应对口令的使用和更改进行审计。
考虑到口令的脆弱性,智能卡技术将成为用户接入和用户身份鉴别等安全要求的首选技术。
USB-Key是一种USB接口的硬件设备,它内置单片机或智能卡芯片,可以存储用户的密钥、数字证书或其他身份信息。
身份鉴别过程中为了产生变动的口令,一般采用双运算因子的计算方式,也就是加密算法的输入值有两个数值,其一为用户密钥、另一为变动因子。由于用户密钥为固定数值,因此变动因子必须不断变动才可以算出不断变动的动态密码。
生物识别技术主要是指通过可测量的身体或行为等生物特征进行身份鉴别的一种技术。生物特征是指唯一地可以测量或可自动识别和验证的生理特征或行为方式。
身份鉴别系统架构包含三项主要组成元件:
①鉴别服务器
②鉴别系统用户端软件
③鉴别设备
访问控制是对信息系统资源进行保护的重要措施,适当的访问控制能够阻止未经允许的用户有意或无意地获取数据。
访问控制的手段包括用户识别代码、口令、登录控制、资源授权(例如用户配置文件、资源配置文件和控制列表)、授权核查、日志和审计。
在计算机系统中,访问控制包括以下三个任务:授权,即确定可给予哪些主体存取客体的权力;确定存取权限(读、写、执行、删除、追加等存取方式的组合);实施存取权限。
记帐性是通过审计访问记录实现的,访问记录包括主题访问了什么客体和进行了什么操作。访问控制一般包括三种类型:自主访问类型、强制访问控制和基于角色的访问控制。
(1) 访问控制表是以文件为中心建立访问权限表。表中登记了特定该文件的访问用户名及访问权隶属关系。
(2)权能表以用户为中心建立权能表,表中规定了该用户可访问的文件名及访问能力。利用权能表可以很方便查询一个主体的所有授权访问。
自主访问控制(Discretionary Access Control,DAC)是常用的一类访问控制机制,是用来决定一个用户是否有权访问一些特定客体的一种访问约束机制。
由于DAC对用户提供灵活和易行的数据访问方式,能够适用于许多的系统环境,所以DAC被大量采用,尤其在商业和工业环境的应用上。然而,DAC提供的安全保护容易被非法用户绕过而获得访问。例如,若某用户A有权访问文件F,而用户B无权访问F,则一旦A获取F后再传送给B,则B也可访问F,其原因是在自主访问控制策略中,用户在获得文件的访问权后,并没有限制对该文件信息的操作,即并没有控制数据信息的分发。所以DAC提供的安全性还相对较低,不能够对系统资源提供充分的保护,不能抵御特洛伊木马的攻击。
强制访问控制(Mandatory Access Control)是一种不允许主体干涉的访问控制类型。它是基于安全标识和信息分级等信息敏感性的访问控制。强制访问控制包括基于规则(Rule-Based)访问控制和管理指定型(Administratively-Based)访问控制。
强制访问控制提供的访问控制机制无法绕过。在强制访问控制机制下,系统中的每个进程、每个文件、每个IPC客体都被赋于了相应的安全级别,这些安全级别是不能改变的。
强制存取控制和自主存取控制是两种不同类型的存取控制机制,自主问控制较弱,而强制访问控制又太强,会给用户带来许多不便。因此,实际应用中,往往将自主访问控制和强制访问控制结合在一起使用。自主访问控制作为基础的、常用的控制手段;强制访问宏观作为增强的、更加严格的控制手段。
基于角色的访问控制(Role-Based Access Control)是目前国际上流行的先进的安全访问控制方法。它通过分配和取消角色来完成用户权限的授予和取消,并且提供角色分配规则。安全管理人员根据需要定义各种角色,并设置合适的访问权限,而用户根据其责任和资历再被指派为不同的角色。
基于角色访问控制可以很好地描述角色层次关系,实现最小特权原则和职责分离原则。
角色(Role)定义为与一个特定活动相关联的一组动作和责任。
角色访问策略是根据用户在系统里表现的活动性质而定的,活动性质表明用户充当一定的角色,用户访问系统时,系统必须先检查用户的角色。一个用户可以充当多个角色,一个角色也可以由多个用户担任。角色访问策略具有以下优点:
便于授权管理。
便于根据工作需要分级。
便于赋予最小特权。
便于任务分担。
便于文件分级管理。
最小特权(Least Privilege)指的是“在完成某种操作时所赋予系统中每个主体(用户或进程)必不可少的特权”。
可信通路(Trusted Path,TP)也称为可信路径,是指用户能跳过应用层而直接同可信计算基之间通信的一种机制。
构建可信通路的简单方法是为每个用户提供两台终端,一台用于完成日常的普通工作,另一台用于实现与安全内核的硬连接及专职执行安全敏感操作。
更为现实的方法是要求用户在执行敏感操作前,使用一般的通用终端和向安全内核发送所谓的“安全注意符”(即不可信软件无法拦截、覆盖或伪造的特定信号)来触发和构建用户与安全内核间的可信通路。
存储器保护主要是指保护用户在存储器中的数据,防止存储器中的数据泄露或被篡改。
存储器隔离主要有进程与进程的隔离,用户空间与内核的隔离。在绝大部分系统中,一个进程的虚地址空间至少要被分成两部分或称浪个段:一个用于用户程序与数据,称为用户空间:另一个用于操作系统,称为内核空间。
目前一些常用的存储器保护机制主要有以下几种:
(1)所有系统范围内内核态组件使用的数据结构和内存缓冲池只能在内核态下访问,用户态线程不能访问这些页面。如果它们试图这样做,硬件会产生一个错误信息,随后内存管理器线程报告一个访问冲突。
(2)每个浸沉有一个独立、私有的地址空间,禁止其他进程的线程访问。唯一例外是,该进程和其他进程共享页面,或另一进程具有对进程对象的虚拟内存读写权限。
(3)除了提供虚拟到物理地址转换的隐含保护外,处理器还提供了一些硬件内存保护措施(如读/写,只读等)。这种保护这种保护的细节根据处理器不同而不同。例如,在进程的地址空间中代码页被标志为只读,可以防止被用户线程修改。
(4)共享内存区域对象具有标准的存取控制表(ACL),当进程试图打开它们时会检查ACL表,这样对共享内存的访问也限制在具有适当权限的进程之中。
文件备份的目的主要就是为了保险,防止文件丢失。
在进行备份之前,应先做好备份规划,选择合适的备份策略。在制订备份规划时的,要考虑备份的时间,保存备份的设备,备份媒体存放的地点,谁来做备份,备份哪些文件等。常见的备份策略有完全备份(Full Backup)和增量备份(Incremental Backup)。
文件加密就是将重要的文件以密文的形式存储在媒介上。要想实现文件加密,需要有加密文件系统的支持,加密文件系统允许用户以加密格式存储磁盘上的数据。
CFS是一个经典的加密文件系统,使用DES来加密文件。
CFS最大的缺点在于其效率低下。
TCFS具有更大的透明度,用户甚至不需知道他们的文件被加密了。TCFS操作起来类似于NFS:一个TCFS文件系统可以让应用程序使用相同的系统调用NFS(open、read、write)来访问。数据块仅在正确的密钥对内核可用时进行解密。TCFS对数据进行加密时,对每个文件使用不同的“文件密钥”进行加密,对一个文件的不同部分使用的不同的“块密钥”进行加密,这就保证了用户的无法通过比较两个文件来判断它们的明文是否相同,也无法判断同一文件的不同部分的明文是否相同。用户的“主密钥”由用户的登录密码加密后存放在文件中。与CFS不同,TCFS的数据加密、解密操作在核心层完成,所以性能有所改善。
TCFS的问题在于系统的安全性过多地以来于用户的登录密码,而且加密密钥存放在磁盘上的方式也在一定程度上降低了系统的安全性,因为其基于NFS的工作机制,每次读写都会涉及到多次核心层与用户层之间的数据变换,所以其效率的低下还是难以避免。
AFS是一个分布式加密文件系统,它通过一个统一的访问接口把多个服务器连接起来,形成一个庞大的数据存储空间。AFS提供了一个安全的数据传输路径,客户端与服务器端进行数据交换时可用会话密钥进行加密。AFS存在一个严重的缺陷:数据在服务器端是明文存储。
EFS采用基于公钥的方案实现数据加密或解密,它使用标准x509证书,每一个受保护的文件都是被一个使用带有一定长度的文件加密密钥(FEK)的快速对称加密算法加密的(FEK的长度由算法或法则决定)。
操作系统的安全审计是指对系统中有关安全的活动进行记录、检查和审核。审计是一种事后分析法,一般通过对日志的分析来完成。
日志文件对于维护系统安全很重要。它们为两个重要功能提供数据:审计和监测。
在数据库中,访问控制技术提供了一种控制用户访问数据的机制,它通过创建用户、授予用户相应权限来实施这种控制,规定只有具有相应权限的用户,在符合要求的条件下,才能对数据进行相应的操作。
安全策略表达模型一般分为两大类,即自主访问控制(DAC)和强制访问控制(MAC)。自主访问控制中,用户对信息的访问是基于用户的鉴别和访问控制规则的确定,每个用户都要给予系统中每个访问对象的访问权限。自主访问控制模型的典型代表有HRU模型(Harrison、Ruzzo、Ullman访问控制矩阵模型)、Jones取予模型(Take-Grant模型)、动作——实体模型等。在强制访问控制中,系统给主体和客体分配了不同的安全标记,通过比较主体和客体的安全标记是否匹配,来决定是否允许访问。强制访问控制的典型代表有BLP模型(Bell-La Padula模型)、基于角色的存取控制模型、Clark-Wilson模型、BN模型(Brewer Nash Chinese Wall模型)等。在数据库安全领域,还有Wood模型、Smith Winslett模型等。
在OS层对数据库文件进行加密,由于操作系统无法了解数据库文件中的数据关系,因此操作系统不可能为数据库系统产生与数据相关的、合理的密钥,也无法进行合理的密钥管理和使用。
在DBMS内核层实现加密,这种方法也被称作库内加密,它是指数据在物理存取之前完成加/解密工作。
这种加密方式的优点是加密功能强,并且加密功能几乎不会影响或者很少影响DBMS的功能。
但这种加密体系存在一些缺点。首先密钥管理安全问题。其二,在性能方面,加重了数据库服务器的负载。其三,加法算法的灵活性方面,降低了用户的自主性。
相比而言,在DBMS外层实施加密,即库外加密,是一种较为实用的方法。其具体思路是,将数据库加密系统做成DBMS的一个外层工具,加/解密操作在DBMS之外执行,DBMS所管理的是密文数据。
其显著优点是加解密过程在专门的服务器或者客户端执行,减少了DBMS的设计复杂度,也不会加重数据库服务器的负载并可以降低密码算法性能的严格要求,并且可实现网上传输加密。同时,由于密钥与数据可以分开存储,因此相比于DBMS内核层加密而言,加/解密的流程会更加清晰。但缺点是由于加密使得数据之间的某些关系可能无法充分在数据库中体现出来,某些功能受到限制,如加密后的数据无法进行正常的索引。
我国的数据库安全评估准则于2001年首次提出,即“军用数据库安全评估准则”。我国公安部为推行“等级保护计算机系统”,于2002南发布了公安部行业标准:GA/T389-2002计算机信息系统安全等级保护数据库管理系统技术要求。2005年,全国信息安全标准技术委员会发布了GB/T20009-2005,“信息安全技术数据库管理系统安全评估准则”。这是目前我国与数据库安全直接相关的三个标准。
常用的数据库备份分为物理备份和逻辑备份,其中物理备份又可分为:冷备份和热备份。
冷备份通常是通过定期的对系统数据库进行备份,并将备份数据存储在磁带、磁盘等介质上。
热备份是指当数据库正在运行时进行的备份,又称联机备份。
逻辑备份是物理备份的一种补充,它是软件技术,利用导出工具执行SQL语句方式,从数据库中读取数据,将其导出到一个数据文件中。
数据库恢复技术一般有四种策略:基于数据转储的恢复、基于日志的恢复、基于检测点的恢复和基于镜像数据库的恢复。
基于备份的恢复是指数据库管理员定期地将整个数据库复制到磁带或另一个磁盘上保存起来的过程,这些数据文本成为后备副本或后援副本。
基于日志的恢复是指,运行时将对数据库每一次更新操作,都应优先记录到日志文件中。当系统出现故障,导致事务中断,反向扫描文件日志,查找该事务的更新操作,然后对该事务的更新操作执行逆操作。
利用日志技术进行数据库恢复时,恢复子系统必须搜索日志,从而确定哪些事务需要重做,哪些事务需要撤销。
介质故障是对系统影响最为严重的一种故障。系统出现介质故障后,用户应用全部中断,恢复起来也比较费时。
数据库镜像就是在另一个磁盘上作数据库的实时副本。当主数据库更新时,DBMS自动把更新后的数据复制到镜像数据,即DBMS始终自动保持镜像数据和主数据保持一致性。一旦当主库出现故障时,可由镜像磁盘继续提供使用,同时DBMS自动利用镜像磁盘数据进行数据库的恢复。
各省软考办 | ||||||||||