翻译:中国科学技术大学信息安全专业老师 第13章网络安全 部署网络是为了使计算机对外部世界来说更容易使用。使计算机对外部更容易使用是好 坏掺半之事。可能的相互作用越多,不受欢迎的相互作用也越多。因此,你可能希望控制自 己系统上的用户怎样能够访问网络,网络上的用户怎样能访问你的系统,以及当你的数据在 网络上传输时,怎样保护传输的数据等。因此,网络安全不仅是关于密码,而且对访问控制 提出了新的要求。 目标 ·获得针对网络的安全挑战的概观,理解网络安全怎样影响和依赖计算机安全。 使用基本的 Internet安全协议 IPSEC和 SSL/TLS作为范例,介绍网络安全协议的设 ·了解网络边界可以怎样用作安全周界 理解各种防火墙技术的原理,它们能提供的服务,以及它们固有的限制 13.1简介 我们在前面对安全协议的讨论保持在相当抽象的层次上。当数据(消息报文)在实体间 传输时,我们完全没有关心数据交换的精确的性质。安全协议的一些特征能够在这样的模型 中得到检验,但是一旦你开始实现安全协议的时候,你必须更密切注意你的计算机网络的技 术细节 计算机网络是分布式系统中结点之间传输数据的通信基础设施。一个结点上某个应用程 序要发送的数据必须事先准备好,用一个序列的电信号或光信号来传输:接收端进行重组, 并且传送给某个应用程序。网络协议必须找到一条从发送者到接收者的路径,它们必须处理 数据的丢失和损坏,而且还要处理失去的连接,例如施工人员刺穿了电话线缆。一个好的工 程实践是一次一个地解决这些令人关注的问题并使用一个应用层协议在顶端、物理地传输信 息比特流的协议位于底端的分层体系结构。网络安全的主要任务之一就是为特殊的安全服务 寻找一个最合适的网络层次 网络管理协议提供了所需要的支持,使得由其他协议生成的数据可以有效地传送到指定 的接收者。例如,管理协议可以检查在发送者和接收者之间的中间结点的可用性,找到最佳 的连接,或者解决逻辑网络地址到物理地址的转换。其他协议用来远程地配置网络结点,在 这些结点上运行的软件正在变得越来越复杂。因此,网络安全越来越依赖于网络管理协议的 安全和网络中结点的安全。把网络结点安排在保护的场地内的做法已不再是对安全的保证。 13.1.1分层模型 开放系统互联(OSⅠ)体系结构的七层模型,如图131所示,是分层网络协议的公共框 架结构。在这本书里,我们不关心每一层的精确意义。相反,我们只对它的分层模型感兴趣, 因为它们对讨论网络安全提供了相当有用的抽象。分层模型也让我们回到了在142节中的 熟悉的主题 在顶部的安全服务可以用来满足某种特定应用的要求。然而,不同的应用每个都需要 第1页共12页 创建时间:2003-11
翻译:中国科学技术大学信息安全专业老师 第 1 页 共 12 页 创建时间:2003-11 第 13 章 网络安全 部署网络是为了使计算机对外部世界来说更容易使用。使计算机对外部更容易使用是好 坏掺半之事。可能的相互作用越多,不受欢迎的相互作用也越多。因此,你可能希望控制自 己系统上的用户怎样能够访问网络,网络上的用户怎样能访问你的系统,以及当你的数据在 网络上传输时,怎样保护传输的数据等。因此,网络安全不仅是关于密码,而且对访问控制 提出了新的要求。 目标 ·获得针对网络的安全挑战的概观,理解网络安全怎样影响和依赖计算机安全。 ·使用基本的 Internet 安全协议 IPSEC 和 SSL/TLS 作为范例,介绍网络安全协议的设 计。 ·了解网络边界可以怎样用作安全周界。 ·理解各种防火墙技术的原理,它们能提供的服务,以及它们固有的限制。 13.1 简介 我们在前面对安全协议的讨论保持在相当抽象的层次上。当数据(消息报文)在实体间 传输时,我们完全没有关心数据交换的精确的性质。安全协议的一些特征能够在这样的模型 中得到检验,但是一旦你开始实现安全协议的时候,你必须更密切注意你的计算机网络的技 术细节。 计算机网络是分布式系统中结点之间传输数据的通信基础设施。一个结点上某个应用程 序要发送的数据必须事先准备好,用一个序列的电信号或光信号来传输;接收端进行重组, 并且传送给某个应用程序。网络协议必须找到一条从发送者到接收者的路径,它们必须处理 数据的丢失和损坏,而且还要处理失去的连接,例如施工人员刺穿了电话线缆。一个好的工 程实践是一次一个地解决这些令人关注的问题并使用一个应用层协议在顶端、物理地传输信 息比特流的协议位于底端的分层体系结构。网络安全的主要任务之一就是为特殊的安全服务 寻找一个最合适的网络层次。 网络管理协议提供了所需要的支持,使得由其他协议生成的数据可以有效地传送到指定 的接收者。例如,管理协议可以检查在发送者和接收者之间的中间结点的可用性,找到最佳 的连接,或者解决逻辑网络地址到物理地址的转换。其他协议用来远程地配置网络结点,在 这些结点上运行的软件正在变得越来越复杂。因此,网络安全越来越依赖于网络管理协议的 安全和网络中结点的安全。把网络结点安排在保护的场地内的做法已不再是对安全的保证。 13.1.1 分层模型 开放系统互联(OSI)体系结构的七层模型,如图 13.1 所示,是分层网络协议的公共框 架结构。在这本书里,我们不关心每一层的精确意义。相反,我们只对它的分层模型感兴趣, 因为它们对讨论网络安全提供了相当有用的抽象。分层模型也让我们回到了在 1.4.2 节中的 熟悉的主题。 ·在顶部的安全服务可以用来满足某种特定应用的要求。然而,不同的应用每个都需要
翻译:中国科学技术大学信息安全专业老师 它们自身的安全协议 在底部的安全服务可以保护来自所有高层的通信( traffic),减轻了应用层协议设计者 对安全的关心。然而,一些应用可能发现这种保护不能很好地满足它们的要求 在一个分层模型中,N层的对等实体使用N层协议。N+1层的协议看到的是在N层上 的一个虚拟连接,并且不必考虑任何底层的情况,如图132所示。 图13.1 ISO/OSI七层模型 图132在N层的虚连接 自然,在实际的现实中,N层协议是建立在底层协议之上的。这里有一个用于传输数据 到底层的通用模式。N层协议的消息( message)称为N层协议数据单元((N)-PDU)。N 层协议通过调用N-1层的设施( facilities)来传输一个N层协议数据单元。在这个阶段,N 层协议数据单元可能被分段或者经过其他的处理,结果经过头标和尾部包装,成为N-1层 协议数据单元。这些N-1层协议数据单元的接收者使用头标和尾部中的信息来重组N层协 议数据单元。图13.3给出了这个过程的一个简化视图。 现在我们可以简要地描绘安全服务能在这种分层模型中实现,使得对其他服务的影响保 持最小。如果N层的协议要调用N-1层的安全服务,你可以重写一些已经存在的功能或者 添加一些新的安全功能。在第一种情况下,N层协议根本不必改变。在第二种情况下,它必 须改变调用,以便引用安全功能。在这两种情况下,N-1层协议数据单元的头标是存放与安 全有关的数据的合适位置。 图13.3处理一个(N)-PDU 13.12嗅探( Sniffing)和欺騙( Spoofing) 网络安全的一部分和对消息传输特有的威胁有关。有些威胁,如数据的非授权泄露和修 改,在前面的章节中已经详细讨论过。在计算机网络中搭线窃听并不困难,发送者和接收者 之间的一个直接链路只是一种抽象而已,如图134所示。实际上,你应该料想到有任意多 的中间结点在发送者和接收者之间转发了消息,如图13.5所示。根据它们的功能划分,这 些中间结点称为网桥、网关、路由器等。每一个这样的设备读取输入的消息,然后决定下 步动作,例如,往哪里转发输入的消息。这些设备大多都包括软件组件。这样为运行功能强 大的嗅探( sniffer)软件创造了机会, sniffer读入通信流,把敏感信息转发给攻击者 图13.4计算机网络通信的抽象视图 敏感信息包括管理数据,比如网络地址或者在一个结点上准备运行的协议指示。即使你 通过加密来慎重保护你的应用数据,一个潜在的攻击者可以知道关于你的网络的内部结构, 而且使用这些信息来发起攻击。类似的,从收集关于负荷和结点的可用性的网络管理协议中 拣拾来的信息也可认为是敏感信息。同时,为了有效地使用网络,这些协议是需要的。如果 保护太过严实,又可能很容易地降低网络提供的服务质量 网络安全的其他威胁来自于伪装的源地址欺骗,来自于一些实体后来否认卷入它们曾经 参与过的事务,或来自通信流量分析,其中攻击者仅仅从两个实体正在交换消息的事实获取 信息 第2页共12页 创建时间:2003-11
翻译:中国科学技术大学信息安全专业老师 第 2 页 共 12 页 创建时间:2003-11 它们自身的安全协议。 ·在底部的安全服务可以保护来自所有高层的通信(traffic),减轻了应用层协议设计者 对安全的关心。然而,一些应用可能发现这种保护不能很好地满足它们的要求。 在一个分层模型中,N 层的对等实体使用 N 层协议。N+1 层的协议看到的是在 N 层上 的一个虚拟连接,并且不必考虑任何底层的情况,如图 13.2 所示。 图 13.1 ISO/OSI 七层模型 图 13.2 在 N 层的虚连接 自然,在实际的现实中,N 层协议是建立在底层协议之上的。这里有一个用于传输数据 到底层的通用模式。N 层协议的消息(message)称为 N 层协议数据单元((N)-PDU)。N 层协议通过调用 N-1 层的设施(facilities)来传输一个 N 层协议数据单元。在这个阶段,N 层协议数据单元可能被分段或者经过其他的处理,结果经过头标和尾部包装,成为 N-1 层 协议数据单元。这些 N-1 层协议数据单元的接收者使用头标和尾部中的信息来重组 N 层协 议数据单元。图 13.3 给出了这个过程的一个简化视图。 现在我们可以简要地描绘安全服务能在这种分层模型中实现,使得对其他服务的影响保 持最小。如果 N 层的协议要调用 N-1 层的安全服务,你可以重写一些已经存在的功能或者 添加一些新的安全功能。在第一种情况下,N 层协议根本不必改变。在第二种情况下,它必 须改变调用,以便引用安全功能。在这两种情况下,N-1 层协议数据单元的头标是存放与安 全有关的数据的合适位置。 图 13.3 处理一个(N)-PDU 13.1.2 嗅探(Sniffing)和欺骗(Spoofing) 网络安全的一部分和对消息传输特有的威胁有关。有些威胁,如数据的非授权泄露和修 改,在前面的章节中已经详细讨论过。在计算机网络中搭线窃听并不困难,发送者和接收者 之间的一个直接链路只是一种抽象而已,如图 13.4 所示。实际上,你应该料想到有任意多 的中间结点在发送者和接收者之间转发了消息,如图 13.5 所示。根据它们的功能划分,这 些中间结点称为网桥、网关、路由器等。每一个这样的设备读取输入的消息,然后决定下一 步动作,例如,往哪里转发输入的消息。这些设备大多都包括软件组件。这样为运行功能强 大的嗅探(sniffer)软件创造了机会,sniffer 读入通信流,把敏感信息转发给攻击者。 图 13.4 计算机网络通信的抽象视图 敏感信息包括管理数据,比如网络地址或者在一个结点上准备运行的协议指示。即使你 通过加密来慎重保护你的应用数据,一个潜在的攻击者可以知道关于你的网络的内部结构, 而且使用这些信息来发起攻击。类似的,从收集关于负荷和结点的可用性的网络管理协议中 拣拾来的信息也可认为是敏感信息。同时,为了有效地使用网络,这些协议是需要的。如果 保护太过严实,又可能很容易地降低网络提供的服务质量。 网络安全的其他威胁来自于伪装的源地址欺骗,来自于一些实体后来否认卷入它们曾经 参与过的事务,或来自通信流量分析,其中攻击者仅仅从两个实体正在交换消息的事实获取 信息
翻译:中国科学技术大学信息安全专业老师 13.1.3 ISO/OSI安全体系结构 ISO/OSⅠ安全体系结构5l定义了抗击上面列出的威胁的安全服务。这个安全体系结构频 繁地被引证引用,也被批评引用。反对它的争论以及为什么实际上没有任何实现的原因属于 关于网络安全方面的书中的内容。然而,你完全可能在某些形式或者其他形式上遇到这种体 系结构,因此这里有一个服务列表: 数据机密性( confidentiality):保护数据以免非授权泄露,包括通过通信流分析的信 息泄露 数据完整性( Integrity):保护数据以免非授权修改或者破坏。 数据源认证( authentication):证实数据来源。 对等实体认证( peer-entity authentication):验证对等实体(在同一协议层的实体)的 身份:对等实体认证常常发生在一个连接建立的时候,包括关于密钥的协商,然后密钥在会 话期间用来进行数据源认证。 ·不可否认(Non- repudiation):创建数据被发送或者接收的证据,因此发送者(或者 接收者)后来不能否认这个事实。ISO7498-2使用了术语初始源证据( proof of origin)和 递送证据( proof of delivery)。在其他文献中,你也可能发现提交证据( proof of submission) 和接收证据( proof of receipt)。这些术语的意义有时会有交叠。 为提供这些服务使用的机制大多来自密码术,即加密、数字签名、完整性检査功能等。 密码保护有一个好的特性。当N层安全协议在其下层不安全协议的上面运行时,N层的安 全协议不会受到危害。对这种规则有一个例外。当你的目标是匿名,而且你采取预防措施来 隐藏在一层的参与者的身份时,则由较低层的协议添加的一些数据仍然可能泄露关于消息的 来源和目的地的信息 图13.5在计算机网络中的消息传输 132TcPP安全 为了用实例说明网络安全在实际中如何工作,我们现在研究在 Internet协议套范围内的 安全,如图136所示。在 Internet模型中,ISO/OSI模型协议已经瓦解了,只留下了四层。 在应用层的协议有 Telnet,FTP,HITP,SMIP( Simple Mail Transfer Protocol,简单 邮件传送协议),或者SET( Secure Electronic Transaction,安全电子事务处理) 在传输层的协议是TCP( Transmission Control Protocol)和UDP( User Datagram Protocol)。TCP和UDP根据端口号标识PDU(协议数据单元)所属的应用协议。公共端口 号有21(FTP),23( Telnet),25(SMIP)和80(HTIP)等。 在网络层,有IP协议( Internet Protocol,网际互连协议)。 接口层的协议与具体的网络技术有关。 TCP和IP,连同UDP和管理协议ICMP一起,形成 Internet的核心。最初,这些协议 是为通过不可靠网络连接的友好和协同工作的用户设计的,因此根本就没有考虑安全问题。 现在,TCPP被广泛地使用,便出现了对安全服务的强烈要求。 Internet工程任务组(IETF) 已经在网际互连层和传输层对安全协议提出了建议。这些协议将是后面两节讨论的主题。我 们必须利用这个事实,这些提议中的许多至今还是草案,还没有深深的进入技术细节。在这 一章结束的参考文献中指出了现行技术文档的出处。 图136 Internet分层结构 第3页共12页 创建时间:2003-11
翻译:中国科学技术大学信息安全专业老师 第 3 页 共 12 页 创建时间:2003-11 13.1.3 ISO/OSI 安全体系结构 ISO/OSI 安全体系结构[51]定义了抗击上面列出的威胁的安全服务。这个安全体系结构频 繁地被引证引用,也被批评引用。反对它的争论以及为什么实际上没有任何实现的原因属于 关于网络安全方面的书中的内容。然而,你完全可能在某些形式或者其他形式上遇到这种体 系结构,因此这里有一个服务列表: ·数据机密性(confidentiality):保护数据以免非授权泄露,包括通过通信流分析的信 息泄露。 ·数据完整性(integrity):保护数据以免非授权修改或者破坏。 ·数据源认证(authentication):证实数据来源。 ·对等实体认证(peer-entity authentication):验证对等实体(在同一协议层的实体)的 身份;对等实体认证常常发生在一个连接建立的时候,包括关于密钥的协商,然后密钥在会 话期间用来进行数据源认证。 ·不可否认(Non-repudiation):创建数据被发送或者接收的证据,因此发送者(或者 接收者)后来不能否认这个事实。ISO 7498-2 使用了术语初始源证据(proof of origin)和 递送证据(proof of delivery)。在其他文献中,你也可能发现提交证据(proof of submission) 和接收证据(proof of receipt)。这些术语的意义有时会有交叠。 为提供这些服务使用的机制大多来自密码术,即加密、数字签名、完整性检查功能等。 密码保护有一个好的特性。当 N 层安全协议在其下层不安全协议的上面运行时,N 层的安 全协议不会受到危害。对这种规则有一个例外。当你的目标是匿名,而且你采取预防措施来 隐藏在一层的参与者的身份时,则由较低层的协议添加的一些数据仍然可能泄露关于消息的 来源和目的地的信息。 图 13.5 在计算机网络中的消息传输 13.2 TCP/IP 安全 为了用实例说明网络安全在实际中如何工作,我们现在研究在 Internet 协议套范围内的 安全,如图 13.6 所示。在 Internet 模型中,ISO/OSI 模型协议已经瓦解了,只留下了四层。 ·在应用层的协议有 Telnet,FTP,HTTP,SMTP(Simple Mail Transfer Protocol,简单 邮件传送协议),或者 SET(Secure Electronic Transaction,安全电子事务处理)。 ·在传输层的协议是 TCP(Transmission Control Protocol)和 UDP(User Datagram Protocol)。TCP 和 UDP 根据端口号标识 PDU(协议数据单元)所属的应用协议。公共端口 号有 21(FTP),23(Telnet),25(SMTP)和 80(HTTP)等。 ·在网络层,有 IP 协议(Internet Protocol,网际互连协议)。 ·接口层的协议与具体的网络技术有关。 TCP 和 IP,连同 UDP 和管理协议 ICMP 一起,形成 Internet 的核心。最初,这些协议 是为通过不可靠网络连接的友好和协同工作的用户设计的,因此根本就没有考虑安全问题。 现在,TCP/IP 被广泛地使用,便出现了对安全服务的强烈要求。Internet 工程任务组(IETF) 已经在网际互连层和传输层对安全协议提出了建议。这些协议将是后面两节讨论的主题。我 们必须利用这个事实,这些提议中的许多至今还是草案,还没有深深的进入技术细节。在这 一章结束的参考文献中指出了现行技术文档的出处。 图 13.6 Internet 分层结构
翻译:中国科学技术大学信息安全专业老师 13.2.1 IPSEC 网际互连协议(IP)是无连接无状态的协议,它负责传输IP数据报,即网际互连层的 PDU(协议数据单元)。因为IP协议是无连接无状态的,所以每一个数据报都作为独立的实 体进行处理,与任何其他的数据报没有联系,而且不保证数据报的传递。P的第四版本IPv4 在1981年作为RFC791发布。从那时起, Internet开始持续增长,因此,IP必须适应和满 足新的要求。IP的第六版本IP√6在草案RFC1883中说明,现在已相当成熟,在讨论I的 安全机制时,我们将参考这个版本。 IP数据报的头标包含了很多的域,其中包括源IP地址和校验和,通过校验和接收者可 以检査数据报在传输过程中是否被损坏。然而,这个校验和只是循环冗余检验(CRC),不 能提供对数据报的有意修改的防御。更糟的是,接收者不能真正知道数据报是从哪儿来的。 在IP头标中的源地址并不一定是发送数据报的IP地址。这就像在8.7.1节中提到的,源路 由攻击利用了这个事实。总之,IP协议没有对端到端数据的可靠性、数据报的排序、或者 安全的特定机制。这样的安全机制在RFC1825中进行介绍,即IP协议的安全体系结构 ( IPSEC)。 IPSEC包括两个主要的安全机制: ·IP认证头标(AH),包含在RFC1826中 IP封装安全有效载荷(ESP),包含在RFC1827中 IP安全体系结构并不包括阻止流量分析的机制。 IP认证头标保护IP数据报的完整性和认证,但是不保护机密性。顾名思义,认证数据 被放在数据报内的头标中。图13.7显示了头标的语法和它在IPV6数据报中的位置。(目的 选项也可以出现在认证头标的前面。)在认证头标中的每一行表示一个32位(bit)的字 图137认证头标的位置和格式 下一个头标( Next Header):一个8位域,标识在认证头标后面的有效载荷的类型, ·有效载荷长度( Payload length):一个8位域,以32位字为单位,表示认证头标的长 度减2。例如,对于一个%6位的认证值,认证头标的实际长度是6,但是有效载荷长度是4 值2表示采用了IPV6中的空(nu)认证算法 保留:一个16位域,保留给将来使用。 ·序列号域( Sequence number field):包含一个计数值,这个值必须被发送者计入,而 由接收者作判断处理。 安全参数索引(SPI):一个32位域,它标识对数据报的安全关联。值0表示不存在 任何安全关联。 认证数据:以32位字为单位,长度可变,它包含了认证数据,例如MAC码(消息 认证码)或者数字签名。 为了认证一个数据报,发送者首先必须确定一个安全关联( association),明确说明像完 整性检验算法、密码密钥和认证数据的长度等参数。通常,用户身份、目的地址和SP决定 了使用哪种安全关联。 通常,一种MAC算法用于认证。采用MD5的HMAC和采用SHA-1的HMAC是缺省 选项,所有的 IPSEC实现都必须对其提供支持。然而,其他的完整性检验函数也可以使用 认证数据的计算认为在数据报中的域都能够出现在接收者一方。在传输期间,有的域会发生 改变,像在IP√6头标中的中继限制( hop limit)。而有的域还是不知道的,像在认证头标中 的认证数据。在计算MAC时,这些域用零值来填充。MAC然后被放在认证头标的认证数 据域中。 第4页共12页 创建时间:2003-11
翻译:中国科学技术大学信息安全专业老师 第 4 页 共 12 页 创建时间:2003-11 13.2.1 IPSEC 网际互连协议(IP)是无连接无状态的协议,它负责传输 IP 数据报,即网际互连层的 PDU(协议数据单元)。因为 IP 协议是无连接无状态的,所以每一个数据报都作为独立的实 体进行处理,与任何其他的数据报没有联系,而且不保证数据报的传递。IP 的第四版本 IPv4 在 1981 年作为 RFC 791 发布。从那时起,Internet 开始持续增长,因此,IP 必须适应和满 足新的要求。IP 的第六版本 IPv6 在草案 RFC 1883 中说明,现在已相当成熟,在讨论 IP 的 安全机制时,我们将参考这个版本。 IP 数据报的头标包含了很多的域,其中包括源 IP 地址和校验和,通过校验和接收者可 以检查数据报在传输过程中是否被损坏。然而,这个校验和只是循环冗余检验(CRC),不 能提供对数据报的有意修改的防御。更糟的是,接收者不能真正知道数据报是从哪儿来的。 在 IP 头标中的源地址并不一定是发送数据报的 IP 地址。这就像在 8.7.1 节中提到的,源路 由攻击利用了这个事实。总之,IP 协议没有对端到端数据的可靠性、数据报的排序、或者 安全的特定机制。这样的安全机制在 RFC 1825 中进行介绍,即 IP 协议的安全体系结构 (IPSEC)。IPSEC 包括两个主要的安全机制: ·IP 认证头标(AH),包含在 RFC 1826 中。 ·IP 封装安全有效载荷(ESP),包含在 RFC 1827 中。 IP 安全体系结构并不包括阻止流量分析的机制。 IP 认证头标保护 IP 数据报的完整性和认证,但是不保护机密性。顾名思义,认证数据 被放在数据报内的头标中。图 13.7 显示了头标的语法和它在 IPv6 数据报中的位置。(目的 选项也可以出现在认证头标的前面。)在认证头标中的每一行表示一个 32 位(bit)的字。 图 13.7 认证头标的位置和格式 ·下一个头标(Next Header):一个 8 位域,标识在认证头标后面的有效载荷的类型。 ·有效载荷长度(Payload length):一个 8 位域,以 32 位字为单位,表示认证头标的长 度减 2。例如,对于一个 96 位的认证值,认证头标的实际长度是 6,但是有效载荷长度是 4。 值 2 表示采用了 IPv6 中的空(null)认证算法。 ·保留:一个 16 位域,保留给将来使用。 ·序列号域(Sequence number field):包含一个计数值,这个值必须被发送者计入,而 由接收者作判断处理。 ·安全参数索引(SPI):一个 32 位域,它标识对数据报的安全关联。值 0 表示不存在 任何安全关联。 ·认证数据:以 32 位字为单位,长度可变,它包含了认证数据,例如 MAC 码(消息 认证码)或者数字签名。 为了认证一个数据报,发送者首先必须确定一个安全关联(association),明确说明像完 整性检验算法、密码密钥和认证数据的长度等参数。通常,用户身份、目的地址和 SPI 决定 了使用哪种安全关联。 通常,一种 MAC 算法用于认证。采用 MD5 的 HMAC 和采用 SHA-1 的 HMAC 是缺省 选项,所有的 IPSEC 实现都必须对其提供支持。然而,其他的完整性检验函数也可以使用。 认证数据的计算认为在数据报中的域都能够出现在接收者一方。在传输期间,有的域会发生 改变,像在 IPv6 头标中的中继限制(hop limit)。而有的域还是不知道的,像在认证头标中 的认证数据。在计算 MAC 时,这些域用零值来填充。MAC 然后被放在认证头标的认证数 据域中
翻译:中国科学技术大学信息安全专业老师 数据报的接收者借助SPⅠ和目的地址来确定相关的安全关联和验证认证数据。如果认证 失败,故障必须被记录下来且数据报必须丢弃。 在这个算法中,IP头标中的某些域没有包括在保护机制中。对于进一步的保护,隧道 模式增加了一个外部的( outer)P头,外部P头标包含了一些其他的PP地址,典型的是安 全网关的地址。内部IP头标包含了初始的源地址和目的地址,并且完全被认证头标保护起 来,如图13.8所示 IP封装安全有效载荷保护了数据的机密性。依靠所使用的加密算法,它们也保护了完 整性和认证。ESP头标通常放在加密数据的前面,如图139所示。ESP头标包含了SP。不 透明转换数据是一个保护域,它包含了对于加密算法处理有关的更多的参数 在加密一个数据报以前,发送者又一次确定一个安全关联,以决定使用哪种加密算法和 使用的密钥。(这里提到的安全关联不同于在认证头标中使用的安全关联。)发送者然后在两 种ESP模式中选择一种模式 在传输模式( transport mode)中,一个上层协议帧,例如,来自TCP或者UDP的帧,被 封装在ESP中,而IP头标并不被加密。传输模式提供在两个结点间交换的数据报的端到 端的保护 ·在隧道模式( tunnel mode)中,一个完全的IP数据报被封装在ESP中。这个ESP在另外 个P数据报中传输,该数据报的头标是以明文形式出现的。IP隧道因此可以描述为在 IP中的IP。隧道模式可以用在网关机器(防火墙)之间来创建一个虚拟专用网(VPN), VPN在13.3节中描述 数据报的接收者确定相关的安全关联,对加过密的有效载荷解密。如果解密失败,故障 必须被记录下来,并且必须丢弃数据报 到现在为止,我们已经适当地解释了在 IPSEC中的密钥管理问题。安全关联放在我们 需要提到它的地方。确实, IPSEC规定了独立于密钥管理协议的认证和加密服务,密钥管理 协议用来建立安全关联和会话密钥。这样, IPSEC安全服务没有与任何特殊的密钥管理协议 捆绑在一起。如果发现使用的密钥管理协议有缺陷,那么该协议可以被替换,不会更进一步 地影响到 IPSEC的实现。 图13.8隧道模式认证头标 小结 IPSEC为使用P的每一个人提供了安全,它没有改变IP的接口,如图13.10所示。为 了实现安全,上层协议不需要改变,甚至不需要知道在IP层保护它们的通信。然而,没有 太多的范围来调整应用层要求的保护级别。我们需要关心的是IP作为通信协议的性能,不 能在检查应用特定的数据方面花费太多的时间来选择一种安全关联。 图139ESP头的位置和格式 图13.10IP安全 由于发送者和接收者执行密码操作, IPSEC增加了协议处理开销和通信延迟时间 IPSEC可以为所有的上层协议提供安全,但是它也为此增加了系统开销。 IPSEC没有规定特殊的密钥管理协议。这样允许不同的结点选择它们最喜爱的方案,但 是在不同的结点使用 IPSEC来保护在它们之间的通信之前,它们必须就使用某种密钥管理 方案达成一致。 第5页共12页 创建时间:2003-11
翻译:中国科学技术大学信息安全专业老师 第 5 页 共 12 页 创建时间:2003-11 数据报的接收者借助 SPI 和目的地址来确定相关的安全关联和验证认证数据。如果认证 失败,故障必须被记录下来且数据报必须丢弃。 在这个算法中,IP 头标中的某些域没有包括在保护机制中。对于进一步的保护,隧道 模式增加了一个外部的(outer)IP 头,外部 IP 头标包含了一些其他的 IP 地址,典型的是安 全网关的地址。内部 IP 头标包含了初始的源地址和目的地址,并且完全被认证头标保护起 来,如图 13.8 所示。 IP 封装安全有效载荷保护了数据的机密性。依靠所使用的加密算法,它们也保护了完 整性和认证。ESP 头标通常放在加密数据的前面,如图 13.9 所示。ESP 头标包含了 SPI。不 透明转换数据是一个保护域,它包含了对于加密算法处理有关的更多的参数。 在加密一个数据报以前,发送者又一次确定一个安全关联,以决定使用哪种加密算法和 使用的密钥。(这里提到的安全关联不同于在认证头标中使用的安全关联。)发送者然后在两 种 ESP 模式中选择一种模式。 ·在传输模式(transport mode)中,一个上层协议帧,例如,来自 TCP 或者 UDP 的帧,被 封装在 ESP 中,而 IP 头标并不被加密。传输模式提供在两个结点间交换的数据报的端到 端的保护。 ·在隧道模式(tunnel mode)中,一个完全的 IP 数据报被封装在 ESP 中。这个 ESP 在另外 一个 IP 数据报中传输,该数据报的头标是以明文形式出现的。IP 隧道因此可以描述为在 IP 中的 IP。隧道模式可以用在网关机器(防火墙)之间来创建一个虚拟专用网(VPN), VPN 在 13.3 节中描述。 数据报的接收者确定相关的安全关联,对加过密的有效载荷解密。如果解密失败,故障 必须被记录下来,并且必须丢弃数据报。 到现在为止,我们已经适当地解释了在 IPSEC 中的密钥管理问题。安全关联放在我们 需要提到它的地方。确实,IPSEC 规定了独立于密钥管理协议的认证和加密服务,密钥管理 协议用来建立安全关联和会话密钥。这样,IPSEC 安全服务没有与任何特殊的密钥管理协议 捆绑在一起。如果发现使用的密钥管理协议有缺陷,那么该协议可以被替换,不会更进一步 地影响到 IPSEC 的实现。 图 13.8 隧道模式认证头标 小结 IPSEC 为使用 IP 的每一个人提供了安全,它没有改变 IP 的接口,如图 13.10 所示。为 了实现安全,上层协议不需要改变,甚至不需要知道在 IP 层保护它们的通信。然而,没有 太多的范围来调整应用层要求的保护级别。我们需要关心的是 IP 作为通信协议的性能,不 能在检查应用特定的数据方面花费太多的时间来选择一种安全关联。 图 13.9 ESP 头的位置和格式 图 13.10 IP 安全 由于发送者和接收者执行密码操作,IPSEC 增加了协议处理开销和通信延迟时间。 IPSEC 可以为所有的上层协议提供安全,但是它也为此增加了系统开销。 IPSEC 没有规定特殊的密钥管理协议。这样允许不同的结点选择它们最喜爱的方案,但 是在不同的结点使用 IPSEC 来保护在它们之间的通信之前,它们必须就使用某种密钥管理 方案达成一致