网络安全笔记:网络信息安全服务
该部分为本科期间网络安全课程笔记备份。
| 攻击安全服务 | 机密性 | 完整性 | 可用性 | 可审性 |
|---|---|---|---|---|
| 访问攻击 | T | F | F | T |
| 篡改攻击 | F | T | F | T |
| 拒绝服务 | F | F | T | F |
| 否认 | F | T | F | T |
机密性(Confidentiality)
机密性是用加密的方法实现的。
三种加密的目的
- 密级文件改为公开文件
- 无论是绝密文件还是机密文件,经加密都变成公开文件
- 在通信线路上公开发送,在非密的媒体中公开存放,不受密级管理的限制
- 实现多级控制需要
- 密级划分也是等级划分,按不同密级加密是为了实现多级控制
- 构建VPN的需要
- 修筑加密通道 防止搭线窃听和冒名入侵
三种机密性
- 连接机密:即对某个连接上的所有用户数据提供机密。
- 无连接机密:即对一个无连接的数据报的所有用户数据提供机密。
- 选择字段机密:即对一个协议数据单元中的用户数据的一些经选择的字段提供机密。
信息流安全:即对可能从观察信息流就能推导出的信息提供机密。
机密性服务
机密性服务提供信息的保密。正确地使用该服务,就可防止非授权用户访问信息。机密性服务应考虑信息所在的形式和状态。
机密性服务必须和可审性服务配合工作。后者用来标识各个访问者的身份,实施该功能,机密性服务能对抗访问攻击。
机密性服务必须与可审性服务一起对企图访问信息的每个成员建立身份标识,两种服务结合起来可减少非授权访问的风险。
对抗访问攻击:机密性+可审性
文件机密性
- 纸面文件:访问控制
- 电子文件:
- 软/硬盘、CD等:访问控制、加密
- 计算机系统:访问控制+身份鉴别
为实现文件机密性服务,所需提供的机制包括物理安全机制、计算机文件访问控制以及文件加密。文件机密性的要求包括身份标识和身份鉴别、正确的计算机系统配置,如使用加密则还需合适的密钥管理。
信息传输机密性
仅仅保护存储在文件中的信息是远远不够的。信息有可能在传输过程中受到攻击,因此必须同时保护在传输中的信息机密性。
可以基于每个报文信息进行加密保护,也可以对链路上的所有通信进行加密。加密能阻止窃听,但不能完全阻止信息的截获。为了保护被截获的信息,需要合适的身份标识和身份鉴别,它可决定远程端点的身份。
通信流机密性
不同于传输或存储,通信流的机密性并不关心信息本身的内容。它主要关心两个端点之间所发生的通信形式。
- 通过通信分析可识别组织之间的通信情况。
- 在大量通信流的两个端点之间加入模糊(遮掩)信息流可提供通信流机密性服务
完整性(Integrity)
完整性提供信息的正确性。正确地使用完整性服务,就可使用户确信信息是正确的,未经非授权者修改过。
同机密性服务一样,该服务也必须和可审性服务配合工作。完整性服务能对抗篡改攻击。完整性服务同样应考虑信息所在的形式和状态。
完整性服务可成功地阻止篡改攻击和否认攻击。任何篡改攻击都可能改变文件或传输中的信息,当完整性服务能检测到非授权者的访问,篡改攻击就不能成功进行。当完整性服务和身份标识、身份鉴别服务很好地结合,即使组织以外的文件被改变也能被检测出来。如果没有好的完整性服务以及好的身份标识、身份鉴别服务,那么否认攻击也不可能被成功阻止而检测这种攻击的机制是数字签名。
对抗篡改、否认攻击:完整性+可审性
完整性分类
- 可恢复的连接完整性:该服务对一个连接上的所有用户数据的完整性提供保障,而且对任何服务数据单元的修改、插入、删除或重放都可使之复原。
- 无恢复的连接完整性:该服务除了不具备恢复功能之外,其余同前。
- 选择字段的连接完整性:该服务提供在连接上传送的选择字段的完整性,并能确定所选字段是否已被修改、插入、删除或重放。
- 无连接完整性:该服务提供单个无连接的数据单元的完整性,能确定收到的数据单元是否已被修改。
- 选择字段无连接完整性:该服务提供单个无连接数据单元中各个选择字段的完整性,能确定选择字段是否被修改。
文件完整性
文件的存在形式不同,文件的完整性服务的方式也相应不同。
- 纸面文件:签名签名、装订成册 装订成册、分发多个文件复制本等。
- 电子文件:访问控制。设置为只读文件,不允许写。
有一种机制来识别非授权者对文件的改变。一种有效的机制就是数字签名,它必须与特定用户的识别一起工作。因此完整性服务也必须和身份标识、身份鉴别功能结合在一起。
信息传输完整性
信息在传输中也可能被修改,然而如果不实施截获攻击就很难对传输中的信息进行修改。通常用加密方法可阻止大部分的篡改攻击。当加密和强身份标识、身份鉴别功能结合在一起时,截获攻击便难以实现,
可用性服务
可用性服务提供的信息是可用的。
可用性使合法用户能访问计算机系统,存取该系统上的信息,运行各种应用程序。
可用性还提供两个计算机系统之间可用的传输信息的通信系统。
可用性是用来对拒绝服务攻击的系统恢复。可用性并不能阻止拒绝服务攻击,但可用性服务可用来减少这类攻击的影响,并使系统得以在线恢复、正常运行。
后备
最简单的可用性服务,是指对重要信息复制一份拷贝,并将其存储在安全的地方。
提供信息可用性,并不需要提供及时的后备。这意味着后备可能从远地检索到,然后传送到现场,并加载到相应的系统。
在线恢复
提供信息和能力的重构。不同于后备,带有在线恢复配置的系统能检测出故障,并重建诸如处理、信息访问、通信等能力。它是通过使用冗余硬件自动处理的。
通常认为在线恢复是一种立即的重构,且无须进行配置。冗余系统也可以在现场备用,以便在原始系统发生故障时再投入使用。这种应用方式比大部分立即在线恢复系统更便宜。
灾难恢复
针对大的灾难来保护系统、信息和能力。灾难恢复是当整个系统或重要的设备不可用时采取的重构一个组织的进程。
可审性服务
可审性服务本身并不能针对攻击提供保护,因此容易被人们疏忽。可审性服务必须和其他安全服务结合,从而使这些服务更加有效。
可审性服务会增加系统的复杂性,降低系统的使用能力。然而,如果没有可审性服务,机密性服务与完整性服务也会失效。
鉴别性(Authentication)
鉴别性保证真实性。
鉴别分类
- 标识鉴别是对主体的识别和证明,特别防止第三者的冒名顶替
- 数据鉴别是对客体的鉴别,主要检查主体对客体的负责性,防止冒名伪造的数据
- 发方真实(客户)
- 收方真实(服务器)
- 数据源与目的地真实
不可否认性(Nonrepudiation)
当发方发送信息时,收方能够证明信息源是合法的;当收方接到信息时,发方能够证明信息目的地是合法的。
为作到这一点,发放发送信息时要有发方的签名,收方应发收方签名的回执。
- 不得否认发送:这种服务向数据接收者提供数据源的证据,从而可防止发送者否认发送过这个数据。
- 不得否认接收:这种服务向数据发送者提供数据已交付给接收者的证据,因而接收者事后不能否认曾收到此数据。
身份标识与身份鉴别
目的
- 是对试图执行一个功能的每个人的身份进行标识
- 是验证这些人声称的身份
身份鉴别方法
- 知识因子:口令或PIN
- 拥有因子:智能卡或标记
- 生物因子:指印、视网膜
双因子身份鉴别

- 每一种身份鉴别方法本身有它自身的弱点,采用双因子鉴别可互相取长补短 子鉴别可互相取长补短。
- 身份标识与身份鉴别也有助于计算机文件访问控制,以提供计算机系统电子文件的机密性和完整性。它对加密和数字签名也是重要的。然而,身份标识与身份鉴别必须要传给远程用户。远程用户要对本地机制证明它的身份标识。
- 用户首先对保护签名的本地机器作身份鉴别,然后本地机器允许使用签名机制,并发送已进行身份鉴别的报文。接收到该报文的用户使用数字签名以证明该报文的发送者的身份。在大多数情况下,身份标识与身份鉴别机制是一个组织内其他安全服务的关键。
- 如果身份标识与身份鉴别失效了,那么完整性和机密性也无法保证。
网络环境下的身份鉴别
网络环境下的身份鉴别是验证某个通信参与方的身份是否与他所声称的身份一致的过程。一般通过某种复杂的身份认证协议来实现。身份认证协议是一种特殊的通信协议,它定义了参与认证服务的所有通信方在身份认证过程中需要交换的所有消息的格式、这些消息发生的次序以及消息的语义,通常采用密码学机制。
身份认证是建立安全通信的前提条件,只有通信双方相互确认对方身份后才能通过加密等手段建立安全信道,同时它也是授权访问(基于身份的访问控制)和审计记录等服务的基础,因此身份认证在网络安全中占据十分重要的位置。这些协议在解决分布式,尤其是开放环境,起着很重要的作用。其中系统的组成部分以及连接它们的网络可以跨越地理和组织的界限。
两种身份认证技术
口令技术是常用的一种身份认证技术。口令泄露可以有多种途径。
- 所谓在线攻击是指在线状态下攻击者对用户口令进行的猜测攻击。
- 所谓离线攻击是指攻击者通过某些手段进行任意多数量的口令猜测,采用攻击字典和攻击程序,最终获得口令。离线攻击方法是Internet上常用的攻击手段。
口令攻击种类
- 网络数据流窃听: 由于认证信息要通过网络传递,并且很多认证系统的口令是未经加密的明文,攻击者通过窃听网络数据,就很容易分辨出某种特定系统的认证数据,并提取出用户名和口令。口令被盗也就是用户在这台机器上的一切信息将全部丧失,并且危及他人信息安全,计算机只认口令不认人。最常见的是电子邮件被非法截获。
- 认证信息截取/重放(Record/Replay):有的系统会将认证信息进行简单加密后进行传输,如果攻击者无法用第一种方式推算出密码,可以使用截取/重放方式。攻击者仍可以采用离线方式对口令密文实施字典攻击。
- 字典攻击: 由于多数用户习惯使用有意义的单词或数字作为密码,某些攻击者会使用字典中的单词来尝试用户的密码。所以大多数系统都建议用户在口令中加入特殊字符,以增加口令的安全性。
- 穷举尝试(Brute Force): 这是一种特殊的字典攻击,它使用字符串的全集作为字典。如果用户的密码较短,很容易被穷举出来,因而很多系统都建议用户使用长口令。
- 窥探: 攻击者利用与被攻击系统接近的机会,安装监视器或亲自窥探合法用户输入口令的过程,以得到口令。
- 社交工程: 攻击者冒充合法用户发送邮件或打电话给管理人员,以骗取用户口令。
- 垃圾搜索: 攻击者通过搜索被攻击者的废弃物,得到与攻击系统有关的信息,如果用户将口令写在纸上又随便丢弃,则很容易成为垃圾搜索的攻击。
对付重放式攻击的方法
- 在认证交换中使用一个序数来给每一个消息报文编号,仅当收到的消息序号合法时才接受之;
- 使用时间戳(A接受一个新消息仅当该消息包含一个A认为是足够接近A所知道的时间戳);
- 询问/应答方式(A期望从B获得一个新消息,则先发给B一个临时值,并要求后续从B收到的消息包含正确的这个临时值)。
口令的安全缺点
- 大多数系统的口令是明文传送到验证服务器的,容易被截获。某些系统在建立一个加密链路后再进行口令的传输以解决此问题,如配置链路加密机。
- 口令维护的成本较高。为保证安全性,口令应当经常更换。另外为避免对口令的字典攻击,口令应当保证一定的长度,并且尽量采用随机的字符。但缺点是难于记忆。
- 口令容易在输入的时候被攻击者偷窥,而且用户无法及时发现。
简单和安全是互相矛盾的两个因素
口令概率公式
口令猜中概率公式:P=L*R/S
L:口令生命周期;S:所有可能口令的数目;R:进攻者单位时间内猜测不同口令次数。
采用手段:
- 减少口令使用寿命 ,即提高口令更换的频率;
- 降低进攻者单位时间内猜测尝试口令的次数;
- 增加可能口令的数目 ,即提高口令的字符个数。
口令的频繁更换增加了用户的负担,也为资深入侵者提供了条件 (为了便于记忆 ,人们往往选择与其个人相关的口令),口令字符个数的增加也会增加用户的负担且不会对资深入侵者有更大影响。因此,手段2应是较为有效防猜中手段。
物理形式的身份认证标记
采用物理形式的身份认证标记进行身份认证的鉴别技术。
常用的身份认证标记是磁卡和智能卡。磁卡存储着关于用户身份的一些数据,用户通过读卡设备向联网的认证服务器提供口令才能证明自己的身份。最简单的智能卡称作PIN(Personal Identification Number)保护记忆卡,PIN是由数字组成的口令,只有读卡机将PIN输入智能卡后才能读出卡中保存的数据。这种卡比磁卡安全,可以存放一些秘密信息。
身份认证协议
基于密码学原理的密码身份认证协议比基于口令或者地址的认证更加安全,而且能够提供更多的安全服务。
各种密码学算法,如私钥算法、公钥算法和哈希算法都可以用来构造身份认证协议,它们各有特点。可以分为共享密钥认证、公钥认证和零知识认证等几类。
计算机可以存放高质量的密钥,进行复杂的加密解密运算。计算机可以代表用户进行加密解密操作,但是需要用户提供口令,将用户口令经过变换可以获得加密使用的密钥,或者是用口令来解密一个存放在某处的高质量的密钥,例如用PIN获得存放PIN保护记忆卡中的高质量密钥。
身份认证协议一般有两个通信方,可能还会有一个双方都信任的第三方参与进行。其中一个通信方按照协议的规定向另一方或者第三方发出认证请求,对方按照协议的规定作出响应或者其他规定的动作,当协议顺利执行完毕时双方应该确信对方的身份。
会话密钥
在很多协议中,不仅要求验证相互身份,而且还要建立后续通信使用的会话密钥。
所谓会话密钥(Session Key) 是指在一次会话过程中使用的密钥,一般都是由机器随机生成的。会话密钥在实际使用时往往是在一定时间内都有效,并不真正限制在一次会话过程中。虽然公开密钥系统也被用于认证协议中,但是由于公钥系统算法复杂度高,大量数据的加密还是采用传统密码,因此会话密钥都是传统密钥。
由于会话密钥主要用于通信加密,因此也将它称为通信密钥,与用于身份认证的认证密钥加以区分。会话密钥能够有效地抵抗密码分析攻击;而认证密钥不能长时间使用,否则容易被攻击者搜集到足够的密文数据进行密码分析。需要建立会话密钥的认证协议也被称为密钥分发协议。
分发密钥的主要技术
KDC方式和CA方式是分发密钥的主要技术,它们各有自己明显的优势和缺陷。
- 公钥方式的身份认证协议安全强度要高,但是计算开销大;
- 越来越多的安全系统倾向于利用公钥进行认证和建立对称的会话密钥,利用传统密钥进行大量数据传输的方法。
共享密钥认证
共享密钥认证的思想是从通过口令认证用户发展来的。传统方式是检验对方传递来的口令是否正确,但是这样口令容易在传递过程中被窃听而泄露。必须采用既能够验证对方拥有共同的秘密又不会在通信过程中泄露该秘密的方法,挑战/响应技术可完成这一目标。
在网络环境下,一台计算机可能要与很多台计算机进行身份认证,如果全部采用挑战/响应方式认证,那么就需要与众多的计算机都建立共享密钥。这样做在大型网络环境中既不经济也不安全,同时大量共享密钥的建立、维护和更新将是非常复杂的事情。
密钥分发中心(KDC)
密钥分发中心:Key Distribution Center
1978年由Needham和Schroeder提出的,KDC在网络环境中为大家所信任,并且与每个网络通信方都有一个共享密钥。网络中每个通信参与方都只与KDC有共享密钥,它们之间的认证需要借助于可信第三方KDC才能完成。
KDC负责给通信双方创建并分发共享密钥,通信双方获得共享密钥后再利用挑战/响应协议建立相互信任关系。
公钥认证
公开密钥算法的出现为身份认证协议带来了更强有力的方法和手段,因为它可以让对方通过密码运算验证自己的身份而不需要将自己的私钥告诉对方。在公钥算法中,一般将利用私钥对明文信息进行的变换称为签名(sign),变换后的信息为签名信息;将利用公钥对明文信息进行的变换称为封装(seal)或者加密。
从使用方便程度和可管理程度上出发引入一个可信第三方来参与分发公钥,若没有可信第三方的参与,每个通信参与方都需要记住所有其他用户的公钥,不仅增加负担而且无法更新维护;其次每个通信方产生自己的私钥和公钥,而它们的可信赖程度不同,一旦出现问题和纠纷需要权威中间机构进行仲裁。
证书 (Certificate)
在实际网络环境中,采用证书的方式来分发公钥。
证书是一种特殊格式的数据记录,它包含有证书代表的通信参与方的名字、身份信息、公钥以及签发机构、签发日期、序列号、有效期等相关数据,由证书权威机构(Certificate Authority,CA)用自己的私钥进行签名。
证书权威机构扮演可信第三方的角色,它是大家信任的组织、机构。所有的公钥认证系统都采用了证书方式,证书被设计存放在目录服务系统中,通信参与方拥有CA的公钥,可以从目录服务中获得通信对方的证书,通过验证CA签名可以相信证书中列出的对方公钥。
审计功能
可审性的另一个重要功能是审计。审计提供历史事件的记录。审计记录将每个人及其在计算机系统中或在物理世界中的行动联系起来。如果没有正确的身份标识与身份鉴别,审计记录也是没有用的,因为无法保证这些记录事件确实是谁执行的。
在物理世界,审计的方法有入门的日志、签名本、录像仪等。这些物理记录的目的是提供执行各种行动的记录。应该特别指出的是,必须采用完整性服务以保证这些审计记录没有被修改过。否则,这些审计记录是值得怀疑的。
在电子世界,计算机系统提供日志,以记录用户ID的行动。假如身份标识与身份鉴别功能的作用合适,这些事件就能跟踪用户的行为。同样,必须保护好计算机系统上的审计记录,防止非授权者对其进行修改,事实上审计记录要防止任何人的修改。
可审性服务并不能阻止攻击。它与其他服务结合,尤其是机密性和完整性服务结合,对试图执行某些操作者进行正确的身份标识与身份鉴别。可审性服务还提供用户对系统执行的操作记录,因此事件能重构。

浙公网安备 33010602011771号