计算机安全与保密技术第七章_第1页
计算机安全与保密技术第七章_第2页
计算机安全与保密技术第七章_第3页
计算机安全与保密技术第七章_第4页
计算机安全与保密技术第七章_第5页
已阅读5页,还剩49页未读 继续免费阅读

下载本文档

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

文档简介

网络安全

第七讲IPSec与VPN

本讲内容

7.1IPSecurity示意图

7.2IPSec

7.3IPSec&VPN实现实例

7.4IP、VPN密码机设计原理

5%

7.1IPSecurity示意图

Usersj'slcm

withIPSec

IPIIMSecureIP

1IdJiJcl1IGJJurPayluud

Networkingdevice

withIPSecNetworkingde\ice

withIPSec

IPIPIPIP

Ikdtk!Riykvid1lead.,!Paykxad

7.2IPSec

口网络层安全性

A需求:真实性(认证)、完整性和机密性

»优点:对于应用层透明

可以针对链路、最终用户

»弥补IPv4在协议设计时缺乏安全性考虑的不足

□IPSec是IETF定义的一组安全IP协议集

»目前已有一系列的RFC和InternetDraft

»在IP包这一级为IP通信业务提供保护

A在IPv4中是一项可选支持的服务,在IPv6中是一项

必须支持的服务

7.2.1IPSec的应用

□通过Internet建立分支机构

□通过Internet远程访问企业内部网络

□合作伙伴之间通过Internet建立信任关系

□也可用于电子商务应用

□iPSec最常见的应用——VPN

□借助(参考)IPSec,更换密码算法,实现Internet密

码通信

7.2.21Psec的内容

口协议部分

AAH:AuthenticationHeader

AESP:EncapsulatingSecurityPayload

口密钥管理(KeyManagement)

>SA(SecurityAssociation)

AISAKMP定义了密钥管理框架

■IKE是目前正式确定用于IPSec的密钥交换协议

7.2.3SA(SecurityAssociation)

□基本概念

>SA是发送者和接收者两个IPSec系统之间的一个简单的单

向逻辑连接,是与给定的一个网络连接或一组网络连接相

关联的安全信息参数(应用IPSec协议否、协议操作模式、

密码算法、密钥及其生存期等)集合

>因为SA是单方向的,所以对于一个双向通信,需要两个

SA

□SA与IPSec系统中实现的两个数据库相关

>安全策略数据库(SPD)

>安全关联数据库(SAD)

□每个SA通过三个参数来标识

>SPI(SecurityParametersIndex)

>目标地址IP

>安全协议标识

7.2.4SPD&SAD

□SPD-

»对于通过的流量有三种策略可供选择:discard,bypass

Ipsec、applyIpsec

>管理界面

»条目的粒度不必很细,因为作用在IP包上

□SAD,通常用到以下一些域

>SequenceNumberCounter

>SequenceCounterOverflow

>Anti-ReplayWindow

>AHAuthenticationalgorithm,keys,etc

>ESPEncryptionalgorithm,keys,IVmode,IV,etc

>ESPauthenticationalgorithm,keys,etc

>LifetimeofthisSecurityAssociation

>IPsecprotocolmode

>PathMTU

7.2.5AH(AuthenticationHeader)

□为IP包提供数据完整性和认证功能

□利用MAC码实现认证,双方必须共享一个密

□认证算法由SA指定

A认证的范围:整个包

口两种认证模式

A传输模式:不改变IP地址,插入一个AH

»隧道模式:生成一个新的IP头,把AH和原来的整

个IP包放到新IP包的载荷数据中

AH两种模式示意图(IPv4)

应用AH前的IPv4头传输模式

|变长可选域|传输协议头|传输协议数据

应用AH后的IPv4头

变长可选域|AH|传输协议头|传输协议数据

H除可变域都要认证--

应用AH前的IPv4头隧道模式

变长可选域传输协议头传输协议数据

应用AH后的IPv4头

新IP头的可选域AH嚣黑传输协议头传输协议数据

H除了新IP头中的可变域都要认证

AH两种模式示意图(IPv6)

IPSecAuthenticationHeader

Bit:08

/J-

、心xlHeaderPayhiadLengthRESERVED

SecurihParametersIndex(SPJ)

SequenceNumber

AuthenticationData(variable)

□NextHeader:下一个头的类型(RFC1700中包含已分配的IP协议

头值信息)

□PayloadLength:AH的长度(32位字为单位,总认证头长度-2)

□SPI:用来标识SA,1-255被IANA留用,0保留,255-232-1可用

□SequenceNumber:用来避免重放攻击

□AuthenticationData:可变长度的域,包含针对这个包的ICV(完

整性校验值)或者MAC

AH处理过程(1)

口AH定位

A在IP头之后,在上层协议数据之前

口认证算法

>计算ICV或者MAC

□对于发出去的包(OutboundPacket)的处理,构造

AH

>查找SA

>产生序列号

>计算ICV(IintegrityCheckValue)

内容包括:IP头中部分域、AH自身、上层协议数据

»分片

AH处理过程(2)

□对于接收到的包(InboundPacket)的处理

>分片装配

>查找SA

依据:目标IP地址、AH协、议、SPI

»检查序列号(可选,针对重放攻击)

使用一个滑动窗口来检查序列号的重放

>ICV检查

7.2.6ESP(EncapsulatingSecurityPayload)

口提供加密功能,也可以提供认证服务

□将需要加密的用户数据进行加密后再封装在

一个新的IP包中,ESP只认证ESP头之后的信

□加密算法和认证算法由SA指定

□有两种模式:传输模式和隧道模式

ESP两种模式示意图(IPv4)

_______________应用ESP前的IP、4失传输模式

变长可选项传输协议头传输协议数据

应用ESP后的IPv4头

变长可选项ESP头传输协议头传输协汉数据藁益懿

4加密的--

L.——认证的-

应用ESP前£144一隧道模式

变长可选域传输th;v号输侍位数据

二毛ESP后的IPv4头

新的IP头NP头ESPESP认

右可代域传输协议头传输协议数据

可选域尾部证数据

-加密的

认证的-

ESP两种模式示意图(IPv6)

应用ESP前的IPv6头拜前模式

原始IP头扩展头(如果存在)传输协汉头传输协议数据

应用ESP后的IPv6头

逐跳、路由以及分传输协ESP

原始IP头ESP头传输协议头

段和目的♦扩展头议数据尾部认证数据

加密的

认证的

•如果存在,可以在ESP之前、之后或同时在ESP之前和之后

应用ESP前的IPv6头隧道模式

传输协议头传输协议数据

原始1P头扩展头(如果存在)

应用ESP后的IPv6头

扩展头FSP原始扩--展-头传..输.传输协ESP

新头IP义•(如果存在)协议头议数据尾部认证数据

1P(如果存在)头

加密的

认证的

ESP两种模式示意图

经认证的数据

经加密的数据

IOrigESPTCPDataESPtrlrESPI

IPHdrhdroauth

(1)传输模式

经认证的数据

经加密的数据

INewIPESPOrigIPTCPDataESPtrlrESP

|Hdr

hdrhdrauth

(2)隧道模式

IPSecESP格式

o8632

*24

SecurityParametersIndex(SPI)

认SequenceNumber

密PayloadData(variable)

Padding(0-255bytes)

PadLengthNextHeader

AuthenticationData(variable)

ESP处理过程(1)

□ESP头定位

□加密算法和认证算法由SA确定

口对于发出去的包(OutboundPacket)的处理

>查找SA

A加密

■封装必要的数据,放到payloaddata域中

不同的模式,封装数据的范围不同

■增加必要的padding数据

■加密操作

>产生序列号

A计算ICV(注意,针对加密后的数据进行计算)

»分片

ESP处理过程(2)

口对于接收到的包(InboundPacket)的处理

>分片装配

>查找SA

■依据:目标IP地址、ESP协议、SPI

»检查序列号(可选,针对重放攻击)

-使用一个滑动窗口来检查序列号的重放

>ICV检查

A解密

■根据SA中指定的算法和密钥、参数,对于被加密部分

的数据进行解密

■去掉padding

■重构原始的IP包

7.2.7AH和ESP的典型组合

TransportTunnel

1.[IP1][AH][upper]4.[IP2][AH][IPl][upper]

2.[IP1][ESP][upper]5.[IP2][ESP][IP1][upper]

3.[IP1][AH][ESP][upper]

□这里upper指上层协议数据

□IP1指原来的IP头

□IP2指封装之后的IP头

7.2.8IPSec实现

口实现形式

»与IP协议栈紧密集成

■要求有IP协议栈的源代码

■既适用于主机模式,也适用于安全网关

A(BITS)Bump-in-the-stack

■位于IP协议栈和网络驱动程序之间

■通常适用于主机模式

>BITW(Bump-in-the-wire)

■如果是在单独的主机上,类似于BITS情形

■如果是BITW设备,通常是可IP寻址的

7.2.9IPSec密钥管理

□ISAKMP:InternetSecurityAssociationandKey

ManagementProtocol(Intemet安全关联密钥管理协议)

>RFC2408

A是一个针对认证和密钥交换的框架

□IKE:TheInternetKeyExchange

A基于ISAKMP框架

>结合了Oakley和SKEME的部分密钥交换技术

7.2.10ISAKMP

口基本的需求

»商定SA

■确定身份,密钥交换

A与协议、算法、厂商都无关

口框架结构

A针对身份认证和密钥交换的协商过程

A定义了基本的消息结构

A定义了各种消息类型和payload结构

»提供了几种缺省的密钥交换模型

ISAKMP消息结构

□ISAKMP头部结构

□ISAKMP的payload结构

NextPayloadRESERVEDPayloadLength

各种payload

TypeParameters

SecurityAssociation(SA)DOI,Situation

Proposal(P)Proposal#,Protocol-ID,...

Transfbrm(T)Transform#,SAAttributes

KeyExchange(KE)KeyExchangeData

Identification(ID)IDtype,IDdate

Certificate(CERT)CertEncoding,Certificatedata

CertificateRequest(CR)#Certtypes,Certauths,...

Hash(HASH)HashData

Signature(SIG)SignatureData

Nonce(NONCE)NonceData

Notification(N)DOI,Protocol-ID,...

Delete(D)DOI,Protocol-ID,...

ISAKMP载荷格式(1)

□安全关联载荷:协商SA

□建议载荷:包括SA协商中需要的信息,用于告知接收者它优

先选择的安全协议及SA采用的相关安全机制

□变换载荷:发起方在建立SA的协商中为一个指定协议提供不

同的安全机制

口密钥交换载荷:为任何常用的密钥交换协议传输密钥交换数

□标识载荷:允许通信双方交换身份信息

□证书载荷:允许通信双方使用ISAKMP协议交换证书及其相

关信息

□证书请求载荷:使得ISAKMP通信双方可以通过ISAKMP请求

证书

ISAKMP载荷格式(2)

□杂凑载荷:包含在SA协商过程中选定杂凑函数生成

的数据

□签名载荷:含有为SA协商的数据签名函数生成的数

据,用于验证ISAKMP消息的完整性并可用于非否

认服务

□none载荷:包含用来保护交接的数据免受重放攻击

的随机数

□通知载荷:用于传送通知数据

□删除载荷:通知对方某个特定IPSec协议(ISAKMP、

AH、ESP)指定的SA已经被从它的SAD中删除

□厂商ID载荷:用来传递厂商定义的常数

两阶段协商(Twophasesofnegotiation)

□Thefirstphase,建立起ISAKMPSA

>双方(例如ISAKMPServers)商定如何保护以后的通信

>此SA将用于保护后面的protocolSA的协商过程

□Thesecondphase,建立起针对其他安全协议的SA(比

如,IPSecSA)

»这个阶段可以建立多个SA

»此SA将被相应的安全协议用于保护数据或者消息的交换

两阶段协商的好处

□对于简单的情况,两阶段协商带来了更多的通信开

口但是,它有以下一些优点

»第一阶段的开销可以分摊到多个第二阶段中所以,这允许

多个

SA建立在同样的ISAKMPSA基础上

>第一阶段商定的安全服务可以为第二阶段提供安全特性

■例如,第一阶段的ISAKMPSA提供的加密功能可以为

第二阶段提供身份认证特性,从而使得第二阶段的交

换更为简单

»两阶段分开,提供管理上的便利

回顾:Diffie-Heliman密钥交换

□允许两个用户可以安全地交换一个秘密信息,用

于后续的通信过程

□算法的安全性依赖于计算离散对数的难度

□算法

>双方选择素数q以及q的一个原根r

>A选择X<q,计算XA=rXmodp,A-B:XA

>B选择Y〈q,计算YB=rYmodp,BfA:YB

AA计算:(YB)x=(rY)x=rXYmodp

AB计算:(XA)Y三(rX)Y三MYmodp

>双方获得一个共享密钥(MYmodp)

□素数q以及q的原根r如何确定?

Cookieexchange

□背景:Diffie-Hellman密钥交换算法面I信的问题

»中间人攻击、重放攻击

>Cloggingattack

□Cookieexchange

>要求每一方在初始消息中发送一个伪随机数,即cookie,

而另一方对此做出相应的应答

□Cookie的要求

>Cookie的值必须依赖于特定的参与方,即与参与方的某种

标识关联

>除了产生cookie的这一方之外,其他人都无法产生出可被

他接受的cookie值,所以,产生和验证cookie时都会用到

本地的秘密信息

>Cookie的产生和验证方法必须足够快速

□例子:对IP源和目标地址、源和目标端口,以及一个本地秘

密值做一个hash算法的结果

ISAKMP的消息交换

□ISAKMP定义了5种消息交换类型

ABaseExchange

・交换密钥,但是不提供身份保护

>IdentityProtectionExchange

■交换密钥,也提供身份保护

>AuthenticationOnlyExchange

•只有认证(对消息的认证)

>AggressiveExchange

■只有三条消息,类似于baseexchange

>InformationalExchange

■传输信息,用于SA管理

7L2.11IKE中几个概念

□PFS:PerfectForwardSecrecy-

>一旦一个密钥被泄漏,只会影响到被一个密钥保护的

数据

□Phase

>同ISAKMP中的phase

□Group

>Oakley定义的Diffie-Hellman密钥交换参数

□Mode

>来自Oakley中的定义

>指一个密钥交换过程

>四个mode

■MainMode,AggressiveMode用于phase1

■QuickMode用于phase2

■NewGroupMode用在phase1之后,为将来的协商商定一个

新的组

IKE中的组

□IKE定义了四个组(DiffieHelman参数设定)

>768-bitMODPgroup

■参数:q=2A768-2A704-1+2A64*{[2A638pi]+

149686)

■£=2

>1024-bitMODPgroup

■参数:q=2A1024-2A960-1+2A64*{[2A894pi]+

129093)

■a=2

>EC2NgrouponGP[2A155]

>EC2NgrouponGP[2A185]

IKE中的密钥交换MainMode(主模式)

口是ISAKMP的IdentityProtectionExchange

个实例

I->R:SA

R->I:SA

I->R:KE;NONCE

R->I:KE;NONCE

I->R:0;AUTH(加密传输)

R->I:IDR;AUTH(加密传输)

A前两条消息商定策略

»接下来两条消息交换密钥资料

»最后两条消息认证Diffie-HellmanExchange

□用于phase1

IKE中的密钥交换AggressiveMode(野蛮模式)

口是ISAKMP的AggressiveExchange的——个实例

I->R:SA;KE;NONCE;IDT

R->I:SA;KE;NONCE;IDR;AUTH

I->R:AUTH(加密传输)

A前两条消息商定策略,交换Diffie-Hellman公开的

值,以及必要的辅助资料,个人标识

»第二条消息认证应答者

»第三条消息认证发起者

□用于phase1

IKEPhase1中的认证方案

□IKEPhase1AuthenticatedWithSignatures

□Phase1AuthenticatedWithPublicKey

Encryption

□Phase1AuthenticatedWithaPre-SharedKey

IKE中的密钥交换QuickMode(快速模式)

□在ISAKMP中没有对应的交换类型

I->R:SA;NONCE;[ID,IDR,KE];HASH(l)

R->I:SA;NONCE;g,IDR,KE];HASH(2)

I->R:HASH(3)

以上消息都是加密传输

□如果PFS不需要的话,则可以不传KE

□只用于第二阶段

IKE中的密钥交换NewGroupMode(新群模式)

□在ISAKMP中没有对应的交换类型

I->R:SA;HASH(l)

R->I:SA;HASH(2)

以上消息都是加密传输

□用于第一阶段之后

7.2.12IPSec和IKE小结

□IPSec在网络层上提供安全服务

>定义了两个协议AH和ESP

□IKE提供了密钥交换功能

>利用ISAKMP提供的框架、以及Oakley和SKEME的密钥

交换协议的优点

□通过SA把两部分连接起来

口已经发展成为Internet标准

口一些困难

>IPSec太复杂

■协议复杂性,导致很难达到真正的安全性

■管理和配置复杂,使得安全性下降

>实现上的兼容性

>攻击:DoS,网络层之下的协议、之上的协议的弱点

>还在进一步完善

7.2.13IPSec实现

□一些网络设备厂商

>比如CISCO等

口各种操作系统

»例如Linux、各种UNIX版本

□IPv6实现

口一些VPN软件包

□...

7.2.14Windows2000和XP下的IPSec

□文章

Ahttp:〃/infocus/1519

Ahttp:〃/infbcus/1526

Ahttp:〃/infocus/1528

口实现特点

>与IETF兼容

»支持Kerberos、基于证书的认证、基于共享密钥的认证

»一些不受1Psec保护的流量:广播包、组播包、RSVP包、

IKE包、Kerberos包

>与L2Tp结合起来提供安全的VPN远程访问

»不能与NAT协同工作

»仍然面临一些攻击:DoS,其他层上协议的攻击

□对[比FreeBSD的实现:

卜—Xg/doc/enUS.ISO885%

7.2.15Windows2000和XP下的IPSec管理工具

□iPSecSecurityPoliciessnap-infortheMMG

(secpol.msc)

□IPSecmon.exe策略名称安全设置~~筛选器名称源地址—目标地址通讯协议।源端口~~惬wol

最小化小)I

pIPSEC统计nISAKMP/OakL«y统计

活动关联oOakley主稹式o

发送的保密字节0Oakley快速模式0

接收的保密字节0软关联0

发送的身份验证字节0验证失败0

接收的身份险证字节0

损坏的SPI包0

未解密的包0

未验证的包0

附加密钥0IP安全设置已在这台计曾机上启用.

7.3IPSec&VPN实现实例

□实例

ALinux

FreeSWAN:

/

□中文网站

http://.cn/

7.4IP、VPN密码机设计原理

7.4.1IP包是基础

□网络协议的相关性

□Frame结构的实质

>头结构:头结构的信息决定在ame在网络中的流向

AData域可若干二次封装:二次封装决定了frame的自由度

7.4.2IP密码机设计原理

□IP包头可认证,但不能加密

□Data域可加密、可认证

□基本密钥在线更换、密码机在线监控

□分组算法的高速硬件实现

□分组算法会话密钥的交换与认证

□中包高速转发机制

□双以太网模块

7.4.3VPN密码机设计原理

□iPSec协议的全面实现

□AH、ESP认证、加密算法设计与实现

口VPN密码机认证与算法选择

□基本密钥在线更换、密码机在线监控

口会话密钥的交换与认证

□IP包高速转发机制

口双以太模块

口分组算法、Hash函数的高速实现

7.4.4“三层交换”密码机设计原理(小结)

口网络协议的相关性

口数据封装成帧的含义与可修改性(可多次封装)

□iPSec协议

□密码机认证与算法选择

□算法高速硬件实现

□IP包高速转发机制

口密钥交换与认证

□基本密钥在线更换、密码机在线监控

参考资料

□书

>IPSec:VPN的安全实施,CarltonR.Davis著,

周永彬等译,清华大学出版社,2002.1

>WilliamStallings,Cryptographyandnetwork

security:principlesandpractice,SecondEdition

>计算机通信网络安全,冯登国,清华大学出版

社,2001

>DavidChappell,UnderstandingMicrosoft

Windows2000DistributedServices,中文版C青华

大学出版社,潘爱民译),2001

参考资料

□文章______________________

>Bel90.S.M.BellovinandM.Merritt,^LimitationsoftheKerberos

AuthenticationSystem,99ComputerCommunicationsReview20(5),

pp.119-132(October1990).

>JohnT.Kohl,B.Cliffo

温馨提示

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

评论

0/150

提交评论