计算机安全目标与操作系统的安全级别

  一个通过一种或多种安全产品实现的安全模型能够在满足三方面的功能上体现其价值。这三个模型的简称是CIA。表示计算机安全的三个中心目标:
  机密性(Confidentiality):保护数据不受非法的访问。
  完整性(Integrity):保护数据不受非法的篡改。
  可用性(Availability):保护关键资源不受非法中止。
  当人们被问起为什么计算机安全很重要的时候,往往他们的第一反应是对机密性的考虑。大多数人不会对那些对你的医疗记录非常好奇的人坦白一切的。当然,收入情况和其它的私人信息也往往是需要保密的。同样的,许多种保护银行交易过程的机密性的人工手段已经存在了几百年了。所以,当计算机还没有出现的时候,人们已经在想方设法保持某些信息的机密性了。
  信息的完整性是另一个日常生活中需要考虑的问题。如果不能够防止信用卡使用记录被非授权的访问,就代表了一个系统不能够维护数据的完整性。在网络通信中,如果攻击者能够在数据包到达目的计算机之前能够对数据进行篡改,那么信息的完整性就受到了破坏。如果一个入侵者能够在人们浏览Web站点的时候收集他们个人计算机上的个人信息,并且进一步利用这些信息从他们的银行账户上盗窃资金,那么他们就同时成为了保密性和完整性受破坏的受害者。
  由于安全问题而导致的数据不可用性是一个大问题。如果一个证券交易公司的主交易数据库不能够被访问,那么每过1分钟就可能损失几千万元。如果数据库因为软件本身存在的bug导致不可用,可能人们还不会太关注。同样由于磁盘故障导致数据库损坏也不会太希奇。但是,如果一个数据库是由于商业间谍的入侵而破坏的,那么就等着看明天报纸的头条吧!但是即便存在这种情况,很多时候,我们还是会花大量的钱去购买备份的电源、备份的网卡、备份的服务器、备份的磁盘,但是很少会去买一个安全防护产品。
  在计算机安全的范畴内,我们还能够发现其它需要实现的目标,包括身份验证和不可抵赖性。身份验证是当出现类似于用户在输入口令的情况的时候确定某人或某物的身份的过程。而不可抵赖性是指证明一条信息确实来自于某个人,而且不可能来自于其他人的过程。在本文中,身份验证是一个基本安全模型中必须的一部分,但不是最终目的。不可抵赖性或许在一些地方需要,但因为不是每人都需要,所以就不作为基本安全模型中的一部分提出。
  我们希望安全产品能够充分满足模型的各个方面的定义。当实施存在漏洞,那么系统就有可能缺乏保密性、完整性和可用性。

操作系统的安全级别

  美国国防部于1983年提出并于1985年批准的“可信计算机系统安全评价准则(TCSEC)”将计算机系统的安全可信性分为七个级别(由低到高):
  D 最低安全性;
  C1 主存取控制;
  C2 较完善的自主存取控制(DAC)、审计;
  B1 强制存取控制(MAC);
  B2 良好的结构化设计、形式化安全模型;
  B3 全面的访问控制、可信恢复;
  A1 形式化认证。

  目前,各商用操作系统的安全级别如下表所示:
  

操作系统类型
安全级
 SCO Open Server
C2
 OSF/1
B1
 Windows NT
C2
 DOS
D
 Solaris
C2
 HP-UX
C2
 AIX
C2

  从表中可以看出,商用操作系统的安全级别一般最高达到C2级。它采取自主存取控制(DAC)按用户意愿进行存取控制。基于这种机制,用户可以说明其私人资源允许系统中哪个(些)用户以何种权限进行共享。在这种方式下,资源允许哪些用户进行什么样的访问完全是由资源的主人决定的。在实际的应用系统中,某些关键资源的主人往往是业务人员,他们很难对系统和安全有深入的了解,也就很难准确地设置资源的安全属性,防止被非法访问。