1、Chapter 19 IP安全性安全性2022-1-22华中农业大学信息学院2网络体系架构网络体系架构 ISO/OSI参考模型 TCP/IP参考模型2022-1-22华中农业大学信息学院3安全服务与层的关系安全服务与层的关系 物理物理 数据链路数据链路 网络网络 传输传输 会话会话 表示表示 应用应用2022-1-22华中农业大学信息学院4OSI到到TCP/IP的映射的映射2022-1-22华中农业大学信息学院5TCP/IP协议栈协议栈2022-1-22华中农业大学信息学院6Internet安全性途径安全性途径n网络接口层网络接口层( (链路层链路层) ) 链路加密链路加密n网络层网络层 IP
2、Secn传输层传输层 SSL / TLS WTLSn应用层应用层 S/MIME, PGP, PEM, SET, Kerberos, SHTTP, SSH 2022-1-22华中农业大学信息学院7网络层安全网络层安全2022-1-22华中农业大学信息学院8传输层安全传输层安全2022-1-22华中农业大学信息学院9应用层安全应用层安全2022-1-22华中农业大学信息学院10IP协议协议nIP是是TCP/IP协议族中至关重要的组成部分协议族中至关重要的组成部分, 但它但它提供的是一种不可靠、无连接的的数据报传输提供的是一种不可靠、无连接的的数据报传输服务。服务。n不可靠(不可靠(unreliab
3、le):不能保证一个:不能保证一个IP数据报数据报成功地到达其目的地。错误处理办法:扔掉该成功地到达其目的地。错误处理办法:扔掉该数据报,向其发送着传送一个数据报,向其发送着传送一个ICMP消息。消息。n无连接(无连接(connectionless):IP并不维护关于连并不维护关于连续发送的数据报的任何状态信息。每个数据报续发送的数据报的任何状态信息。每个数据报单独处理,在传送过程中可能出现错序。单独处理,在传送过程中可能出现错序。2022-1-22华中农业大学信息学院11用户数据经过协议栈的封装过程用户数据经过协议栈的封装过程2022-1-22华中农业大学信息学院12IPv4头头2022-1
4、-22华中农业大学信息学院13IP首部说明首部说明(1)n版本号版本号 目前取值目前取值4 (IPV4)n首部长度首部长度 4个字节个字节( (字字) )为单位,取值范围为单位,取值范围515n服务类型服务类型 指定传输的优先级、传输速度、可靠性和吞指定传输的优先级、传输速度、可靠性和吞 吐量等吐量等n报文总长度报文总长度 最大长度为最大长度为65535字节字节n报文标识报文标识 唯一标识一个数据报,如果数据报分段,则唯一标识一个数据报,如果数据报分段,则每个分段的标识都一样每个分段的标识都一样n标志标志 最高位未使用,定义为最高位未使用,定义为0,其余两位为,其余两位为DF(不分段)和(不分
5、段)和MF(更多分段)(更多分段)n段偏移量段偏移量 以以8个字节为单位,指出该分段的第一个数个字节为单位,指出该分段的第一个数据字在原始数据报中的偏移位置据字在原始数据报中的偏移位置2022-1-22华中农业大学信息学院14IP首部说明首部说明(2)n生存时间生存时间 取值取值0255秒秒, ,每经过一个路由节点减每经过一个路由节点减1,为,为0时被时被丢弃丢弃n协议协议 数据报的协议类型,数据报的协议类型,1: :ICMP,4: :IP,6: :TCP,17: :UDPn首部校验和首部校验和 每通过一次网关都要重新计算该值,用于保证每通过一次网关都要重新计算该值,用于保证IP首首部的完整性
6、部的完整性n源源/ /目的目的IPIP地址地址 标明该数据报的源地址和目标地址标明该数据报的源地址和目标地址n选项选项 长度可变,提供某些控制功能,长度可变,提供某些控制功能,IP首部的长度必须首部的长度必须是是4个字节的整数倍,否则必须填充个字节的整数倍,否则必须填充2022-1-22华中农业大学信息学院15IPv6分组分组2022-1-22华中农业大学信息学院16IPv6基本头基本头2022-1-22华中农业大学信息学院17IPv4的缺陷的缺陷n缺乏对通信双方身份真实性的鉴别能力缺乏对通信双方身份真实性的鉴别能力n缺乏对传输数据的完整性和机密性保护的缺乏对传输数据的完整性和机密性保护的机制
7、机制n由于由于IP地址可软件配置以及基于源地址可软件配置以及基于源IP地址地址的鉴别机制,的鉴别机制,IP层存在:层存在:q业务流被监听和捕获、业务流被监听和捕获、IP地址欺骗、信息泄露地址欺骗、信息泄露和数据项篡改等攻击和数据项篡改等攻击2022-1-22华中农业大学信息学院18IPSecn网络层安全性网络层安全性q需求:身份鉴别、数据完整性和保密性需求:身份鉴别、数据完整性和保密性q好处:对于应用层透明好处:对于应用层透明q弥补弥补IPv4在协议设计时缺乏安全性考虑的不足在协议设计时缺乏安全性考虑的不足2022-1-22华中农业大学信息学院19IPSec的历史的历史n1994年年IETF专
8、门成立专门成立IP安全协议工作组,来制定和推动安全协议工作组,来制定和推动一套称为一套称为IPsec的的IP安全协议标准。安全协议标准。n1995年年8月公布了一系列关于月公布了一系列关于IPSec的建议标准的建议标准n1996年,年,IETF公布下一代公布下一代IP的标准的标准IPv6 ,把鉴别和加密,把鉴别和加密作为必要的特征,作为必要的特征,IPSec成为其必要的组成部分成为其必要的组成部分n1999年底,年底,IETF安全工作组完成了安全工作组完成了IPSec的扩展,在的扩展,在IPSec协议中加上协议中加上ISAKMP(Internet Security Association an
9、d Key Management Protocol)协议,密钥分配协议协议,密钥分配协议IKE、Oakley。ISAKMP/IKE/Oakley支持自动建立加密、鉴别支持自动建立加密、鉴别信道,以及密钥的自动安全分发和更新。信道,以及密钥的自动安全分发和更新。n幸运的是,幸运的是,IPv4也可以实现这些安全特性。也可以实现这些安全特性。2022-1-22华中农业大学信息学院20IPSec的应用的应用nIPSec为在为在LAN、WAN和和Internet上的通讯上的通讯提供安全性提供安全性q分支办公机构通过分支办公机构通过Internet互连。互连。(Secure VPN)q通过通过Intern
10、et的远程访问。的远程访问。q与合作伙伴建立与合作伙伴建立extranet与与intranet的互连。的互连。q增强电子商务安全性增强电子商务安全性nIPSec的主要特征是可以支持的主要特征是可以支持IP层所有流量层所有流量的加密和的加密和/或鉴别。因此可以增强所有分布或鉴别。因此可以增强所有分布式应用的安全性。式应用的安全性。2022-1-22华中农业大学信息学院21一个一个IP安全方案安全方案2022-1-22华中农业大学信息学院22IPSec的应用方式的应用方式n端到端(端到端(end-end): 主机到主机的安全通信主机到主机的安全通信n端到路由(端到路由(end-router): 主
11、机到路由设备之主机到路由设备之间的安全通信间的安全通信n路由到路由(路由到路由(router-router): 路由设备之间路由设备之间的安全通信,常用于在两个网络之间建立的安全通信,常用于在两个网络之间建立虚拟私有网(虚拟私有网(VPN)。)。2022-1-22华中农业大学信息学院23IPSec的好处的好处n对应用和最终用户透明对应用和最终用户透明n在防火墙或路由器中实现时在防火墙或路由器中实现时:q可以防止可以防止IP旁路。旁路。q可以对所有跨越周界的流量实施强安全性。而公可以对所有跨越周界的流量实施强安全性。而公司内部或工作组不必招致与安全相关处理的负担。司内部或工作组不必招致与安全相关
12、处理的负担。n需要时需要时IPSec可以提供个人安全性。可以提供个人安全性。n弥补弥补IPv4在协议设计时缺乏安全性考虑的不在协议设计时缺乏安全性考虑的不足足2022-1-22华中农业大学信息学院24IPSec提议标准(提议标准(1998.11)nRFC 2401 ( 1825): Security Architecture for the Internet Protocol nRFC 2402 ( 1826): IP Authentication HeadernRFC 2406 ( 1827): IP Encapsulating Security Payload (ESP)nRFC 2407
13、 :The Internet IP Security Domain of Interpretation for ISAKMPnRFC 2408: Internet Security Association and Key Management Protocol(ISAKMP)nRFC2409: The Internet Key Exchange (IKE)nRFC2411: IP Security Document Roadmap2022-1-22华中农业大学信息学院25与与IPSec相关的标准相关的标准2022-1-22华中农业大学信息学院26IPSec的内容的内容n协议部分分为协议部分分为
14、:qAH: Authentication HeaderqESP: Encapsulating Security Payloadn密钥管理密钥管理(Key Management)qSA(Security Association)qISAKMP定义了密钥管理框架定义了密钥管理框架qIKE是目前正式确定用于是目前正式确定用于IPSec的密钥交换协议的密钥交换协议2022-1-22华中农业大学信息学院27IPSec安全体系结构安全体系结构2022-1-22华中农业大学信息学院28IPSec 对对 IP 的改造的改造nIPSec在在IPv6中是强制的,在中是强制的,在IPv4中是可选中是可选的的,这两种
15、情况下都是采用在主这两种情况下都是采用在主IP报头后面接报头后面接续扩展报头的方法实现的。续扩展报头的方法实现的。nAH(Authentication Header)是鉴别的扩展报是鉴别的扩展报头头nESP header (Encapsulating Security Payload)是实现加密和鉴别是实现加密和鉴别(可选可选)的扩展报头的扩展报头2022-1-22华中农业大学信息学院29IPSec 安全体系结构组成安全体系结构组成(1)n体系结构:包括总体概念、安全需求、定义、以及定体系结构:包括总体概念、安全需求、定义、以及定义义IPSec技术的机制;技术的机制;nESP:使用:使用ESP
16、进行分组加密和可选的鉴别的分组格进行分组加密和可选的鉴别的分组格式和一般性问题式和一般性问题nAH:使用:使用AH进行分组鉴别的格式和一般性问题;进行分组鉴别的格式和一般性问题;n加密算法:描述将各种不同加密算法用于加密算法:描述将各种不同加密算法用于ESP的文档的文档n认证算法:描述将各种不同鉴别算法用于认证算法:描述将各种不同鉴别算法用于AH以及以及ESP鉴别选项的文档;鉴别选项的文档;n密钥管理:描述密钥管理模式;密钥管理:描述密钥管理模式;nDOI:包括一些参数,批准的加密和鉴别算法标识,:包括一些参数,批准的加密和鉴别算法标识,以及运行参数等。以及运行参数等。2022-1-22华中农
17、业大学信息学院30IPSec 安全体系结构组成安全体系结构组成(2)n策略:策略:q决定两个实体之间能否通信,以及如何进行决定两个实体之间能否通信,以及如何进行通信。通信。q策略的核心由三部分组成:策略的核心由三部分组成:SA、SAD、SPD。nSA(安全关联)表示了策略实施的具体细节,包(安全关联)表示了策略实施的具体细节,包括源目的地址、应用协议、括源目的地址、应用协议、Spi(安全策略索(安全策略索引)、所用算法密钥长度;引)、所用算法密钥长度;nSAD为进入和外出包处理维持一个活动的为进入和外出包处理维持一个活动的SA列表;列表;nSPD决定了整个决定了整个VPN的安全需求。策略部分是
18、唯一的安全需求。策略部分是唯一尚未成为标准的组件。尚未成为标准的组件。2022-1-22华中农业大学信息学院31IPSec提供的服务提供的服务nIPSec在在IP层提供安全服务,使得系统可以选层提供安全服务,使得系统可以选择所需要的安全协议,确定该服务所用的算法,择所需要的安全协议,确定该服务所用的算法,并提供安全服务所需任何加密密钥。并提供安全服务所需任何加密密钥。2022-1-22华中农业大学信息学院32安全关联安全关联SAnSA (Security Association)是是IP鉴别和保密机制中最关键鉴别和保密机制中最关键的概念。的概念。n一个安全关联就是发送与接收者之间的一个单向关系
19、,一个安全关联就是发送与接收者之间的一个单向关系,是与给定的一个网络连接或一组网络连接相关联的安是与给定的一个网络连接或一组网络连接相关联的安全信息参数集合。全信息参数集合。n如果需要一个对等关系,即双向安全交换,则需要两如果需要一个对等关系,即双向安全交换,则需要两个个SA。n每个每个SA通过三个参数来标识通过三个参数来标识q安全参数索引安全参数索引SPI(Security Parameters Index)q对方对方IP地址地址q安全协议标识安全协议标识:AH or ESPnSA与与IPSec系统中实现的两个数据库有关系统中实现的两个数据库有关q安全策略数据库安全策略数据库(SPD)q安全
20、关联数据库安全关联数据库(SAD)2022-1-22华中农业大学信息学院33安全联合数据库安全联合数据库SADn安全联合数据库安全联合数据库SAD定义了定义了SA参数。参数。q序号计数器:序号计数器:32位值,用于生成位值,用于生成AH或或ESP头中的序号字头中的序号字段;段;q计数器溢出位:标志位表明该序数计数器是否溢出,如果计数器溢出位:标志位表明该序数计数器是否溢出,如果是,将生成一个审计事件,并禁止本是,将生成一个审计事件,并禁止本SA的的分组继续传的的分组继续传送。送。q反重放窗口:确定一个入站的反重放窗口:确定一个入站的AH或或ESP包是否是重放包是否是重放qAH信息:鉴别算法、密
21、钥、密钥生存期以及相关参数信息:鉴别算法、密钥、密钥生存期以及相关参数qESP信息:加密和鉴别算法、密钥、初始值、密钥生存期、信息:加密和鉴别算法、密钥、初始值、密钥生存期、以及相关参数以及相关参数qSA的生存期:时间间隔或字节计数,到时间后,一个的生存期:时间间隔或字节计数,到时间后,一个SA必须用一个新的必须用一个新的SA替换或终止,并指示哪个操作发生的替换或终止,并指示哪个操作发生的指示。指示。qIPSec协议模式:隧道、传输、通配符。协议模式:隧道、传输、通配符。q路径路径MTU:不经分片可传送的分组最大长度和迟滞变量:不经分片可传送的分组最大长度和迟滞变量2022-1-22华中农业大
22、学信息学院34安全策略数据库安全策略数据库SPDnIPSec策略由安全策略数据库策略由安全策略数据库(Security Policy Database, SPD)加以维护加以维护. 在每个条目中定义了要在每个条目中定义了要保护什么样的通信、怎样保护它以及和谁共享这保护什么样的通信、怎样保护它以及和谁共享这种保护。种保护。nSPD:对于通过的流量的策略:对于通过的流量的策略q三种选择:三种选择:discard, bypass IPSec, apply IPSecq例子:可在一个安全网关上制定例子:可在一个安全网关上制定IPSec策略,对在本地保策略,对在本地保护的子网与远程网关的子网间通信的所有
23、数据,全部采护的子网与远程网关的子网间通信的所有数据,全部采用用DES加密,并用加密,并用HMAC-MD5进行鉴别;对于需要加密进行鉴别;对于需要加密的、发给另一个服务器的所有的、发给另一个服务器的所有Web通信均用通信均用3DES加密,加密,同时用同时用HMAC-SHA鉴别。鉴别。2022-1-22华中农业大学信息学院35SA选择选择n每一个每一个SPD条目由一个条目由一个IP集合和上层协议(称为集合和上层协议(称为SA选择选择子(子(selector) )定义,这些选择子用于过滤输出流量,)定义,这些选择子用于过滤输出流量,并将它们映射到某个特定并将它们映射到某个特定SA。n以下的选择子确
24、定以下的选择子确定SPD条目:条目:q目的目的IP地址:可以是单地址或多地址地址:可以是单地址或多地址q源地址:单地址或多地址源地址:单地址或多地址qUserID: 操作系统中的用户标识。操作系统中的用户标识。q数据敏感级别:数据敏感级别:q传输层协议:传输层协议:qIPSec协议(协议(AH, ESP, AH/ESP)q源源/目的端口目的端口qIPV6 报类报类qIPV6报流标签报流标签qIPV4服务类型服务类型(TOS)2022-1-22华中农业大学信息学院36工作模式(工作模式(TransportTunnel)nAH和和ESP协议均支持两种工作模式协议均支持两种工作模式q传输模式传输模式
25、 Transport Modeq隧道模式隧道模式 Tunnel Moden传输模式主要为上层协议提供保护。用于在两台主机传输模式主要为上层协议提供保护。用于在两台主机之间进行的端到端通信。之间进行的端到端通信。qESP加密和认证(可选)加密和认证(可选)IP载荷,但不包含载荷,但不包含IP头头qAH认证认证IP载荷和载荷和IP报头的选中部分报头的选中部分n隧道模式对整个隧道模式对整个IP数据包提供保护。数据包提供保护。q当当IP包加包加AH或或ESP域后,整个数据包加安全域被当作一域后,整个数据包加安全域被当作一个新的个新的IP包的载荷,并拥有一个新的外部包的载荷,并拥有一个新的外部IP报头。
26、原来报头。原来或内部的整个包利用隧道在网间传输。或内部的整个包利用隧道在网间传输。q当当SA的一端或两端为安全网关时使用隧道模式。的一端或两端为安全网关时使用隧道模式。qESP加密和认证(可选)整个内部加密和认证(可选)整个内部IP包包qAH认证整个内部认证整个内部IP包和外部包和外部IP报头中的选中部分报头中的选中部分2022-1-22华中农业大学信息学院37模式和功能比较模式和功能比较2022-1-22华中农业大学信息学院38AH(Authentication Header)n为IP包提供数据完整性和认证功能,防止地址欺骗和重放攻击n利用MAC码实现鉴别,双方必须共享一个密钥n鉴别算法由S
27、A指定q鉴别的范围:整个包n两种鉴别模式:q传输模式:不改变IP地址,插入一个AHq隧道模式:生成一个新的IP头,把AH和原来的整个IP包放到新IP包的载荷数据中2022-1-22华中农业大学信息学院39IPSec Authentication HeadernNext Header: 下一个报头的类型nPayload Length:AH的长度(32位字为单位)nSPI:用来标识SAnSequence Number:用来避免重放攻击nAuthentication Data:可变长度的域,包含针对这个包的ICV或者MAC2022-1-22华中农业大学信息学院40AH处理过程处理过程(1)nAH定位
28、定位q在在IP头之后,在上层协议数据之前头之后,在上层协议数据之前n鉴别算法鉴别算法q计算计算ICV( Integrity Check Value)或者)或者MACn对于发出去的包对于发出去的包(Outbound Packet )的处理,的处理,构造构造AHq查找查找SAq产生序列号产生序列号q计算计算ICV:内容包括:内容包括:IP头中部分域、头中部分域、AH自身、上层协议数据自身、上层协议数据q分片分片2022-1-22华中农业大学信息学院41AH处理过程处理过程(2)n对于接收到的包对于接收到的包(Inbound Packet )的处理的处理q分片装配分片装配q查找查找SA 依据:目标依
29、据:目标IP地址、地址、AH协议、协议、SPIq检查序列号检查序列号(可选,针对重放攻击可选,针对重放攻击) 使用一个滑动窗口来检查序列号的重放使用一个滑动窗口来检查序列号的重放qICV检查检查2022-1-22华中农业大学信息学院42窗口与重放攻击检测窗口与重放攻击检测2022-1-22华中农业大学信息学院43ICV/MAC计算计算nICV计算应支持计算应支持: HMAC-MD5-96、HMACSHA-1-96, 仅用仅用96位。位。nMAC计算根据计算根据qIP报头中不变的部分和可以预测的部分,对可变部报头中不变的部分和可以预测的部分,对可变部分或不可预测的部分填充分或不可预测的部分填充0
30、,便于计算,便于计算qAH头中不包含认证数据域,填充头中不包含认证数据域,填充0q整个上层协议数据整个上层协议数据n源和目的地址都是受保护的,可防地址欺骗源和目的地址都是受保护的,可防地址欺骗2022-1-22华中农业大学信息学院44端到端的认证与端到中间节点的认证端到端的认证与端到中间节点的认证2022-1-22华中农业大学信息学院45AH两种模式示意图两种模式示意图IPv4 应用应用AH之前之前 传输模式传输模式 隧道模式隧道模式2022-1-22华中农业大学信息学院46AH两种模式示意图两种模式示意图IPv62022-1-22华中农业大学信息学院47ESP(Encapsulating S
31、ecurity Payload)n提供保密功能,包括报文内容的机密性和有提供保密功能,包括报文内容的机密性和有限的通信量的机密性,也可以提供认证服务限的通信量的机密性,也可以提供认证服务(可选)(可选)n将需要保密的用户数据进行加密后再封装到将需要保密的用户数据进行加密后再封装到一个新的一个新的IP包中,包中,ESP只认证只认证ESP头之后的头之后的信息信息n加密算法和认证算法由加密算法和认证算法由SA指定指定n两种模式:传输模式和隧道模式两种模式:传输模式和隧道模式2022-1-22华中农业大学信息学院48IPSec ESP格式格式2022-1-22华中农业大学信息学院49加密和认证算法加密
32、和认证算法n加密算法加密算法q3DES、RC5、IDEA、3IDEA、CAST、Blowfishn认证算法认证算法qICV计算应支持计算应支持: HMAC-MD5-96、HMAC-SHA-1-96, 仅用仅用96位。位。2022-1-22华中农业大学信息学院50传输方式的加密传输方式的加密2022-1-22华中农业大学信息学院51隧道方式的加密隧道方式的加密2022-1-22华中农业大学信息学院52ESP的传输模式的传输模式2022-1-22华中农业大学信息学院53ESP隧道模式隧道模式2022-1-22华中农业大学信息学院54ESP处理过程处理过程(1)nESP头定位头定位n加密算法和认证算
33、法由加密算法和认证算法由SA确定确定n对于发出去的包对于发出去的包(Outbound Packet )的处理的处理q查找查找SAq加密加密n封装必要的数据,放到封装必要的数据,放到payload data域中,不同的模式,域中,不同的模式,封装数据的范围不同封装数据的范围不同n增加必要的增加必要的padding数据数据n加密操作加密操作q产生序列号产生序列号q计算计算ICV,注意,针对加密后的数据进行计算,注意,针对加密后的数据进行计算q分片分片2022-1-22华中农业大学信息学院55ESP处理过程处理过程(2)n对于接收到的包对于接收到的包(Inbound Packet )的处理的处理q分
34、片装配分片装配q查找查找SA 依据:目标依据:目标IP地址、地址、ESP协议、协议、SPIq检查序列号检查序列号(可选,针对重放攻击可选,针对重放攻击) 使用一个滑动窗口来检查序列号的重放使用一个滑动窗口来检查序列号的重放qICV检查检查q解密解密n根据根据SA中指定的算法和密钥、参数,对于被加密部分的中指定的算法和密钥、参数,对于被加密部分的数据进行解密数据进行解密n去掉去掉paddingn重构原始的重构原始的IP包包2022-1-22华中农业大学信息学院56SA的组合的组合n单个单个SA可以实现可以实现AH或或ESP协议,但不能两者协议,但不能两者都实现。都实现。n特定的通信量可能需要同时
35、调用特定的通信量可能需要同时调用AH和和ESP服服务务q如:同时需要主机之间和防火墙之间的服务如:同时需要主机之间和防火墙之间的服务q需要为相同流量提供多个需要为相同流量提供多个SA,即安全关联组合,即安全关联组合n安全关联束形成方式安全关联束形成方式q传输邻接:不形成隧道的情况下,同一分组应用传输邻接:不形成隧道的情况下,同一分组应用AH和和ESP一级组合一级组合q隧道嵌套:通过隧道实现多级安全协议的应用隧道嵌套:通过隧道实现多级安全协议的应用2022-1-22华中农业大学信息学院572022-1-22华中农业大学信息学院58认证与机密性的组合(认证与机密性的组合(1)n带有认证选项的带有认
36、证选项的ESP2022-1-22华中农业大学信息学院59鉴别与机密性的组合(鉴别与机密性的组合(2)n传输邻接传输邻接 使用两个捆绑的传输使用两个捆绑的传输SA,内部是,内部是ESP SA(没(没有认证选项),外部是有认证选项),外部是AH SA2022-1-22华中农业大学信息学院60鉴别与机密性的组合(鉴别与机密性的组合(3)n传输隧道束传输隧道束 加密之前进行鉴别更可取内部的加密之前进行鉴别更可取内部的AH传输传输SA +外部的外部的ESP隧道隧道SA2022-1-22华中农业大学信息学院61IPSec实现实现n实现形式实现形式q与与IP协议栈紧密集成,直接修改协议栈,协议栈紧密集成,直
37、接修改协议栈,既适用既适用于主机模式,也适用于安全网关于主机模式,也适用于安全网关q若无法修改协议栈若无法修改协议栈(1)BITS ( Bump-in-the-stack) 位于位于IP协议栈和网络驱动程序之间协议栈和网络驱动程序之间(2)BITW (Bump-in-the-wire) 外置加密设备,通常是可外置加密设备,通常是可IP寻址的寻址的2022-1-22华中农业大学信息学院62IPSec密钥管理密钥管理n包括密钥的确定和分配包括密钥的确定和分配q典型的需求是两个应用需要典型的需求是两个应用需要4个密钥:针对发送和个密钥:针对发送和接收的接收的AH和和ESPn两种管理方式:两种管理方式
38、:q手工手工q自动自动 n自动密钥管理协议自动密钥管理协议qISAKMP/Oakley qISAKMP/IKEn作用:在作用:在IPSec通信双方之间,建立起共享安通信双方之间,建立起共享安全参数及验证过的密钥(建立全参数及验证过的密钥(建立“安全关安全关联联”).2022-1-22华中农业大学信息学院63ISAKMPnISAKMP: Internet Security Association and Key Management ProtocolqRFC 2408q是一个针对认证和密钥交换的框架是一个针对认证和密钥交换的框架n框架结构框架结构q定义了过程和分组格式来建立、维护、删除安全关定义
39、了过程和分组格式来建立、维护、删除安全关联联(SA)q双方交换数据(密钥、鉴别数据)双方交换数据(密钥、鉴别数据)q双方交换数据的过程中的处理方法双方交换数据的过程中的处理方法q独立于加密算法、密钥交换协议、鉴别算法独立于加密算法、密钥交换协议、鉴别算法2022-1-22华中农业大学信息学院64ISAKMP消息结构消息结构nISAKMP头部结构nISAKMP的payload结构2022-1-22华中农业大学信息学院65各种各种payload2022-1-22华中农业大学信息学院66两阶段协商两阶段协商(Two phases of negotiation)nThe first phase, 建立
40、起建立起ISAKMP SAq 双方双方(例如例如ISAKMP Servers)商定如何保护以后的商定如何保护以后的通讯,通信双方建立一个已通过身份鉴别和安全保通讯,通信双方建立一个已通过身份鉴别和安全保护的通道护的通道q 此此SA将用于保护后面的将用于保护后面的protocol SA的协商过程的协商过程nThe second phase, 建立起针对其他安全协议的建立起针对其他安全协议的SA(比如,比如,IPSec SA)q 这个阶段可以建立多个这个阶段可以建立多个SAq 此此SA将被相应的安全协议用于保护数据或者消息将被相应的安全协议用于保护数据或者消息的交换的交换2022-1-22华中农业
41、大学信息学院67两阶段协商的好处两阶段协商的好处n对于简单的情形,两阶段协商带来了更多对于简单的情形,两阶段协商带来了更多的通讯开销的通讯开销n 但是,它有以下一些好处但是,它有以下一些好处q第一阶段的开销可以分摊到多个第二阶段中所第一阶段的开销可以分摊到多个第二阶段中所以,这允许多个以,这允许多个SA建立在同样的建立在同样的ISAKMP SA基础上基础上q第一阶段商定的安全服务可以为第二阶段提供第一阶段商定的安全服务可以为第二阶段提供安全特性安全特性n例如,第一阶段的例如,第一阶段的ISAKMP SA提供的加密功能可以提供的加密功能可以为第二阶段提供身份鉴别特性,从而使得第二阶段的为第二阶段
42、提供身份鉴别特性,从而使得第二阶段的交换更为简单交换更为简单q 两阶段分开,提供管理上的便利两阶段分开,提供管理上的便利2022-1-22华中农业大学信息学院68ISAKMP的消息交换的消息交换nISAKMP定义了定义了5种消息交换类型种消息交换类型q Base Exchangen交换密钥,但是不提供身份保护交换密钥,但是不提供身份保护q Identity Protection Exchangen交换密钥,也提供身份保护交换密钥,也提供身份保护q Authentication Only Exchangen只有鉴别只有鉴别(对消息的鉴别对消息的鉴别)q Aggressive Exchangen只
43、有三条消息,类似于只有三条消息,类似于base exchangeq Informational Exchangen传输信息,用于传输信息,用于SA管理管理2022-1-22华中农业大学信息学院69Oakley密钥确定协议密钥确定协议nRFC2412 The OAKLEY Key Determination Protocoln是对是对Diffie-Hellman密钥交换算法的细化密钥交换算法的细化和优化和优化2022-1-22华中农业大学信息学院70回顾:回顾: Diffie-Hellman密钥交换密钥交换n允许两个用户可以安全地交换一个秘密信息,用允许两个用户可以安全地交换一个秘密信息,用于后
44、续的通讯过程于后续的通讯过程n算法的安全性依赖于计算离散对数的难度算法的安全性依赖于计算离散对数的难度n算法:算法:n素数素数p以及以及p的原根的原根a如何确定?如何确定?2022-1-22华中农业大学信息学院71Diffie-Hellman密钥交换的弱点密钥交换的弱点n没有提供双方身份的任何信息没有提供双方身份的任何信息n容易受到中间人攻击容易受到中间人攻击n计算密集性:容易受到阻塞性攻击计算密集性:容易受到阻塞性攻击2022-1-22华中农业大学信息学院72Oakley的特征的特征n使用使用cookie程序来对抗阻塞程序来对抗阻塞n使得双方可以协商一个组使得双方可以协商一个组n使用使用no
45、nce对抗重放攻击对抗重放攻击n能够交换能够交换Diffie-Hellman公开密钥的值公开密钥的值n对对Diffie-Hellman交换进行认证交换进行认证2022-1-22华中农业大学信息学院73Cookie exchangenCookie exchangeq要求每一方在初始消息中发送一个伪随机数,即要求每一方在初始消息中发送一个伪随机数,即cookie,而另一方对此做出确认而另一方对此做出确认nCookie的要求的要求(ISAKMP规定规定)qCookie的值必须依赖于特定的参与方,即与参与方的某的值必须依赖于特定的参与方,即与参与方的某种标识关联种标识关联q 除了产生除了产生cooki
46、e的这一方之外,其他人都无法产生出可的这一方之外,其他人都无法产生出可被他接受的被他接受的cookie值,所以,产生和验证值,所以,产生和验证cookie时都会时都会用到本地的秘密信息用到本地的秘密信息qCookie的产生和验证方法必须足够快速的产生和验证方法必须足够快速n一个例子:对一个例子:对IP源和目标地址、源和目标端口,以及一个源和目标地址、源和目标端口,以及一个本地秘密值做一个本地秘密值做一个hash算法的结果算法的结果2022-1-22华中农业大学信息学院74Oakley支持的组支持的组n支持Diffie-Helman交换时使用不同的组,包括全局参数及算法本身2022-1-22华中
47、农业大学信息学院75Oakley使用三个不同的鉴别方法使用三个不同的鉴别方法n数字签名数字签名:对散列数签名对散列数签名n公开密钥加密公开密钥加密n对称密钥加密对称密钥加密2022-1-22华中农业大学信息学院76Internet 密钥交换密钥交换IKEnIKE协议:协议: The Internet Key Exchange (IKE)qRFC2409,是,是Oakley和和SKEME协议的一种混合协议的一种混合q基于基于ISAKMP框架框架qOakley和和SKEME定义了通信双方建立共享密钥必定义了通信双方建立共享密钥必须采取的步骤须采取的步骤q是一种常规用途的安全协议,其规范在是一种常规
48、用途的安全协议,其规范在DOI中定义中定义2022-1-22华中农业大学信息学院77IKE中几个概念中几个概念nPFS: Perfect Forward Secrecyq一旦一个密钥被泄漏,只会影响到被一个密钥保护的数据一旦一个密钥被泄漏,只会影响到被一个密钥保护的数据nPhaseq同同ISAKMP中的中的phasenGroupqOakley定义的定义的Diffie-Hellman密钥交换参数密钥交换参数nModeq来自来自Oakley中的定义中的定义q指一个密钥交换过程指一个密钥交换过程q四个四个modenMain Mode, Aggressive Mode用于用于phase 1nQuick
49、 Mode用于用于phase 2nNew Group Mode用在用在phase 1之后,为将来的协商商定之后,为将来的协商商定一个新的组一个新的组2022-1-22华中农业大学信息学院78两阶段三模式两阶段三模式nphase 1 :IKE SA的创建,两模式的创建,两模式q主模式(主模式(Main Mode)交换)交换:灵活灵活q野蛮模式(野蛮模式(Aggressive Mode)交换)交换:快快nphase 2 :IPSec SA的创建的创建q快速模式快速模式(Quick Mode)交换,是在交换,是在IKE SA的保护下协的保护下协商拟定商拟定IPSec SAn主模式交换采用三个步骤主模
50、式交换采用三个步骤q模式协商模式协商qDiffie-hellman交换和交换和Nonce交换交换q身份验证。身份验证。n主模式的特点主模式的特点q身份保护身份保护q对对ISAKMP协商能力的完全应用。协商能力的完全应用。2022-1-22华中农业大学信息学院79IKE中的密钥交换中的密钥交换Main Moden是ISAKMP的Identity Protection Exchange的一个实例,使用预共享密钥nI - R: SAR - I: SAI - R: KE; NONCER - I: KE; NONCEI - R: IDI; AUTH (加密传输)R - I: IDR; AUTH (加密传