版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第3章网络安全协议目前被广泛使用的TCP/IP协议在最初设计时是基于一种可信网络环境来考虑设计的,没有考虑安全性问题。因此,建立在TCP/IP基础之上的Internet网络的安全架构需要补充安全协议来实现。本章主要内容有:SSL协议;SSH协议;SET协议;IPSec协议;3.1SSL协议3.1.1SSL概述3.1.2SSL体系结构与协议3.1.3SSL安全性分析3.1.4SSL协议的应用3.2TLS协议3.2.1TLS概述3.2.2TLS协议结构3.2.3TLS记录协议3.2.4TLS握手协议3.2.5TLS安全性分析3.3SSH协议3.3.1SSH概述3.3.2SSH协议体系结构
第3章网络安全协议第3章网络安全协议
3.3.3SSH传输协议3.3.4SSH身份认证协议3.3.5SSH连接协议3.3.6SSH协议的应用3.3.7SSH安全性分析3.4SET协议3.4.1SET协议概述3.4.2SET协议基本流程3.4.3SSL和SET协议比较3.4.4SET协议安全性分析3.5IPSec协议第3章网络安全协议
3.5.1IPSec体系结构3.5.2IPSec安全协议—AH验证文件头协议3.5.3IPSec安全协议—ESP封装安全载荷协议3.5.4Internet安全关联密钥管理协议---ISAKMP3.6QoS协议3.6.1QoS的体系结构3.6.2QoS的实现机制3.1SSL协议
3.1.1SSL概述SSL(安全套接层,SecureSocketLayer)是由Netscape公司开发的一种网络安全协议,主要为基于TCP/IP的网络应用程序提供身份验证、数据完整性和数据机密性等安全服务。SSL已得到了业界的广—泛认可,被广泛应用于网络安全产品中,成为事实上的工业标堆。SSL协议的基本目标是在两个通侍实体之间建立安全的通信连接,为基于客户机服务器模式的网络应用提供安全保护。SSL协议提供了3种安全特性:3.1SSL协议
(1)数据机密性:采用对称加密算法(如DES,RC4等)来加密数据,密钥是在双方握手时指定的。(2)数据完整性:采用消息鉴别码(MAC)来验证数据的完整世,MAC是采用Hash函数实现的。(3)身份合法性:采用非对称密码算法和数字证书来验证同层实体之间的身份合法性。SSL协议是一个分层协议,由两层组成;SSL握手协议和SSL记录协议。3.1.2.SSL体系结构与协议
SSL协议由两层结构组成:底层为记录层协议(RecordProtocol),它建立在面向连接的可靠传输协议(如TCP)基础之上,提供机密性、真实性和重传保护,实现对数据的加密,封装各种高层协议;高层由握手协议(HandshakeProtocol)、告警协议(A1ertProtocol)、改变密码规格协议(ChangeCipherSpecProtocol)三个并行的协议构成。高层协议需要记录层协议支持,其中握手协议与其他的高层协议不同,其他高层协议属于应用开发的范畴,需要握手协议的支持,而握手协议则是SSL底层实现必须具有的功能,因为记录层协议的完成也由它来作保证。3.1.2.SSL体系结构与协议
1.记录层协议SSL记录层协议是一个封装协议,它将从上层协议接收的数据(这些数据可以是任意长度的非空数据块),按照握手协议的协商结果进行分段、压缩、加密,然后将密文交给网络传输协议进行处理。2.握手协议SSL握手协议是SSL中最复杂的部分。此协议允许客户端和服务器端相互认证、切商加密和MAC算法,保护数据使用的密钥通过SSL记录传送。握手协议在传递应用数校之前使用。3.1.3SSL安全性分析
1.SSL协议保密性分析SSL协议对数据的保密性主要是防止数据在网络上传输时被人窃听,数据保密包括连接保密、无连接保密、选择字段保密以及信息流保密等方面。SSL协议采用对称加密算法如DES、RC4等对传输数据进行加密。通信双方在SSL握手过程结束后,根据协商后的密钥对所有数据进行加密,将数据以密文形式在网上传送,从而保证数据的保密性。3.1.3SSL安全性分析
2.SSL协议完整性分析SSL协议通过通信双方分别验证对方的握手结束消息来保证握手消息的完整性。SSL协议对记录层中的应用数据通过使用密钥保护的数字摘要来保证其完整性。数字摘要由SSL协议对记录层压缩后的数据计算得出,SSL协议采用MD5.SHA等算法来保证数据完整性。数字摘要和它所保护的数据绑定在一个记录中发送给接收者,接收者将根据接收到的数字摘要来判定数据是否在传输过程中被修改。3.1.3SSL安全性分析
3.SSL协议中的身份验证为了防止通信者的身份被中间人冒充,SSL协议提供了以数字证书为基础的身份认证机制。数字证书包含两个方面的内容,一是数字证书的真实性,二是确保数字证书为发送者所拥有(即发送者拥有该证书的私钥)。证书的真实性可通过CA对证书的签名来认证,SSL协议对客户证书和服务器证书真实性的认证都采取了这种机制。它们都通过向对方发送证书消息来向对方表明白己的身份。证书消息中包含了从用户证书到其上级发证CA证书,最后直到其根证书的一条证书链。证书消息的接收方只需要顺着这条证书链就可以认证用户证书的真实性。SSL协议中采用的非对称加密算法为RSA或Diffie-Hellman。3.1.4SSL协议的应用
1.SSL构建安全web网站SSL协议是内嵌在浏览器中的安全协议,随着Web浏览器技术的发展,SSL协议己被工业界认可。SSL协议具有与高层无关的特点,高层应用协议(FTP,Telnet等)可以在SSL协议之上透明传输。在高层协议传输数据之前,SSL协议可以协商密码算法和会话密钥,在数据传输阶段,SSL协议对数据加密,从而达到了保密性。基于SSL协议构建安全Web应用,具有如下三个基本特点:(1)信道是保密的。经过握手之后,协商好的会话密钥可以对客户端与服务器端之间传递的信息加密。(2)信道是经过验证的。通信的服务器端总是被加以验证,客户端可以选择性地加以验证。(3)信道是可靠的。对信道中的信息加以完整性校验。3.1.4SSL协议的应用
2.SSLVPN应用SSLVPN指的是基于SSI协议建立远程安全访问通道的VPN技术。它是近年来兴起的VPN技术,SSLVPN随着Web的普及和电子商务、远程办公的兴起而迅速发展。SSLVPN是应用层的VPN,基于HTTPS来访问受保护的应用。目前常见的SSLVPN方案可分为直路方式和旁路方式。在直路方式中,当客户端需要访问应用服务器时,要经过以下三个步骤:(1)客户端和SSLVPN网关通过证书互相验证双方。(2)客户端和SSLVPN网关之间建立SSL通道。(3)SSLVPN网关作为客户端的代理和应用服务器之间建立TCP连接,在客户端和应用服务器之间转发数据。3.1.4SSL协议的应用
SSLVPN的最大的优势在于客户端。由于浏览器内嵌了SSL协议,因此安装了Web浏览器的客户机可以随时作为SSLVPN的客户端。通过SSLVPN,客户端可以在任何时间任何地点对应用资源进行访问,也就是说是基于B/S结构的业务时,可以直接使用浏览器完成SSL的VPN建立。而IPSecVPN只允许使用已经定义好的客户端进行访问,所以这种方式更适合应用于企业内部。
3.2TLS协议
3.2.1TLS概述传输层安全协议((TLS:TransportLayerSecurity))的前身是安全套接层协议。安全套接层协议(SSL:SecureSocketsLayer)最初于1995年由网景公司(NetscapeCommunicationsCorporation)设计和开发,其目的主要是为电子商务的应用提供一个安全的环境。TLS记录层协议具有两个特点:(1)连接的机密性。TLS记录层协议结合密钥交换协议(如TLS的握手协议)和对称加密机制,可为通信双方提供一条安全通道,用于数据的安全传输。(2)连接的可靠性。TLS记录的消息传输包括完整性校验功能,从而确保消息传输过程的完整性。所有上层协议(包括TLS握手协议和基于TLS的应用程序)的数据均由TLS记录层协议封装后传输。3.2.2TLS协议结构
TLS协议的基本设计目标是为两个通信实体之间提供数据的机密性和完整性。该协议分为两层:TLS记录协议和TLS握手协议。TLS记录协议建立在其他可靠的传输协议之上(如TCP/IP)。TLS记录协议提供的连接安全性有两个基本特点:①该连接是保密的。②该连接是可靠的。记录协议用于封装高层的协议,例如TLS握手协议。握手协议使客户和服务器之间相互进行认证,并协商加密算法和密钥。
3.2.2TLS协议结构
TLS握手协议提供的连接安全性具有以下三个基本特点:①对等实体可以使用公钥密码算法进行认证。这种认证是可选的,但是通常至少需要对一方进行认证;②共享秘密的协商是安全的。即使攻击者能够发起中间人入侵攻击,协商的秘密也不可能被窃听者获得;③协商是可靠的。攻击者不能在不被发现的情况下篡改协商通信数据。TLS协议的一个优点是它对于高层应用协议的透明性,高层应用数据可以使用TLS协议建立的加密信道透明地传输数据,同时,TLS协议不依赖于低层的传输协议可以建立在任何能够提供可靠连接的协议上,3.2.3TLS记录协议
TLS记录协议的一条记录包含长度字段、描述字段和内容字段。记录协议得到要发送的消息后,将数据分成易于处理的数据分组,进行数据压缩处理,计算数据分组的密码校验值MAC,加密数据,然后发送数据。接收到的消息首先被解密,然后校验MAC,解压缩,重组,最后传递给协议的高层客户。记录协议有四种类型的客户:握手协议、警告协议、改变密码格式协议和应用数据协议。为了便于TLS协议的扩展,记录协议可以支持额外的记录类型。使用时需要为新的记录类型分配内容类型值。如果TLS接收到了不理解的内容类型值,则忽略该类型。
3.2.3TLS记录协议
1.TLS连接状态TLS连接状态反映的是TLS记录协议的操作环境。它规定协议所采用的加密算法、压缩算法和MAC算法,以及与这些算法相关的参数:比如MAC保密数值、块加密密钥、读和写方向上的初始化加密向量IV等。从逻辑上看,主要有四个连接状态:当前的读状态和写状态,意见未决的读状态和写状态。所有的记录是在读状态和写状态下处理的。未决状态的安全参数由TLS握手协议来设置,握手协议可以有选择地将未决状态转变为当前状态,在这种情况下,当前正在使用的“当前状态”被新的未决状态取代,原来的未决状态又被初始化为空状态。当一个状态的安全参数还没有被初始化时,是不允许将它设置为当前状态的。3.2.3TLS记录协议
建立TLS连接时,读和写状态的安全参数通过以下方法设置:(1)连接端:确定端实体是“客户”还是“服务器”。(2)块加密算法:加密数据块的算法。包括算法采用的密钥长度、密钥的保密程度、密文块的长度以及它是否是“出口”密码。(3)MAC算法:用于消息认证。包括Hash摘要的长度。(4)压缩算法:包括数据压缩所需的所有信息。(5)主保密数值:由建立连接的对等实体共享的48字节长的保密数值构成。(6)客户随机数:客户提供的32字节长的随机数。(7)服务器随机数:服务器提供的32字节长的随机数。所有这些参数可以使用枚举、结构等数据类型表示。3.2.3TLS记录协议
2.记录层数据处理记录层对从高层接受的数据进行记录形成、压缩和加密等处理。(1)记录形成TLS记录层将上层协议的信息块划分成不超过214个字节的TLS明文记录。记录层不保护客户消息的边界。多个客户消息可以组合成一个TLS记录发送,一个客户消息也可以被分成多个记录发送。明文记录中包含版本号、协议消息类型(255表示最大类型号)、消息长度和消息体。(2)压缩压缩处理是将TLSPlaintext结构的数据变换成TLSCompressed结构。压缩必须是无损压缩,而且对内容的增加不能超过1024个字节。3.2.3TLS记录协议
(3)加密压缩必须是加密处理将TLSCompressed结构变换成TLSCiphertext密文记录。它的格式包括类型、协议版本号、加密类型选择(流加密或者块加密)和消息体。其中,记录中包括MAC数值,MAC的计算内容包括消息顺序号,以防止消息的重放和遗漏。具体的块加密消息体结构包括加密数据、MAC认证数值、密文补丁、补丁长度和块加密消息体等。(4)密钥计算记录层协议要用某种算法来从握手协议协商的安全参数中产生密钥、Ⅳ和MAC保密数值。所有这些密钥都是从主保密数值中派生的。3.2.4TLS握手协议
TLS握手协议在通信的对等实体之间协商建立记录层所需的安全参数,并相互认证身份,为双方报告出错情况,并使用公钥密码技术生成共享秘密参数。TLS握手协议包括以下几个步骤:交换hello消息以协商密码算法,交换随机值并检查会话是否可重用;交换必要的密码参数,使客户和服务器能够协商premastersecret;交换证书和密码信息,使客户和服务器能够进行相互认证;使用交换的随机值和premastersecret生成主秘密mastersecret;为记录协议提供安全参数。允许客户和服务器校验对方是否计算出了相同的安全参数,以及校验上述握手过程是否被攻击者窃听。3.2.4TLS握手协议
握手协议的过程描述如下:客户向服务器发送Clienthello消息,服务器应答serverhello消息。clienthello和serverhello消息建立下列安全属性:协议版本,会话ID,CipherSuite和压缩方法。同时生成并交换两个随机数:ClientHello.random和ServerHello.random。实际的密钥密钥交换使用四条消息:server_certificate,server_key_exchange,client_certificate和client_key_exchange。在hello消息之后,如果需要认证服务器的话,服务器将发送其证书。另外,如果需要的话,还要发送server_key_exchange消息。对服务器进行认证之后,服务器可以请求客户证书。然后,服务器将发送server_hello_done消息,指示握手协议的hello消息阶段结束,服务器等待客户的响应。如果服务器发送了certificate_request消息,客户必须发送客户证书,然后发送client_key_exchang消息,消息的内容取决于client_hello和server_hello定义的密钥交换算法。如果客户发送了具有签名能力的证书,则需要发送certificate_verify消息显式地校验该证书。3.2.4TLS握手协议
随后,客户发送change_cipher_spec消息,并将未决的CipherSpec复制为当前的CipherSpec。然后,客户在新的算法、对称密钥和MAC秘密之下立即发送finish消息。服务器响应客户的消息,发送其change_cipher_spec消息和finish消息。到此为止,握手结束,客户和服务器可以开始发送应用层数据了,握手流程如图3-5所示。如果客户和服务器决定重用以前的会话则过程如下:客户使用要重用的会话的会话ID发送ClientHello消息,服务器在会话缓存中检查该ID,如果找到匹配的ID,并且服务器同意在这样的条件下建立连接,它将发送包含相同ID的ServerHello消息。此时,客户和服务器都必须在发送finish消息之前发送change_cipher_spec消息。如果服务器没有找到匹配的会话ID,服务器将生成新的会话ID,双方需要进行完整的握手。3.2.4TLS握手协议
2.基本消息描述
hello消息:服务器和客户使用hello消息来交换安全相关的信息,如随机数、CipherSuite等,包括client_hello消息、server_hello消息和hello_request消息。server_certificate消息:该消息表示服务器发送证书,在server_hello消息之后立即被发送。证书的类型必须与所选择的CipherSuite中的密钥交换算法相匹配,一般情况下是X.509v3格式的证书,证书中要包含与密钥交换算法相匹配的密钥。server_key_exchange消息:该消息仅在服务器发送的server_certificate消息中没有包含足够的信息使客户可以交换premaster_secret的时候发送,为客户端协商Premaster_secret传递密码信息。
3.2.4TLS握手协议
certificate_request消息:服务器发送该消息指示客户提供其证书。server_hello_done消息:服务器发送该消息指示hello阶段结束。client_certificate消息:这是客户接收到server_hello_done消息之后能够发送的第一条消息,该消息只有在服务器要求证书的情况下才发送。如果客户没有合适的证书,也可以发送不包含证书的client_certificate消息。client_key_exchange消息:该消息由客户发送,一般使用RSA公钥加密的方式传输premaster_secret,或者使用Diffie-Hellman方法使双方商定该秘密。certificate_verify消息:该消息用来提供显示的客户证书校验。finished消息:该消息在change_cipher_spec消息之后发送,用来校验密钥交换和认证过程是否成功。finished消息是第一个使用刚刚商定的算、密钥和秘密进行保护的消息。该消息的接收者必须校验消息内容的正确性。3.2.5TLS安全性分析
TLS协议的目的是在不安全的网络连接上实现客户和服务器的安全通信。我们在讨论TLS的安全性时假设攻击者不可能从协议的外部获得任何保密信息,并且攻击者具有俘获、修改、删除、重放以及任何能够篡改所发送的信息的能力。我们从以下几个方面来分析TLS的安全性:(1)认证和密钥交换TLS支持三种认证方式:相互认证,认证服务器而不认证客户,完全匿名。只要服务器被认证,就能防止中间人对信道的攻击。但完全匿名认证不能防止这种攻击方式。匿名服务器不能认证客户。被认证的服务器要向客户提供一个合法的证书链,被认证的客户也要向服务器提供一个合法的证书链。任何一方负责检验另一方的证书是否合法和有效。3.2.5TLS安全性分析
TLS协议的目的是在不安全的网络连接上实现客户和服务器的安全通信。我们在讨论TLS的安全性时假设攻击者不可能从协议的外部获得任何保密信息,并且攻击者具有俘获、修改、删除、重放以及任何能够篡改所发送的信息的能力。我们从以下几个方面来分析TLS的安全性:(1)认证和密钥交换(2)低版本攻击(3)对握手协议攻击的检测(4)会话的恢复(5)保护应用数据
3.3SSH协议
SSH(secureshell)是IETF(InternetEngineeringTaskForce)的网络工作组所制定的一族协议,其目的是要在非安全网络上提供安全的远程登录和其他安全网络服务。类似于SSL,SSH也是建立在应用层和传输层基础上的安全协议。和SSL不同,SSH主要解决的是密码在网络上明文传输的问题,因此通常用来替代Telnet、FTP等协议。传统的Telnet、FTP和Rlogin等服务存在众多安全缺陷,例如使用弱密码单一认证机制;传输数据(包括账号和密码)为明文,容易被窃取、篡改和重放;这些服务的安全验证机制容易引发各种欺骗,比如中间人攻击等。为了克服这些安全缺陷,SSH协议被设计出来。3.3.2SSH协议体系结构
1.SSH层次结构SSH协议包括3个主要部分:SSH传输层协议(TransportLayerProtocol),SSH用户认证协议(UserAuthenticationProtocol)和SSH连接协议(ConnectionProtocol)三个组件组成。每层提供不同类型的安全保护,并且可以与其它方式一起使用。SSH应用层协议连接协议用户认证协议传输层协议服务器认证数据机密性数据完整性TCPoverIP3.3.2SSH协议体系结构
2.密钥机制对于SSH以提供安全通讯为目标的协议,其中必不可少的就是一套完备的密钥机制面介绍SSH协议3个主要的密钥:主机密钥、服务器密钥和用户密钥.3.3.3SSH传输协议
SSH传输层协议提供加密主机认证、数据保密性和数据完整性保护。这个协议不提供用户认证。签名已经提到,SSH认证协议在SSH传输协议之上,如果服务进程需要的话,则可以由它来提供用户认证。SSH2.0几乎支持所有的公开密钥格式、编码和算法。定义公开密钥的类型涉及以下几个方面:·.密钥格式密钥的编码方式和认证的表达方式。签名和加密算法有些密钥类型可能不能同时支持签名和加密。签名后或加密后的数据编码SSH2.0已经定义了公开密钥和认证格式。简单来讲,SSH传输层协议需要经过下列3个步骤:
密钥交换。从双方开始发送自己能支持的算法(压缩、加密、验证),根据接收到的对方的算法进一步协商出一致的算法。进行密钥交换(Diffie-HellIllan)。开始服务请求。3.3.3SSH传输协议
最后一步是在SSH传输层协议执行快完成时执行的,就是客户端通过发送SSHSERVICE_REQUEST消息给服务器端。目前已经定义的服务有两种:ssh-userauth和ssh-connection。如果服务器端支持这里提出的服务并且允许客户端使用这个服务,就会返回一个SSH_SERVICE_ACCEPT消息。一旦选定了特定的服务,在SSH_SERVICE_DATA消息中,就开始传输数据。当服务器端或客户端停止传送数据时,就会发送SSH_SERVICE_EOF消息给对方。当双方都同意关闭连接时,则会发送SSH_STREAM_CLOSE消息给对方,于是这个协议过程就结束了。3.3.4SSH身份认证协议
客户利用传输层协议向服务器提出用户身份认证服务请求,若服务器接受这个请求,双方即可开始执行SSH身份认证协议。身份认证协议在传输层协议所建立的安全通道上运行。当一次身份认证失败时,客户端可以再次提出认证请求,但重试的时间间隔和次数并不是无限的。如果在10分钟之内没有成功完成认证,或重试次数已经超过20次,服务器会返回SSH_MSG_DISCONNECT消息并断开连接。在认证成功后的通信过程中,客户端也可以随时提出新的认证请求。3.3.4SSH身份认证协议
和加密算法一样,SSH协议中已经定义了一些用户认证方法,也可以用name@domain的格式来增加新的用户认证方法。通过这种方式,有需要的单位可以使用自己的认证方法。在认证时,客户端发送SSH_MSG_USERAUTH_REQUEST消息,后面跟随下列内容:用户名服务名方法名其他和方法相关的域3.3.5SSH连接协议
SSH连接协议允许在SSH传输层协议和SSH用户认证协议之上,它提供交互的登录会话、执行远程命令、转发TCP/IP连接和转发X11连接。这个协议的服务名字是ssh-connection。由于连接协议的目的是把已经加密的隧道提供给多个应用程序复用,因此它需要一个能区分不同应用程序的方法。SSH连接协议引入了通道(channel)的机制,所有的终端会话、转接连接都是通道。多个通道被复用成一个连接。对于每一端来说,通道用数字来标识。在两端标明同一个通道的数字可能不同。当一个通道打开时,请求打开通道的消息同时会包含发送方的通道号。接收方也给新的通道分配一个自己的通道号。在以后的通信过程中,只要让这两个通道号一一对应就可以了。3.3.5SSH连接协议
如果向对方请求打开一个通道,则需要发送一个SSH_MSG_CHANNEL_OPEN消息,同时还要告诉对方自己的通道号和初始的窗口大小,因此会有如下内容:SSH_MSG_CHANNEL_OPEN。通道类型。发送方通道号。初始窗口大小。最大包大小。和通道类型相关的其他内容。3.3.6SSH协议的应用
SSH最常见的应用就是用它来取代传统的Telnet、FTP等网络应用程序,通过SSH登录到远方机器执行各种命令。在不安全的网路通信环境中,它提供了验证机制与非常安全的通信环境。SSH开发者的原意是设计它来取代原UNIX系统上的rcp、rlogin和rsh等指令程序的;但经过适当包装后,发现它在功能上完全可以取代传统的Telnet、FTP等应用程序。SSH协议发布了两种版本,即版本1(SSH1.5协议)和版本2(SSH2.0协议)。版本1是一个完全免费的软件包,包含几种专利算法(但其中有几种已经过期)且存在一些明显的安全漏洞(如允许在数据流中插入数据);而版本2安全性得到较大的提高,但在商业使用时则要付费。概括来说,SSH协议主要提供如下几种安全服务。3.3.6SSH协议的应用
安全远程登录。用户可以用SSH完成TELNET、RLOGIN能够完成的任何事情。登录后所有的通信数据都受到加密保护。TCP端口转发。利用SSH既可以进行本地端口的流量转发,也可以进行远程端口的流量转发,甚至可以结合PPP协议组建虚拟专用网。安全远程执行命令。使用SSH协议,同样可调用shell程序,由于建立连接之后的所有数据都经过加密,因此在SSH建立连接后,远程执行命令时所有的通信都被加密。安全远程文件传输。SSH允许通过客户端程序SCP进行文件的远程复制。在SSH协议版本2中更提供了SFTP的安全文件传输服务。X窗口连接转发。SSH提供的一个重要功能就是X转发功能,它可以在客户端的显示屏上把服务器端X程序的运行结构以图形形式现实在客户端3.3.7SSH安全性分析
SSH是一种通用,功能强大的基于软件的网络安全解决方案,计算机每次向网络发送数据时,SSH都会自动对其进行加密。数据到达目的地时,SSH自动对加密数据进行解密。整个过程都是透明的。它使用了现代的安全加密算法,足以胜任大型公司的任务繁重的应用程序的要求。3.3.7SSH安全性分析
1.SSH协议的主要安全特性和优点:使用强加密技术来保证数据的私密性。端到端通信用随机密钥进行加密,随机密钥为会话进行安全协商,会话结束后被丢弃。支持的算法有DES,IDEA,3DES等。通信完整性,确保通信不会被修改。SSH-2基于MD5和SHA-1的加密hash算法。认证,即发送者和接收者的身份证明。客户机和服务器双向认证。授权,即对账号进行访问控制。使用转发或隧道技术对其它基于TCP/IP的会话进行加密。3.3.7SSH安全性分析
2.SSH可以防止的攻击网络窃听,SSH通信是加密的,即使截获会话内容,也不能将其解密。名字服务和IP伪装,SSH通过加密验证服务器主机身份可避免这类风险。连接劫持,SSH的完整性检测负责确定会话在传输过程是否被修改,如果被修改过,就关闭连接。中间人攻击,SSH利用两种方法防止这种攻击,第一种是服务器主机认证。除非攻击者已经成功攻击了服务器主机,获得服务器的私有主机密钥。第二种是限制使用容易受到这种攻击的认证方法,密码认证容易受到中间人攻击,而公钥和基于主机的/RhostsRSA则对中间人攻击可以免疫。插入攻击,这种攻击可以客户和服务器之间发送的正文数据流之间插入任意数据。ssh11.2.25后和Openssh的所有版本都专门进行了设计,来检测并防止这种攻击。这种检测程序增大了插入攻击的难度,但是并不能完全防止。SSH2使用强加密完整性检测手段来防止这个问题。可以用3DES算法来防止这种攻击。3.3.7SSH安全性分析
3.SSH不能防止的攻击密码崩溃,密码认证是一种脆弱的认证形式,尽量使用公钥认证方式。如果必须要密码认证,可考虑使用S/Key之类的一次性密码机制。IPANDTCP攻击,由于SSH是在TCP之上进行操作的,因此容易受到针对TCP和IP缺陷而发起的攻击。SYNflood,TCP不同步和TCP劫持等。只能通过更低层的防护措施来保护。流量分析。隐秘通道。粗心大意。安全是一个过程,而不是一个产品,不要认为装上SSH就安全了。3.4SET协议
3.4.1SET协议概述SET(SecureElectronicTransaction)安全电子交易协议是由美国明Visa和MasterCard两大信用卡组织提出的应用于Internet上的以信用卡为基础的电子支付系统协议。它采用公钥密码体制和x.509数字证书标准,应用于BtoC模式中,保障支付信息的安全性。SET协议本身比较复杂,设计比较严格,安全性高,它能保证信息传输的机密性、真实性、完整性和不可否认性。SET协议是PKI框架下的一个典型实现,同时也在不断升级和完善,如SET2.0将支持借记卡电子交易。3.4.2SET协议基本流程
SET协议规定的工作流程分以下3个阶段。(1)购买请求阶段(2)支付确认阶段(3)收款阶段3.4.3SSL和SET协议比较
事实上,SET和SSL除了都采用RSA公钥算法以外,二者在其他技术方面没有任何相似之处,并且RSA在二者中也被用来实现不同的安全目标。SET协议比SSL协议复杂,因为SET不仅加密两个端点间的单个会话,它还非常详细而准确地反映了卡交易各方之间存在的各种关系。SET还定义了加密信息的格式和完成一笔卡支付交易过程中各方传输信息的规则。事实上,SET远远不只是一个技术方面的协议,它还说明了每一方所持有的数字证书的合法含义,希望得到数字证书以及响应信息的各方应有的动作,与一笔交易紧密相关的责任分担。SET实现起来非常复杂,商家和银行都需要改造系统以实现互操作。另外,SET协议需要认证中心的支持。3.4.3SSL和SET协议比较
SET是一个多方的报文协议,它定义了银行、商家、持卡人之间必须的报文规范,与此同时,SSL只是简单地在两方之间建立了一条安全连接。SSL是面向连接的,而SET允许各方之间的报文交换不是实时的。SU报文能够在银行内部闷或者其他网络上传输,而SSL之上的卡支付系统只能与Web浏览器捆绑在一起。3.4.4SET协议安全性分析
SET协议过于复杂庞大,也有许多不足之处。在利用SET协议实施电子商务平台时还是可以进行周全考虑和加以改进的。(1)SET协议中没有支持不可抵赖的描述,尽管采用了数字签名技术,在一定程度上支持了不可抵赖特性。(2)从上述协议流程中可以看出,银行网关具有很大的权力,可以认可该交易的成功与否。(3)SET协议的凭证证书格式只是要求遵守x.509规范,并没有强调要求各种不同的应用环境兼容。(4)SET协议的安全在一定程度上也依赖于外部环境。如HTTP及SMTP两个协议、浏览器与电子邮件的实时性等,SET协议实施时有可能出现许多问题,要求用户能统筹考虑,尽可能提高系统的安全性。3.5IPSec协议
3.5.1IPSec体系结构IPSec是指IETF以RFC形式公布的一组安全IP协议集,是在IP包中为IP业务提供保护的安全协议标准,其基本目的就是把安全机制引入IP协议,通过使用现代密码学方法支持机密性和认证性服务,使用户能有选择地使用,并得到所期望的安全服务。IPSec将几种安全技术结合形成一个比较完整的安全体系结构,它通过在IP协议中增加两个基于密码的安全机制——认证头(AH)和封装安全有效负载(ESP),来支持IP数据项的认证、完整性和机密性。通过IP安全协议和密钥管理协议构建起IP层安全体系结构的框架,能保护所有基于IP的服务或应用。3.5IPSec协议
IPSec由IPSec安全协议(AH/ESP)和密钥管理协议(IKE)组成。其安全结构包括以下4个基本部分:安全协议,安全联盟,安全策略,密钥管理。IPSec的安全协议定义了如何通过在IP数据包中增加扩展头和字段来保证IP包的机密性、完整性和可认证性。IPSec可在主机或网关上实现,使系统能选择所需要的安全机制、决定使用的算法和密钥以及使用的方式,在IP层提供所要求的安全服务。IPSec定义了两种安全机制ESP和AH,并以IP扩展头的方式增加到IP包中,以支持IP数据项的安全性。IPSec具有两种通信模式:传输模式,隧道模式。两种模式的区别是其所保护的内容不相同:一个是IP包,一个是IP载荷。3.5IPSec协议
传输模式(TransportMode)只对上层协议数据和选择的IP头字段提供认证保护,且仅适用于主机实现。在传输模式中,AH和ESP保护的是传输头。在这种模式中,AH和ESP会拦截从传输层到网络层的数据包,并根据具体的配置提供安全保护。隧道模式(TunnelMode)对整个IP数据项提供认证保护,既可用于主体也可用于安全网关,并且当AH在安全网关上实现时,必须采用隧道模式。此外,当数据包最终目的地不是安全终点时,或者在使用了BITS或BITW实施方案的情况下,通常需要在隧道模式下使用IPSec。假如安全性需由一个设备来提供,而该设备并非数据包的始发点;或者数据包需要保密传输到与实际目的地不同的另一个目的地,便需要采用隧道模式。3.5.2IPSec安全协议—AH验证文件头协议
验证文件头协议AH(以下简称AH)是为IP数据项提供强认证的一种安全机制,它能为IP数据项提供无连接完整性、数据起源认证和抗重播攻击。数据完整性是通过消息认证码产生的校验值来保证的,数据起源认证是通过在数据包中包含一个将要被认证的共享秘密或密钥来保证的,抗重放攻击是通过在AH中使用一个序列号来实现的。除了机密性外,AH可提供ESP能够提供的一切东西,只是AH不对保护的IP数据包的任何部分进行加密,因此,AH不需要加密算法,仅需要一个认证算法。而且AH提供的数据完整性与ESP的数据完整性稍有不同:AH对外部IP头各部分进行身份验证。相比之下,AH认证的范围更宽。3.5.2IPSec安全协议—AH验证文件头协议
1.AH格AH可用来保护一个上层协议(传输模式)或一个完整的数据包(隧道模式),在两种情况下AH头都会紧跟在一个IP头后。AH是一个IP协议,受AH保护的IP包是另一个IP包。因此,AH可单独使用,或与ESP联合使用。AH头比ESP头简单得多,因为它没有提供机密性。由于不需要填充和一个填充长度指示器,因此也不存在尾。另外,也不需要一个初始化向量。3.5.2IPSec安全协议—AH验证文件头协议
2.AH应用模式AH可采用传输模式或隧道模式对IP数据报进行保护。在传输模式方面,AH头插在IP头和上层协议头之间。
3.IPSec的应用IPSec是一种包容极广、功能极强的IP安全协议,它实现了IP包级安全,并为上层协议提供覆盖式的安全保护,这都使它具有广泛的应用领域与发展前景。IPSec是下一代IP协议——IPv6的基本组成部分,是IPv6必须支持的功能;IPSec几乎能与任何类型的IP协议设备协同工作,通过其与远程主机、防火墙、安全网关、路由器的结合,可以构造出各种网络安全解决方案;3.5.2IPSec安全协议—AH验证文件头协议
IPSec能与其他协议结合提供更强的安全性;IPSec能使企业把他们的Extranet扩展到贸易伙伴,进行安全的电子商务,能使他们的Intranet连接到远程场所而不用担心安全协议的兼容性;IPSec能使企业在他们已有的IP网络上建造一个安全的基础设施。
目前IPSec最主要的应用是构建安全虚拟专用网(VPN)。VPN实质上是通过保密隧道在非信任公共网络上产生的安全私有连接。VPN能在Internet等公共网络上安全地传递信息,连接远程用户、分支部门和商业合作伙伴,把他们组成一个扩展的自治网络。VPN利用公共网络基础设施为企业各部门提供安全的网络互联服务,它能使运行在VPN上的商业应用有几乎与专用网络相同的安全性、可靠性、可扩充性、服务质量和可管理性。3.5.3IPSec安全协议—ESP封装安全载荷协议封装安全载荷协议ESP(以下简称ESP)是插入在IP数据报内的一个协议,为IP数据报提供数据机密性、数据完整性、抗重播以及数据源验证等安全服务。ESP可以应用于传输模式和隧道模式两种不同模式。ESP可以单独使用,也可以利用隧道模式嵌套使用,或者和AH组合起来使用。ESP使用一个加密器提供数据机密性,使用一个验证器提供数据完整性认证。加密器和验证器所采用的专用算法是由ESP安全联盟的相应组件决定的。因此,ESP是一种通用的、易于扩展的安全机制,它将基本的ESP功能定义和实际提供安全服务的专用密码算法分离开,有利于密码算法的更换和更新。3.5.3IPSec安全协议—ESP封装安全载荷协议ESP的抗重播服务是可选的。通常,发送端在受ESP保护的数据报中插入一个唯一的、单向递增的序列号,接收端通过检验数据报的序列号来验证数据报的唯一性,防止数据报的重播,但并不要求接收端必须实现对数据报序列号的检查。因此,抗重播服务可由接收端选择。1.ESP头格式在IPv4中,ESP头紧跟在IP头后,这个IP头的协议字段是50,以表明IP头之后是一个ESP头。但在IPv6中,ESP头的放置与扩展头是否存在有关。ESP头肯定插在扩展头之后。如果扩展头存在,它的下一个头字段就会立即出现在设为50的ESP头之前。如果扩展头不存在,IPv6中的下一个头字段就会被设成50。3.5.3IPSec安全协议—ESP封装安全载荷协议2.ESP模式和AH的情况一样,ESP在数据包中位置取决于ESP的操作模式。ESP共有2种操作模式:传输模式和隧道模式。(1)ESP传输模式在传输模式下,ESP插在IP头和所有选项之后、传输层协议之前,或者在已经应用的任意IPSec协议之前。(2)ESP隧道模式在隧道模式下,ESP头插在原始IP头之前,并且将生成一个新的IP头插在ESP头之前3.5.3IPSec安全协议—ESP封装安全载荷协议2.ESP模式和AH的情况一样,ESP在数据包中位置取决于ESP的操作模式。ESP共有2种操作模式:传输模式和隧道模式。(1)ESP传输模式在传输模式下,ESP插在IP头和所有选项之后、传输层协议之前,或者在已经应用的任意IPSec协议之前。(2)ESP隧道模式在隧道模式下,ESP头插在原始IP头之前,并且将生成一个新的IP头插在ESP头之前3.5.4Internet安全关联密钥管理协议---ISAKMP
ISAKMP提供了Internet密钥管理的一个框架,并提供了支持协商和安全关联管理的协议,安全关联协议含有执行各种网络安全服务所需要的所有信息。ISAKMP中也有定义交换密钥产生方法和认证数据的部分,它能提供对窃听的保护。下面给出ISAKMP的描述是基于ISAKMP草案文本的。ISAKMP试图在网络栈的各个层面.支持对安全协议中的安全关联进行协商。ISAKMP自身,并不建立会话密钥,不过,它能利用各种会话密钥建立协议,比如Oakley,来提供因特网密钥管理的一套完整解决方案。3.5.4Internet安全关联密钥管理协议---ISAKMP
ISAKMP使得安全关联的管理集中化了,这样可以减少各个安全协议中功能的重复。它还能在同一时间,和若干业务进行协商,从而可以降低连接建立的时间。ISAKMP的主要部分是安全关联和管理、认证、公共密钥密码、和(安全)保护机制。ISAKMP对其中的认证和密钥交换部分有一些基本要求,它们的作用是减轻威胁、防止对业务拒绝服务、重传、通信中第三者的存在、黑客对连接进行攻击等一些情况的出现。
3.5.4Internet安全关联密钥管理协议---ISAKMP
1.ISAKMP认征、密钥交换和保护ISAKMP需要利用数字签名算法、比如数字签名标准DSS和RSA签名算法,与来至于可靠第三方的认证相结合,完成认证工作。该协议不需要或者说没有规定一种特定的签名算法或认证中心。2.概念3.ISAKMP端口分配密钥管理方法在传输层协议之上或IP层之上,可以代替ISAKMP。IANA分配给ISAKMP的用户数据报协议端口号是500。所有ISAKMP协议的执行,必须包括在这个端口上发送和接收信息的能力。4.ISAKMP的报头格式ISAKMP消息由报头和一个或多个负载以传输模式构成,其报头格式包含一下字段。5.ISAKMP负载类型3.5.4Internet安全关联密钥管理协议---ISAKMP
1.ISAKMP认征、密钥交换和保护ISAKMP需要利用数字签名算法、比如数字签名标准DSS和RSA签名算法,与来至于可靠第三方的认证相结合,完成认证工作。该协议不需要或者说没有规定一种特定的签名算法或认证中心。2.概念3.ISAKMP端口分配密钥管理方法在传输层协议之上或IP层之上,可以代替ISAKMP。IANA分配给ISAKMP的用户数据报协议端口号是500。所有ISAKMP协议的执行,必须包括在这个端口上发送和接收信息的能力。4.ISAKMP的报头格式ISAKMP消息由报头和一个或多个负载以传输模式构成,其报头格式包含一下字段。5.ISAKMP负载类型3.6QoS协议
QoS是指一个网络能够利用各种各样的基础技术向选定的网络通信提供更好的服务的能力。这些基础技术包括:帧中继(FrameRelay)、异步传输模式(AsynckonousTransferMode,简写为ATM)、以太网和802.1网络、SONET以及IP-路由网络。特别值得注意的是,通过采用下列技术,QoS功能可提供更好的和更可预测的网络服务:支持专用带宽改善损失特性避免并且管理网络拥塞情况规定网络通信流量设置网络上的通信的优先权3.6.1QoS的体系结构
QoS是指一个网络能够利用各种各样的基础技术向选定的网络通信提供更好的服务的能力。这些基础技术包括:帧中继(FrameRelay)、异步传输模式(AsynckonousTransferMode,简写为ATM)、以太网和802.1网络、SONET以及IP-路由网络。特别值得注意的是,通过采用下列技术,QoS功能可提供更好的和更可预测的网络服务:支持专用带宽改善损失特性避免并且管理网络拥塞情况规定网络通信流量设置网络上的通信的优先权3.6.1QoS的体系结构
所谓QoS就是使网络及其设备(即应用,主机或路由器)为网络数据传输和服务提供某种程度保证的能力。为了实现QoS要求,需要各级网络的各
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 二零二五版智能家居安防系统试用合同3篇
- 二零二五版办公家具租赁与办公空间智能化改造合同2篇
- 二零二五年度国际商务考察合同范本3篇
- 二零二五年度金融机构贷款合同风险评估与管理指南3篇
- 二零二五年度某零售商与第三方支付平台就支付服务合作合同2篇
- 敬老院二零二五年度土地承包及社区服务一体化合同3篇
- 二零二五年船舶通信设备维护船员聘用合同3篇
- 二零二五年智慧交通项目合作开发合同范本3篇
- 二零二五年度搬家搬运服务合同范本2篇
- 二零二五版导游人员旅游活动组织聘用合同3篇
- 深圳2024-2025学年度四年级第一学期期末数学试题
- 中考语文复习说话要得体
- 《工商业储能柜技术规范》
- 华中师范大学教育技术学硕士研究生培养方案
- 医院医学伦理委员会章程
- 初中班主任案例分析4篇
- 公司7s管理组织实施方案
- Q∕GDW 12147-2021 电网智能业务终端接入规范
- 仁爱英语单词默写本(全六册)英译汉
- 公园广场绿地文化设施维修改造工程施工部署及进度计划
- 塑料件缺陷汇总
评论
0/150
提交评论