《信息安全导论》课件2第12章_第1页
《信息安全导论》课件2第12章_第2页
《信息安全导论》课件2第12章_第3页
《信息安全导论》课件2第12章_第4页
《信息安全导论》课件2第12章_第5页
已阅读5页,还剩75页未读 继续免费阅读

下载本文档

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

文档简介

第12章网络安全协议与VPN

12.1网络安全协议概述

12.2网络层安全协议IPSec

12.3传输层安全协议SSL/TLS简介

思考题

实验12在Windows下实现IPSecVPN

内容导读

应用安全技术构建网络安全协议并进而采用安全协议进行通信,是保护网络通信安全的客观要求。ISO/IEC7498-2给出了OSI参考模型七层协议之上的信息安全体系结构。依据该体系结构与TCP/IP协议簇的映射关系,科研人员针对不同的网络层研制了大量特制的安全协议。用户具体要在哪个层次上应用哪个协议,要依赖于具体应用的安全目标和协议所能实现的功能。网络层安全协议簇IPSec使用共享密钥为数据传输提供安全服务。AH协议主要用来实现数据完整性服务,而ESP协议除提供完整性服务外,还提供保密性服务。共享密钥和安全算法的选取是通过执行IKE协议构建安全关联SA实现的。IPSec有传输模式和隧道模式两种实现方式,隧道模式是实现VPN的主要途径之一。

传输层安全协议簇SSL/TLS主要用于保护Web通信。部署SSL/TLS证书是保证网银系统和电子商务网站通信安全的最佳解决方案。12.1网络安全协议概述

通信协议是指通信各方关于通信如何进行所达成的一致性规则,即由参与通信的各方按确定的步骤做出一系列通信动作,是定义通信实体之间交换信息的格式及意义的一组规则。网络安全通信协议是指在计算机网络中使用的具有安全功能的通信协议。

OSI(OpenSystemsInterconnection)标准由ISO(InternationalStandardOrganization)与ITU(InternationalTelecommunicationUnion)联合制定,将开放互连网络用7层描述,并通过相应的7层协议实现系统间的相互连接。ISO/IEC7498-2(GB/T9387.2—1995)给出了OSI参考模型的七层协议之上的信息安全体系结构,这是一个普遍适用的安全体系结构,对具体网络环境的信息安全体系结构具有重要指导意义。该标准定义了五大类安全服务和实现这些服务的八类基本安全机制和普遍性安全机制,给出了各种安全服务在OSI模型的七层协议中相应的参考位置(见表12-1)。表12-1OSI协议层与相关安全服务TCP/IP协议簇是Internet的事实通信标准。由于TCP/IP协议簇在早期设计时是以面向应用为根本目的的,因此未能充分考虑到安全性及协议自身的脆弱性、不完备性,导致网络中存在着许多可能遭受攻击的漏洞。例如,网络层协议IP在实现通信的过程中并不能为数据提供完整性和机密性保护,缺少基于IP地址的身份认证机制,容易遭到IP地址欺骗攻击;在使用传输层协议TCP进行通信时,存在服务器端需维持大量的半连接列表而耗费一定的资源、序列号可计算等安全隐患;在使用传输层协议UDP进行通信时,不确认报文是否到达,不进行流量控制,不作纠错和重传;大部分应用层协议需要以超级管理员的权限运行,一旦这些程序存在安全漏洞且被攻击者利用,极有可能取得整个系统的控制权,许多协议采用简单的身份认证方式,并且在网络中以明文方式传输。

将ISO7498-2建议的OSI参考模型上的信息安全体系结构映射到TCP/IP协议簇上,我们可得到TCP/IP协议层的网络安全体系结构,见表12-2。表12-2ISO7498-2到TCP/IP的映射

根据TCP/IP协议簇的上述安全体系结构,科研人员研制了大量特制的安全协议,专门用来保障网络各个层次的安全,见表12-3。用户具体要在哪个层次上应用安全措施,要依赖于应用(程序)对安全保密的要求和协议本身所能实现的功能。值得指出的是,有些场合可能需要在多个网络层实现安全服务以实现增强安全的效果。表12-3网络层次与相关安全通信协议

所谓构建虚拟专用网(VirtualPrivateNetwork,VPN),就是利用上述某个安全协议,实现在公用网络上构建私人专用网络。“虚拟”主要是指这种网络是一种逻辑上的网络。目前实现VPN的几种主要技术及相关协议都已经非常成熟,并且都有广泛应用,尤其以L2TP、IPSec和SSL协议应用最广。12.2网络层安全协议IPSec

在网络层实现安全服务具有多方面的优点:①多种传送协议和应用程序可共享由网络层提供的密钥管理架构;②由于安全服务在较低层实现,基本不需要改动应用程序;③假如网络层支持以子网为基础的安全,则利用网络层安全服务很容易实现VPN。

网络层的安全性应达到以下几个标准:①期望安全的用户能够使用基于密码学的安全机制;②能同时适用于IPv4和IPv6;③算法独立;④有利于实现不同的安全策略;⑤对没有采用该机制的用户不会有负面影响。

IPSec(IPSecurity)协议簇产生于IPv6的制定之中,目的是提供IP层的安全性。IPSec通过支持一系列的加密算法来确保通信双方数据的机密性和完整性。IPSec协议簇对IPv4和IPv6都可用,只是在IPv6中更易于实现。

IPSec协议簇主要包含AH(AuthenticationHeader,验证报头)和ESP(EncapsulatingSecurityPayload,封装安全有效负载)两个安全协议。其中AH协议提供数据源认证和完整性保证;ESP协议除具有AH协议的功能外,还可以利用加密技术保障数据的机密性,但该协议使用的开销要大。AH和ESP协议在安全服务方面的区别见表12-4。表12-4IPSec中AH和ESP提供的安全服务IPSec有两种实现方式:传输模式和隧道模式。传输模式:传输模式的保护对象是IP载荷,即对运行于IP之上的协议进行保护,采用传输模式时,原IP数据包的报头之后的数据发生改变(进行AH或ESP处理),IP报头不变。只有在要求两个主机端到端的安全保障时,才能使用传输模式。传输模式的示意图如图12-1所示。图12-1IPSec的传输模式

隧道模式:隧道模式的保护对象是整个IP数据包,它将一个数据包用一个新的数据包封装,再加上一个新的IP报文头,通常在数据包的始发点或目的地不是安全终点的情况下需要使用隧道模式。隧道模式被用在两端或是一端是安全网关的架构中,例如装有IPSec的路由器或防火墙。使用隧道模式时,防火墙内主机不需要安装IPSec也能安全地通信。隧道模式示意图如图12-2所示。图12-2IPSec隧道模式

在图12-2中,某网络IP地址为的主机甲生成一个IP包,目的地址是另一个网中IP地址为的主机乙。这个包从起始主机发送到主机甲网络边缘的安全路由器或防火墙。防火墙把所有出去的包进行过滤,看看有哪些包需要进行IPSec的处理。如果从甲到乙的包需要使用IPSec,防火墙就进行IPSec的处理,添加外层IP包头。这个外层包头的源地址是防火墙,而目的地址可能是主机乙网络边缘的防火墙。现在这个包被传送到主机乙的防火墙,中途的路由器只检查外层的IP包头。主机乙的网络防火墙会把外层IP包头除掉,把IP内层发送到主机乙。

鉴别首部AH协议是IPSec协议之一,用于为IP提供数据完整性、数据源身份验证和一些可选的、有限的抗重放服务。该协议不能提供保密性服务。AH的结构如图12-3所示。图12-3AH的结构

图12-3中,“下一个头”表示AH头之后首部的类型。在传输模式下,它将是处于保护中的上层协议的值,比如UDP或TCP协议的值。在隧道模式下,其数值4表示IP-in-IP(IPv4)封装;数值41表示IPv6封装。负载长度采用32位字为单位的长度减去2来表示。

SPI字段和外部IP头的目的地址一起,用于识别对这个包进行身份验证的安全关联。序列号是一个单向递增计数器,主要为了抵抗重放攻击。认证数据的长度由具体的认证算法决定,如HMAC-SHA的长度是96位。

封装安全载荷ESP为IP报文提供保密性和抗重播服务,作为可选的功能,ESP也可提供数据完整性和认证服务。ESP头的结构如图12-4所示。图12-4ESP头的结构

其中,安全参数索引(SPI)是一个任意的32位值,它与目的IP地址和安全协议(ESP)结合,惟一地标识这个数据报的安全关联SA。有效载荷数据(PayloadData)包含ESP要保护的数据。很多情况下需要使用填充字段,采用的加密算法要求明文是某个数量字节的倍数,利用填充字段来确保结果密文是32位的字右对齐。填充字段可以用于隐藏有效载荷的实际长度,支持(部分)信息流机密性。

认证数据包含一个完整性校验值(ICV),ESP分组中该值的计算不包含验证数据本身。认证数据字段是可选的,只有SA选择认证服务才包含验证数据字段。隧道模式下使用ESP协议后IP数据报的结构如图12-5所示。图12-5使用ESP协议后IP数据报的结构

IPSec支持的加密算法包括三重DES、RC5、IDEA,三重IDEA、CAST和Blowfish,所支持的认证算法包括HMAC-MD5-96和HMAC-SHA-1-96。通信双方共享密钥的建立、安全算法和使用模式的选取是通过密钥交换协议IKE实现的,如图12-6所示。IKE协议是一个应用层协议,以UDP方式通信(端口为500)。协商后的结果存放在安全关联数据库SAD中。图12-6密钥交换协议IKE

当一个系统需要对发送的包使用IPSec实施保护时,它查询数据库中的安全关联,根据其相关内容进行特定处理,然后将安全连接的SPI(安全参数索引)插入到IPSec报头中。当对等接收方收到数据包时,就利用SPI和目的IP地址,从网络数据库中查询相对应的安全关联,之后根据安全关联的内容对数据包作相关的安全处理。

在IKE第一版本中,消息交换非常复杂。为了使得IKE更加简洁、实现速度更快,2005年12月正式推出了新的IKE协议标准—IKEv2。12.3传输层安全协议SSL/TLS简介

IPSec可以提供端到端的网络安全传输能力,但是它无法处理位于同一端系统中不同用户之间的安全需求,因此需要在传输层和更高层提供网络安全传输服务,来满足这些要求。

SSL安全协议是Netscape公司设计的主要用于Web的安全传输协议。SSL安全协议的目的,是为客户和服务器之间的数据传送提供安全可靠的保证。为了防止客户-服务器应用中的消息窃听、消息篡改以及消息伪造等攻击,SSL安全协议提供了认证服务、完整性服务和机密性服务。

SSL安全协议工作在传输层之上,应用层之下,因此独立于应用层协议。使用该协议便宜且开发成本小。当SSL安全协议取得大规模成功后,互联网工程任务组(IETF)将SSL安全协议作了标准化,并称其为TLS安全协议。IETF于2003年4月推出了TLS1.1的草案。该草案不仅对RFC2246在文本上做了更合乎规范的修改,而且对TLS1.0中的安全缺陷提出了明确的解决办法。目前,几乎所有操作平台上的Web浏览器(IE、Netscape)以及流行的Web服务器都支持SSL安全协议。IE浏览器SSL和TLS的设置如图12-7所示。图12-7IE浏览器SSL和TLS的设置如果服务器和客户使用SSL/TLS,则上述浏览器的URL应为https://...。应用SSL/TLS增强安全后应用层协议和使用的端口如下:

TLS协议分为TLS握手协议和TLS记录协议两层。TLS握手协议提供的安全连接主要有以下3个特点。

(1)使用对称密钥加密算法或公开密钥加密算法来鉴别对等实体的身份,鉴别的方式是可选的,但是必须至少有一方要鉴别另一方的身份。

(2)协商共享安全信息的方法是安全的,协商的秘密不能够被窃听,而且即使攻击者能够接触连接的路径,也不能获得任何有关连接鉴别的秘密。

(3)协商是可靠的,没有攻击者能够在不被双方察觉的情况下修改通信信息。

TLS握手协议包括以下步骤:

(1)交换Hello消息以协商密码算法,交换随机值并检查会话是否可重用。

(2)交换必要的密码学参数,使客户和服务器能够协商premastersecret。

(3)交换证书和密码学信息,使客户和服务器能够进行相互认证。

(4)使用交换的随机值和premastersecret生成主秘密mastersecret。

(5)为记录协议提供安全参数。

TLS握手流程如图12-8所示。图12-8TLS握手过程消息流程图

TLS记录协议是一个可相对独立工作的协议,记录协议完成的工作包括数据的分段、可选择的数据压缩、提供消息校验码MAC、对消息进行加密和信息传输等。对接收到的数据进行解密、校验、解压缩、重组等,然后将它们传送到高层客户机。TLS记录协议的工作流程如图12-9所示。图12-9TLS记录协议的工作流程

TLS已经获得广泛应用,然而,就是这样一个经过千锤百炼的安全协议,在2009年11月,国外学者M.Ray提出了一种新的重协商攻击,这种攻击是:攻击者能够干扰客户端和服务器之间的TLS/SSL会话,并插入其任意选区的数据。客户端认为已经和服务器建立了一个TLS/SSL连接,而服务器则认为攻击者和客户端是同一个实体,从而把攻击者传送的数据当做是客户端发送的而接受。这一攻击可能导致多种潜在的安全威胁。针对这一攻击,冯登国提出了新的TLS/SSL安全协议的安全重协商扩展方案。IETF也于2010年2月发布了新的协议扩展版RFC5746(TransportLayerSecurity(TLS)RenegotiationIndicationExtension,TLS重新协商标识扩展)。

部署SSL/TLS证书是保证网银系统和电子商务网站机密信息传输安全最有效、最安全的解决方案,也是最简单的解决方案。但是,用户往往最容易忽略SSL证书是否得到正确配置(例如,传统SSL通信重新协商机制没有得到修补或关闭),而不安全的配置将导致安全漏洞,给系统带来巨大安全隐患。思考题

(1)在应用层实现安全服务与在网络层实现安全服务有何不同?

(2) IPSec是由哪两大部分构成的,有哪两种工作模式,什么是SA?

(3)列出由SSL或TLS协议所提供的服务。

(4)区分下列概念:主密钥、会话密钥、加密密钥、验证密钥。

(5)在信息安全中我们要经常使用随机数,如果产生随机数?

(6) IPSec协议和TLS协议在安全服务方面有何不同?实验12在Windows下实现IPSecVPN一、实验目的

(1)熟悉IPSec,SSL/TLS等常用安全通信协议。

(2)利用WindowsServer2008和Windows7/Vista实现基于IPSec的安全通信。

(3)了解在WindowsServer2008下部署基于SSTP的VPN的过程。二、实验准备

(1)虚拟专用网。构建虚拟专用网VPN的目的是保证通过公用网络平台传输数据的专用性和安全性。

隧道(Tunneling)技术是VPN的基本技术,网络隧道技术指的是利用一种网络协议传输另一种网络协议,也就是将原始网络信息进行再次封装,并在两个端点之间通过公共互联网络进行路由,从而保证网络信息传输的安全性。具体包括第二层隧道协议和第三层隧道协议。

第二层隧道协议是在数据链路层进行的,先把各种网络协议封装到PPP包中,再把整个数据包装入隧道协议中,这种经过两层封装的数据包由第二层协议进行传输。第二层隧道协议有PPTP、L2F和L2TP。

第三层隧道协议是在网络层进行的,把各种网络协议直接装入隧道协议中,形成的数据包依靠第三层协议进行传输。第三层隧道协议有IPSec和GRE。利用SSL/TLS协议构建VPN需要安装数字证书。

(2) WindowsServer2008将Windows防火墙功能和Internet网络层安全协议IPSec集成到一个控制台中。使用这些高级选项可以按照环境所需的方式配置密钥交换、数据保护(完整性和加密)以及身份验证设置。

(3) Microsoft在WindowsServer2008/VistaSP1中除了支持PPTP及L2TPOVERIPSec外,还引入了使用SSLVPN协议的SSTP,它被集成到RRAS中并使用STLS。SSTP可处理IPv4和IPv6数据包。它支持网络访问保护(NAP),但仅用于远程客户端访问,不支持站点到站点VPN。部署使用NAT路由器的基于SSTP的VPN服务器大致需要可参考如下网站:/a2010/0409/871/000000871726_all.shtml。三、实验内容这里使用Windows防火墙的高级安全功能(WFAS)来实现客户机与服务器的安全加密通信。假设服务器和客户机都加入了域,服务器IP地址为8,Windows7客户机IP地址为7。我们通过在组策略中定义安全连接规则并应用到所有实验用机,从而实现隔离策略。只有经过加密的数据才能被服务器接受,任何没经过加密和认证的流量都会在客户端浏览器中显示“InternetExplorercannotdisplaythispage”。1.在主域控制器上(1)打开[ActiveDirectoryUsersandComputers]。创建一个组织OU,把客户机和服务器均加入OU。(2)在[Start]→[Run]下运行gpmc.msc,展开域找到OU。点右键选中[CreateaGPOinthisdomain,andlinkithere],如图12-10所示。图12-10gpmc.msc运行界面

(3)编辑创建GPO,单击[ComputerConfiguration]→[WindowsSettings]→[SecuritySecttings]→[WindowsFirewallWithAdvancedSecurity]→[WFAS-LDAP…]→[ConnectionSecurityRules],右击并选择[NewRule],如图12-11所示。图12-11编辑创建GPO(4)选择[Isolation]作为规则类型。(5)选择[requireauthenticationforinboundandoutbo

温馨提示

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

评论

0/150

提交评论