第07章 Internet 安全协议体系_第1页
第07章 Internet 安全协议体系_第2页
第07章 Internet 安全协议体系_第3页
第07章 Internet 安全协议体系_第4页
第07章 Internet 安全协议体系_第5页
已阅读5页,还剩131页未读 继续免费阅读

下载本文档

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

文档简介

1、第07章 Internet安全协议体系 主讲人:李学明 单 位:重庆大学计算机学院 2013年1月 目录 7.1 TCP/IP安全协议体系概述 7.2 数据联路层安全协议 7.3 网络层安全全协议 7.4 传输层安全协议 7.5 代理协议 7.6 应用层安全协议 ISO/OSI参考模型TCP/IP层次模型TCP/IP体系 应用层(A) 应用层 FTP TELNET HTTP SNMP NFS 表示层(P) XDR SMTR 会话层(S)RPC 传输层(T)传输层TCP/UDP 网络层(N)IP层IPICMP ARP、RARP 数据链路层(DL)网络接口层 硬件协议 (不指定)物理层(PH) 7

2、.1 TCP/IP安全协议体系概述 TCP/IP网络安全体系的三维框架结构 实体单元 分 层 安 全 管 理 安全属性 (安全服务/安全机制) 应用系统安全 计算机网络安全 0 终端系统安全(计算机+OS) 认 证 访 问 控 制 数 据 完 整 性 抗 抵 赖 可 用 性 、 可 控 性 可 审 计 性 安全管理 现有TCP/IP网络安全技术框架 安全服务 TCP/IP协议层 网络接口IP层传输层应用层 对等实体认证-YYY 数据源认证-YYY 访问控制服务-YYY 连接机密性YYYY 无连接机密性YYYY 选择字段机密性-Y 业务流机密性YY-Y TCP/IP协议安全模型中提供的安全服务

3、可恢复连接完整性-YY 不可恢复连接完整性-YYY 选择字段连接完整性-Y 无连接完整性-YYY 选择字段非连接完整性-Y 源发方不可抵赖-Y 接收方不可抵赖-Y 说明:Y:服务应作为选项并入该层的标准之中 -:不提供 S/MIME PGP SOCKS等应用层 SSL TLS 等传输层 IPv6 IPSec 等网际层 PPTP L2F L2TP等网络接入层 TCP/IPTCP/IP中的安全协议体系(讲课内容)中的安全协议体系(讲课内容) 安全协议概述 TCP/IPTCP/IP网络安全协议按层次归类如下:网络安全协议按层次归类如下: 1、网络接口层安全协议网络接口层安全协议 主要用于链路层连接的

4、认证与保密,已有的安全协议如下: (1)隧道协议PPTP、L2F、L2TP (2)口令认证协议(PAP) (3)挑战握手认证协议(CHAP) (4) Shiva口令认证协议(SPAP) (5)扩展认证协议(EAP) (6)微软的挑战/响应握手认证协议(MS-CHAP) (7)微软的点对点加密协议(MS-MPPE) 2、网络层安全协议、网络层安全协议 网络层是实现全面安全的最低层次,网络层安全协议可以提供ISO 安全体系结构中所定义的所有安全服务。 (1) 前期安全协议 1)NSA/NIST的安全协议3(SP3) 2)ISO的网络层安全协议(NLSP) 3)NIST的完整NLSP(I-NLSP)

5、 4)swIPe (2) IETF的IPSec WG的IP安全协议(IPSec) 1)认证头(AH) 2)封装安全有效负载(ESP) 3)Internet密钥交换协议(IKE) (3) IETF的IPSec WG的Internet密钥管理协议(IKMP) 1)标准密钥管理协议(MKNP) 2)IP协议的简单密钥管理(SKIP) 3)Photuris密钥管理协议 4)安全密钥交换机制(SKEME) 5)Internet安全关联和密钥管理协议(ISAKMP) 6)OAKLEY密钥决定协议 (4) 其它安全协议 1)机密IP封装协议(CIPE) 2)通用路由封装协议(GRE) 3)包过滤信息协议(P

6、FIP) 3、传输层安全协议、传输层安全协议 (1)前期协议 NSA/NIST的安全协议4(SP4) ISO的TLSP (2)安全SHELL(SSH) SSH传输层协议 SSH认证协议 (3)安全套接字层(SSL) SSL记录协议 SSL握手协议 (4)私有通信技术(PCT) (5)IEIF TLS WG的传输层安全协议(TLSP) (6)SOCKSv5 4、应用层安全协议、应用层安全协议 包括安全增强的应用协议(已经正式存在的或安全的 新协议)和认证与密钥分发系统。 (1)安全增强的应用协议 远程终端访问(STel) 安全RPC认证(SRA) NATAS (2) 电子邮件(SMTP) 保密增

7、强邮件(PEM) PGP 安全MIME(S/MIME) MIME对象安全服务(MOSS) 消息安全协议(MSP) APOP Gnu保密防护(GnuPG) (3)WWW事务(HTTP) 使用SSL/TLS 安全HTTP(S-HTTP) GSS-API方法 PGP-CCI方法 (4)域名系统(DNS) 安全DNS(Secure DNS) RFC2065域名系统安全扩展 (5)文件传输(FTP) RFC2228 FTP安全扩展 (6)其它应用 网络管理:简单网络管理协议(SNMPv2、SNMPv3) 机密文件系统(CFS) Andrew文件系统(AFS) 5 5、电子支付方案、电子支付方案 (1)电

8、子货币(Electronic Cash) Ecash(Digicash) CAFE(European R 2)用于建立、设置、测试数据链路连接的链路控制协 议LCP(linkcontrolprotocol); 3)用于建立、设置不同网络层协议的网络控制协议 NCP(networkcontrolprotocol) 本质上,本质上,NCP是一簇协议的代名词。若是用是一簇协议的代名词。若是用TCP/IP, 对应的协议名称为对应的协议名称为IPCP 1) 物理层物理层: :兼容常用硬件和广域网网物理层协议兼容常用硬件和广域网网物理层协议 PPP在设计时即考虑与常用的硬件兼容,支持任何DTE-DCE 接

9、口,例如EIARS-232C、EIARS-242和CCITTV.35 2) 数据链路层:基于数据链路层:基于HDLCHDLC协议协议 PPP使用ISO3309-1979的HDLC(highleveldatalinkcontrol) (用于同步环境)和其修改版ISO3390-1984PAAD1(用于异步 环境)的原理、术语和帧结构,以HDLC作为封装的基础,并使 用HDLC帧校验序列进行错误检测。PPP封装提供了在同一 链路上不同网络层协议的复用,因此很容易连接各种各样的 主机、网桥和路由器。 3) 链路控制协议LCP(Link Control Protocol) v 负责线路建立、测试和选项协

10、商,链路释放 v 使用多种物理层服务:modem、 HDLC bit-serial、 SDH/SONET等 v 提供协商机制 LCP用来在ESTABLISH状态协商数据链路协议选项,并不关心选 项内容,而是提供一种协商机制 v 链路质量检测办法 v 11种帧类型 4) 4) 网络控制协议网络控制协议NCP(Network Control Protocol)NCP(Network Control Protocol) v 可支持多种网络层协议 v 用于协商网络层选项 对于所支持的每一个网络层协议都有一个不同的网 络控制协议(NCP),用来建立和配置不同的网络层协议 v PPP被设计成允许同时使用多

11、个网络层协议 PPPPPP协议应用实例:家庭用户拨号上网协议应用实例:家庭用户拨号上网 1) 物理链路建立 拨号:PC-MODEM-路由器Modem(ISP) 响应:路由器Modem-Modem-PC 2) 数据链路建立 PC路由器:LCP帧 3) 网络层协议协商 PC路由器:NCP分组 如:PC要运行TCP/IP,则其需要IP。 ISP采用DHCP机制分配IP (3) PPP协议的帧格式协议的帧格式 F 净荷净荷CAF校验和校验和 1 字节字节2/4 0 -最大长度最大长度1 1 1 协议协议 1/2 F:首尾标志7Eh,透明传输采用字符填充 A:地址字段,永远为FFh,表示所有站点都可以接

12、收 C:控制字段,默认为03h,表示无编号帧 协议:指明净荷字段的包类型,支持LCP、PAP、CHAP、IP、IPX、AppleTalk. PPP帧中的协议字段是0 xc021,则表明它的有效载荷是一个LCP包 PPP帧中的协议字段是0 x8021,则表明它的有效载荷是IPCP包(NCP) PPP帧中的协议字段是0 xc223,则表明它的有效载荷是一个CHAP包 PPP帧中的协议字段是0 xc023,则表明它的有效载荷是一个PAP包 PPP帧中的协议字段是0 x0021,则表明它的有效载荷是IP包 (4) LCP包的格式包的格式 代码域:LCP包的类型(1个字节) 标识域:LCP包的序号(1个

13、字节) 长度域:LCP包的长度(2个字节) 数据域:选项或重要参数,格式如下 LCP 包的代码域包的代码域 LCP的选项域的选项域 (5) IPCP包的格式包的格式 格式完全同LCP, 代码域使用LCP定义的前面7个 选项含义如下: (6) IP数据报的封装数据报的封装 协议:0X0021 (7) 协议执行过程协议执行过程 建立结束:LCP报文 身分认证:CHAP报文 网络工作:NCP报文 7.2.2 隧道技术原理 1、 基本思想基本思想 隧道技术是一种通过使用互联网络的基础设施在网络之间传递数 据的方式。使用隧道传递的数据(或负载)可以是不同协议的数据 帧或包。 隧道协议将这些其它协议的数据

14、帧或包重新封装在新的包头中发 送。新的包头提供了路由信息,从而使该新的报文能够在互联网络 中被传递,被封装的数据包一旦到达网络终点,数据将被解包并转 发到最终目的地。 2、 隧道的定义隧道的定义 被封装的数据包在公共互联网络上传递时所经过的逻辑路径称为 隧道。 隧道技术是指包括数据封装,传输和解包在内的全过程 3 3、隧道所使用的传输网络、隧道所使用的传输网络 可是任何类型的公共互联网络。 目前普遍使用的是基于Internet(IP网络)隧道技术 4 4、隧道技术类别、隧道技术类别 (1)2层的隧道协议 2层隧道协议对应OSI模型的数据链路层,以帧为数据交换单位。 PPTP,L2TP和L2F(

15、第2层转发)都属于第2层隧道协议,都是将数 据封装在点对点协议(PPP)帧中通过互联网络发送 (2)3层的隧道协议 3层隧道协议对应OSI模型的网络层,以包为数据交换单位。 IP over IP以及IPSec隧道模式都属于第3层隧道协议,都是将IP 包封装在附加的IP包头中通过IP网络传送 不同隧道协议的本质区别在于用户的数据包是被封装在哪种数据包中在隧道中传输的 5 5、隧道协议的构成、隧道协议的构成 无论哪种隧道协议都是由 传输的载体 不同的封装格式 被传输数据包 三部分组成的 乘客协议封装协议传输协议 传输协议:传输协议:IP是一种常见的传输协议;帧中继、ATM也是很好的传输协议 封装协

16、议:封装协议:被用来建立、保持和拆卸隧道。 包括L2F、L2TP、GRE协议。 乘客协议乘客协议:是被封装的协议,可以是PPP、SLIP、IPX、IP等 不同隧道协议的本质区别在于: 用户的数据包是被封装在哪种 数据包中在隧道中传输的 7.2.3 PPTP协议 1 1、基于、基于PPPPPP的传统网络接入服务器的传统网络接入服务器NASNAS的功能的功能 NAS负责管理对所有网络设备和资源的访问,一般具有以下几种功能: (1)提供到PSTN或ISDN的物理接口,控制外部调制解调器和终端适配器。 (2)提供点对点协议(PPP)链路控制协议(LCP)会话的逻辑终止。 (3)参与到PPP认证协议中。

17、 (4)执行各种PPP网络控制协议(NPC)的逻辑终止 (5)为PPP多链路协议提供信道聚集和捆绑管理。 (6)执行NAS接口之间的多协议路由和桥接。 2、基于、基于PPP的传统网络接入服务器的不足的传统网络接入服务器的不足 (1)PPP主要通过拨号或专线方式建立点对点连接 发送数据 (2)若用户与NAS相距遥远,需要远程拨号或远程 专线,这将使系统的使用效率低,成本高 (3)能否借助Internet这种便利资源来建立与远程 主机的连接?这就是PPTP的出发点。 3、PPTP协议的基本模型协议的基本模型 (1) NAS的任务在PPTP协议中被分配给两个主要的组件 PPTP访问集中器PAC(PP

18、TP Access Concentrator) PPTP网络服务器PNS(PPTP Network Server) (2) PPTP访问集中器(PAC) PAC与一条或多条PSTN或ISDN线路相连。它完成PPP操作并处理 PPTP协议。PAC负责为PSTN或ISDN网络提供物理接口,并为PPP链路 控制协议会话提供逻辑终止。具有NAS的第(1)、(2)、(3)种功能。 (3) PPTP网络服务器(PNS) PNS负责处理服务器端的PPTP协议。PNS为NAS的不同的接口之间提 供多协议路由和桥接,负责PPP网络控制协议的逻辑终止 具有NAS的第(3)、(4)、(5)、(6)种功能 客户机 P

19、PP PAC PNS PPTP隧道 位于ISP处 专用网络 PPTPPPTP协议模型协议模型 PAC把PPP数据帧封装后在因特网上传输。这些IP数据包在因特网上按 特定的路由传送,直到到达PNS。 PNS把IP数据包分解为PPP数据包,并从这些PPP数据包中提取出必要的 信息,然后把数据包通过专用网络发送到目的计算机 4、PPTP协议过程协议过程 PPTP有两个过程:控制连接过程和数据传输过程 (1) 控制连接控制连接 在PNSPAC间进行传输数据前,必须建立一个控 制连接。控制连接是一个标准的TCP会话(服务端TCP端 口为1723),通过该连接传递的报文称为控制报文。 控制连接负责建立,管

20、理、释放和拆卸PPTP隧道 控制报文用来通知PAC有来自PNS的出网呼叫, 或是通知PNS有 来自PAC的入网呼叫 控制报文格式控制报文格式 IP首部TCP首部PPTP控制报文 start_control_connection_request:start_control_connection_request:启动启动PPTPPPTP会话请求会话请求 PPTP Message Type:控制连接,该位为1 Control Message Type:start_Control_Connection_Request,为1 Framing Capabilities:异步/同步帧模式(1/2) Bear

21、er Capabilities:模拟/数字信道(1/2) start_control_connection_Reply:start_control_connection_Reply:对启动对启动PPTPPPTP会话请求的响应会话请求的响应 PPTP Message Type:控制连接,该位为1 Control Message Type:start_Control_Connection_Reply,为2 Framing Capabilities:异步/同步帧模式(1/2) Bearer Capabilities:模拟/数字信道(1/2) (2) 数据传输连接数据传输连接 在PPTP隧道建立后,就

22、可以在客户机和PPTP服务 器之间传输数据了。 PPTP隧道上传输的是PPP数据包。PPP数据包是封 装在GRE(通用路由封装)包中的,而GER包是在IP层 上传送的 报文格式报文格式 IP首部GRE首部PPP数据包 拨号建立PPP 连接到VPN Start_control_connection_request Start_control_connection_reply Incoming_call_request Incoming_call_reply Incoming_call_connected PPP数据包 流入呼叫流入呼叫 流出呼叫流出呼叫 Outcoming_call_reques

23、t Outcoming_call_reply PPP数据包 Call_clear_request Call_clear_reply 清除呼叫清除呼叫 停止会话停止会话 关闭PPP连接 Stop_control_connection_request Stop_control_connection_reply 开始会话开始会话 客户机PACPNS 7.2.4 L2TP协议 1、第二层隧道协议第二层隧道协议-L2TP L2TP是一个国际标准隧道协议,它结合了PPTP协议以 及第二层转发L2F协议的优点。 L2TP与PPTP的最大不同在于L2TP将控制报文和数据报 文合二为一,并运行在UDP上,而不是

24、TCP上。UDP省去 了TCP中同步、检错、重传等机制,因此L2TP速度很快。 L2TP协议封装格式如下: 与PPTP类似,L2TP也可支持多种协议。 L2TP协议本身并没有提供任何加密功能 UDP2、L2TP的典型工作模型的典型工作模型 UDP L2TP 协议栈结构及数据包的封装过程 私有IP PPP L2TP UDP 公有IP 链路层 物理层 物理层 私有IP PPP IP包(公有IP)UDPL2TPPPPIP包(私有IP) 链路层 私有IP PPP 物理层 L2TP UDP 公有IP 链路层 物理层 物理层 私有IP 链路层 物理层 ClientLAC LNSServer LAC侧封装过

25、程 LNS侧解封装过程 L2TP协议栈结构 3、L2TP协议及报文格式协议及报文格式 PPP帧 L2TP数据报文 L2TP数据通道 (不可靠) L2TP控制报文 L2TP控制通道 (可靠) 报文传输(UDP、FR、ATM) T:报文类型 0-数据报文,1-控制报文 L:长度域指示符 1:有长度域,对控制报文必须置其为1 S:序号Ns、Nr域指示符 1:有Ns、Nr域,对控制报文必须置其为1 O:offset size域指示符 1:有offset size域,对控制报文必须置其为0 P:优先级域 1:则数据消息报文需要优先被处理,对控制报文 必须置其为0 X:保留比特 L2TP报文头结构报文头结

26、构(数据与控制报文共用数据与控制报文共用) Tunnel IDTunnel ID:隧道:隧道IDID 控制连接的标识符;L2TP在LAC和LNS间建立的隧道在每 一端都有一个标识符号。 该处的隧道标识符是隧道另一端(接收端)相应的标识符 Session IDSession ID 在一个隧道内的会话ID Offset sizeOffset size 用于指明数据开始的位置 控制报文类型控制报文类型 4 4、PPTPPPTP和和L2TPL2TP的差别的差别 1) PPTP1) PPTP要求传输网络为要求传输网络为IPIP网络网络 L2TP只要求隧道媒介提供面向数据包的点对点的连接。 L2TP可以在

27、IP(使用UDP),FR永久虚拟电路(PVCs),X.25虚拟电 路(VCs)或ATM VCs网络上使用。 2) PPTP2) PPTP只能在两端点间建立单一隧道只能在两端点间建立单一隧道 L2TP支持在两端点间使用多隧道。使用L2TP,用户可以针对不 同的服务质量创建不同的隧道 3) L2TP3) L2TP可以提供包头压缩。可以提供包头压缩。 4) L2TP4) L2TP可以提供隧道验证,而可以提供隧道验证,而PPTPPPTP则不支持隧道验证则不支持隧道验证 但是当L2TP或PPTP与IPSEC共同使用时,可以由IPSEC提供隧道 验证,不需要在第2层协议上验证隧道 7.3 网络层安全协议-

28、IPSec 1、为什么需要在、为什么需要在IP层提供安全性?层提供安全性? (1) IP数据报文没有任何安全机制,可被 1)窃听 2)篡改 3)假冒 。 (2) 在IP层提供安全性,对应用、用户是透明的 2、IP层需要什么样的安全性层需要什么样的安全性 (1) 保密性:防止窃听 利用加密技术实现 (2) 完整性:防止篡改 利用消息鉴别技术实现 (3) 鉴 别:防止假冒 确保通信双方的真实性 IPSec的主要特征是可以支持IP级所有流量的加密和/或认证 3、IPSec的主要目标的主要目标 期望安全的用户能够使用基于密码学的安全机制 n应能同时适用与IPv4和IPv6 n算法独立 n有利于实现不同

29、安全策略 n对没有采用该机制的的用户不会有副面影响 对上述特征的支持在对上述特征的支持在IPv6IPv6中是强制的,在中是强制的,在IPv4IPv4中是可选的。中是可选的。 这两种情况下都是采用在主IP报头后面接续扩展报头的方法实现的。 认证的扩展报头称为AH(AuthenticationHeader) 加密的扩展报头称为ESPheader(EncapsulatingSecurityPayload) 4、IPSec在在IP层提供安全服务层提供安全服务 v 访问控制 v 连接完整性 v 数据源认证 v 拒绝重放数据包 v 保密性(加密) v 有限信息流保密性 AH(AH(认证认证) )ESP(E

30、SP(仅加密仅加密) )ESP(ESP(加密加密+ +认证认证) ) 访问控制访问控制 连接完整性连接完整性 数据源认证数据源认证 拒绝重放报文拒绝重放报文 保密性保密性 有限信息流保密性有限信息流保密性 5 5、IPSecIPSec的主要组成部分的主要组成部分 (1)首部鉴别AH协议 AH协议提供数据源鉴别和数据完整性鉴别,这可以确保数据的完整性 和真实性(含用户和数据) (2)安全净荷封装ESP协议 ESP协议提供数据的保密性,还提供可选的鉴别服务,可抵抗重放攻击 (3)因特网密钥管理IKE协议 AH和ESP提供的安全保证依赖于它们使用的加密算法及其密钥。 IKE定义了通信双方间进行身份鉴

31、别、协商加密算法、生成或分配共 享的会话密钥以及创建安全关联SA的方法 1 1)IPSec IPSec 体系体系 体系文档是RFC2401,它定义了IPSec的基本结构,指定IP 包的机密性(加密) 和身份认证使用传输安全协议ESP 或AH实现 1) IPSec 1) IPSec 体系体系 体系文档是RFC2401,它定义了IPSec的基本结构,包括总体概念、安 全需求、安全定义,以及定义IPSec技术机制 2) ESP( Encapsulating security payload ,2) ESP( Encapsulating security payload ,封装安全载荷封装安全载荷)

32、) 协议文档是RFC2406 ,定义了载荷头( ESP 头) 格式和服务类型以 及包处理规则 3) AH (Authentication Header , 3) AH (Authentication Header , 认证报头认证报头) ) 协议文档RFC2402定义了AH头格式、服务类型及包处理规则 4) 4) 加密算法加密算法 协议文档是RFC2405 ,定义了DES - CBC作为ESP的加密算法以及如 何实现DES - CBC 算法和初始化矢量( IV)的生成 5) 5) 认证算法认证算法 协议文档是RFC2403 和RFC2404。 RFC2403定义了对ESP的认证算法为散列函数M

33、D5 或SHA的HMAC版本 RFC2404定义了默认情况下AH的认证算法是MD5或SHA的HMAC版本 6) IKE ( Internet key Exchange , 6) IKE ( Internet key Exchange ,因特网密钥交换因特网密钥交换) ) 协议文档是RFC2409 ,定义了IPSec通信双方如何动态建立共享安全 参数 (即建立安全联盟)和经认证过的密钥 IKE的功能包括:加密算法和密钥的协商、密钥生成、交换及管理。 IKE是ISAKMP(RFC2408)、Oakley(RFC2412)和SKEME(RFC2408)三个协 议揉合而成的一个协议。 ISAKMP只规

34、定了一个认证和密钥交换的框架,Oakley 给出了密钥交换 的步骤,而SKEME 则提供了一种通用的密钥交换技术。 IKE 结合三者的功能组成了一个密钥交换协议 7) IPSec DOI (Domain of Interpretation ,7) IPSec DOI (Domain of Interpretation ,解释域解释域) ) 协议文档是RFC2407,定义了IPSec DOI文档规范。 IKE 定义了安全参数如何协商,以及共享密钥如何建立,但没有定义 协商内容(参数) ,协商内容与IKE 协议本身分开实现。协商的内容 (参数) 被归于一个单独的文档内,名为IPSec DOI。 8

35、) 8) 策略策略 策略是两个实体间通信的规则,它决定采用什么协议、什么加密算 法和认证算法来通信。 策略不当可能造成不能正常工作。目前策略还没有统一标准 6、安全关联、安全关联SA(Security AssociationSecurity Association ) (1) SA (1) SA概述概述 IPSec系统需要具体完成二方面工作: 设置安全机制及参数 由IKE (因特网密钥交换)、策略和解释域(DOI)三组件完成 对IP包进行加密、认证和传输 由ESP、AH传输协议完成 (包括加密、认证算法)完成 SA是两个通信实体经过协商建立起来的一种单向的逻辑“连接”,规定用 来保护数据的IP

36、Sec协议类型、加密算法、认证方式、加密和认证密钥、密钥 的生存时间以及抗重播攻击的序列号等,为所承载的流量提供安全服务 SA可以手工建立也可以自动建立(采用IKE协议) SA SA是单向的是单向的 如果两台主机A、B正在利用ESP通信,那么主机A需要一个用来处 理外出数据包的SA(out),还需要一个处理进入数据包的SA(in)。 主机A的SA(out)和主机B的SA(in)共享相同的加密参数,主机B的 SA(out)和主机A的SA(in)共享相同的加密参数。 SA可以为AH或者ESP提供安全服务,但不能同时提供。如果一个流 量同时使用了AH 和ESP,那就必须为该流量建立两个(或更多个)S

37、A。 为了保证两台主机或安全网关之间典型的双向通信,至少需要建立 两个SA(每个方向一个) (2)(2)安全关联安全关联SASA的表示:三元组的表示:三元组 (安全参数索引,目的IP地址,安全协议标识符) 1) 1) 安全参数索引(安全参数索引(SPISPI) SPI是一个32位长的数据,发送方在每个数据包上加载一个SPI, 接受方使用这个值在安全关联数据库SAD中进行检索查询,提取所 需要的SA,以便处理接收的分组 2) 2) 目的目的IPIP地址地址 可以是终端主机的IP地址,也可以是前端设备(如防火墙或路 由器)的IP地址 3) 3) 安全协议标识符安全协议标识符 标明该SA是用于AH还

38、是ESP (3) SAD:安全关联数据库:安全关联数据库 SAD中的参数中的参数 1) AH信息 AH使用的鉴别算法、密钥、密钥生存期和相关参数 2) ESP2) ESP信息信息 ESP使用的加密算法、鉴别算法、密钥及其同步初始化向量、 密钥生存期和相关的参数 3) SA3) SA的生存期的生存期 一旦到期,必须弃用 参数安全参数索引(SPI) 4) IPSec4) IPSec协议方式协议方式 定义该SA参数是被隧道模式或传输模式使用,若为通培符,则隧道、 传输模式均可用 5) 5) 序列号序列号 序列号是一个32 位的字段,用来产生AH或ESP头中的序列号字段。SA 建立初始时,该字段的值设

39、为0。每次用SA 来保护一个数据包,序列号 的值便会递增1。通常在这个字段溢出之前,SA会重新进行协商。目标主 机利用这个字段来侦测“重播”攻击 6) 6) 序列号溢出序列号溢出 该字段在序列号溢出时加以设置,用于外出包处理。如溢出,则产生 一个审计事件,并禁止用SA 继续发送数据包 7) 7) 抗重播窗口:抗重播窗口: 一个32 位的计数器,判断进入的AH或ESP包是否是重播的数据包。 仅用于进入数据包,如接收方不选择抗重播服务(如手工设置SA 时), 则抗重播窗口未被使用 8) PMTU 8) PMTU 参数参数 在隧道模式下使用IPSec 时,必须维持正确的PMTU 信息,以便对 数据包

40、进行相应的分段。 (4)(4)安全策略数据库安全策略数据库SPD(Security Policy Database)SPD(Security Policy Database) SPD定义了对所有进出业务应该采取的安全策略,决定了为特定的数 据包提供特定的安全服务。 IP数据包的收发都以安全策略为依据。对出入的IP包的处理有三种可 能的选择: 1) 丢弃丢弃 不允许该IP包在此主机上存在,不允许通过此安全网关或是根本就 不能传送给上层应用程序的业务流 2) 绕过绕过IPSecIPSec 不需要进行IPSec安全保护处理,可直接通过 3) 3) 采用采用IPSecIPSec 需要进行IPSec安全

41、保护处理。对于这种业务流,SPD还必须指明所 需提供的安全服务,采用的协议类型以及使用何种算法等 以下参数可用来确定SPD入口(又称为选择符): n目的IP地址:可以是单地址或多地址 n源地址:单地址或多地址 nUserID: 操作系统中的用户标识。 n数据敏感级别: n传输层协议: nIPSec协议(AH, ESP, AH/ESP) n源/目的端口 n服务类型(TOS) 策略策略入口 SPD的结构的结构 若策略为采用IPSec, 则有指向SAD数据库 某条SA的指针 (5) (5) 报文与报文与SASA的关系的关系 1) 1) 对输出报文对输出报文 对于输出数据报文,IPSec 协议要先查询

42、SPD,确定为数据报文应 使用的安全策略。如果检索到的数据策略是应用IPSec,再查询SAD, 确定是否存在有效地SA 若存在有效的若存在有效的SASA,则取出相应的参数,将数据包封装(包括加密、 验证,添加IPSec头和IP头等),然后发送 若尚未建立若尚未建立SASA,则启动或触发IKE 协商,协商成功后按前一步骤处 理,不成功则应将数据包丢弃,并记录出错信息 存在存在SASA但无效但无效,将此信息向IKE 通告,请求协商新的SA,协商成功 后按1)中的步骤处理,不成功则应将数据包丢弃,并记录出错信息 2) 对输入报文对输入报文 IPSec协议先查询SAD。如得到有效的SA,则对数据包 进

43、行解封(还原) 再查询SPD,验证为该数据包提供的安全保护是否与策 略配置的相符。 如相符,则将还原后的数据包交给TCP 层或转发。 如不相符,或要求应用IPSec 但未建立SA,或SA无效, 则将数据包丢弃,并记录出错信息 SA_IDsourcedestprotocolspiSA记录 0AH11MD5,K1, 0- 0AH13DES,K3, A() B() A的的 SADB IDsourcedestprotocolportActionpolicy 02.2.2

44、.2TCP80IPSEC_PASS- 0TCP25IPSEC-USEAH A的的SPD 7、传输和隧道模式、传输和隧道模式 (1) 传输模式下 IPSec仅对IP层以上的数据(TCP/UDP数据)进行加密 和鉴别。传输模式通常用于两个主机之间的端对端通信 (2)隧道模式下 将原IP包封装在一个新的包中,原IP包将作为新包的有 效净荷,并且添加了新的适用于网关间的IP首部。 在传输过程中,由于原目的IP地址被封装,中间的路由 器只检查新的IP首部,所以隧道方式可用来对抗通信量 分析。隧道模式主要用于安全网关之间,可以在公共网 上构建虚拟专用网(VPN) 8、鉴别鉴别

45、AH协议协议 AH首部格式首部格式 下一个首部(下一个首部(8bit8bit) 标识该AH首部后下一有效载荷的类型 安全参数索引(安全参数索引(32 bit32 bit) 标识用于此数据项的SA 序列号(序列号(32 bit32 bit) 一个单调递增的记数值,用于防止重放攻击 鉴别数据(可变长)鉴别数据(可变长) 长度可变,但必须为32 bit的整数倍,包含了这个包的完整性检查值 AHAH的两种模式的两种模式 (1)传输模式 鉴别覆盖了整个分组(除可变字段) (2)隧道模式 AH被插在原IP首部和新IP首部之间,目的IP地址 被掩藏起来,提供了通信量上的安全性。 Ext. headers (

46、if present) Ext. headers (if present) AH-传输模式传输模式 AH-隧道模式隧道模式 9、ESP协议协议 ESP首部格式首部格式 ESP Header ESP Trailer ESP Auth. Data Payload Data ESP-传输模式传输模式 Ext. headers (if present) Ext. hrs ESP-隧道模式隧道模式 10、IKE (1)IPSec的的5个阶段个阶段 1)过程启动 2)IKE的第一阶段 3)IKE的第二阶段 4)数据传送 5)隧道终止 (2)IKE的第一阶段的第一阶段 在IKE的第一阶段中,在IPSec的两

47、个端点间协 商IKE的SA,以保护IKE交换的安全 用Diffie-Hellman算法进行密钥交换 (3 3) IKE的第二阶段的第二阶段 当IKE SA建立后,进入IKE的第二阶段,协商 和建立IPSec的SA 7.4 传输层安全协议 1、传输层安全协议、传输层安全协议 (1) SSL (2) TLS:基于SSL协议 RFC 2246: The TLS Protocol Version 1.0 RFC 2818: HTTP Over TLS 2、SSL协议的起源协议的起源 由于Web上有时要传输重要或敏感的数据,为了提供Web应用的 安全性,1994年Netscape公司提出了安全通信协议S

48、SL(SecureSocket Layer)。 把HTTP和SSL相结合,就可以实现安全通信。 SSL作为目前保护Web安全和基于HTTP的电子商务交易安全的事 实上的标准,被世界知名厂家广泛支持 3 3、SSLSSL提供的安全服务提供的安全服务 为客户-服务器通讯提供安全性 (1)保密性 SSL客户机和服务器之间通过密码算法和密钥的协 商,建立起一个安全通道。 (2)完整性 SSL利用密码算法和Hash函数,通过对传输信息特 征值的提取来保证信息的完整性(消息摘要) (3)认证性 利用证书技术和可信的第三方CA,可以让客户机 和服务器相互识别对方的身份 4、SSL协议的体系结构协议的体系结构

49、 SSL是一个两层协议 (1)记录层协议 (2)握手层协议:3个 握握 手手 层层 协协 议议 (1) 记录协议记录协议 提供分块、压缩、加密、完整性服务 (2) 握手协议握手协议 SSL握手协议是用来在客户端和服务器端传输应用数据之前建立安 全通信机制。 首次通信时,双方通过握手协议协商密钥加密算法、数据加密算法 和报文摘要算法;然后互相验证对方身份,最后使用协商好的密钥交 换算法产生一个只有双方知道的秘密信息,客户端和服务器各自根据 这个秘密信息确定数据加密算法的参数(一般是密钥) (3) 密钥更改协议密钥更改协议 用于会话间的密钥修改 (4) 告警协议告警协议 用于传输警告信息 5、记录

50、协议、记录协议 SSL记录协议提供数据加密以及数据完整性服务 MAC 记录报文的结构记录报文的结构 记录头可以是2个或3个字节的编码 记录头包含的信息:记录头包含的信息: 记录头的长度 记录数据的长度 记录数据中是否有填充数据(使用块加密时填充的数据) 6 6、SSLSSL握手协议握手协议 (1) 作用作用 SSL握手协议旨在创建和保持通信双方进行安全通 信所需的安全参数及状态信息。 它使得服务器和客户机能够进行双向的身份认证, 并协商加密算法、MAC算法以及SSL记录中所用的加 密密钥 (2)(2)过程过程 分为四个阶段 1) 1) 第一阶段:建立安全能力第一阶段:建立安全能力 协商压缩算法

51、、报文摘要算法、加密算法等; SSL版本、会话标识符 2) 2) 第二阶段:服务器鉴别和密钥交换第二阶段:服务器鉴别和密钥交换 服务器向客户发送其数字证书,利用该证书对服务器进行鉴别 3) 3) 第三阶段:客户鉴别和密钥交换第三阶段:客户鉴别和密钥交换( (可选可选) ) 客户向服务器发送其数字证书,利用该证书对客户进行鉴别。 4) 4) 第四阶段:握手结束阶段第四阶段:握手结束阶段 前面各阶段完成 客户端服务端 第 一 阶 段 第 二 阶 段 Client_hello Server_hello Server_certificate Server_key_exchange Certificat

52、e_request Server_hello_done 客户端服务端 第 三 阶 段 第 四 阶 段 Client_certificate Client_key_exchange Certificate_Verify Change_cipher_spec Finished Change_cipher_spec Finished 握手协议定义的消息类型(1) 消息类型说明参数 hello_request握手请求,服务器可在任何时候向客户端发送该消息。若客户 端正在进行握手过程就可忽略该消息。否则客户端发送 cleint_hello消息,启动握手过程 无 client_hello客户启动握手请求,

53、该消息时当客户第一次连接服务器时向服 务器发送的第一条消息。该消息中包括了客户端支持的各 种算法。若服务器端不能支持,则本次会话可能失败。 版本、随机数、会话ID、 密文族、压缩方法 server_hello 其结构与client_hello消息,该消息是服务器对客户端 client_hello消息的恢复。 版本、随机数、会话ID、 密文族、压缩方法 server_certificate服务器提供的证书。如果客户要求对服务器进行认证,则服务 器在发送server_hello消息后,向客户端发送该消息。证书 的类型一般是X.509v3。 X509v3证书链 server_key_exch ang

54、e 服务器密钥交换。当服务器不使用证书,或其证书中仅提供签 名而不提供密钥时,需要使用本消息来交换密钥。 参数、签名 握手协议定义的消息类型(2) 消息类型说明参数 certificate_request用于服务器向客户端要求一个客户证书。类型、授权 server_hello_done 该消息表明服务器端的握手请求报文已经发送完毕,正在等待客户 端的响应。客户端在收到该消息时,将检查服务器提供的证书 及其他参数是否是有效、可以接受的。 无 client_certificate客户端对服务器certificate_request消息的响应,只有在服务器端要 求客户证书的时候使用。一般该消息是客户

55、端收到 server_hello_done消息后所发送的第一条消息。若客户端没有 合适的证书,则向服务器端发送no_certificate的告警消息(无 证书可能导致握手失败) X509v3证 书链 client_key_exchange客户密钥交换。当客户不使用证书,或其证书中仅提供签名而不提 供密钥时,需要使用本消息来交换密钥。 参数、签名 certificate_verify该消息用于向服务器提供对客户证书的验证。签名 finished 该消息在“加密规约修改”(Change Cipher Spec)消息之后发送, 以证实握手过程已经成功完成。本消息发送后,发送方开始使 用协商的新参数来

56、执行操作。该消息需要在两个方向上传送。 散列值 消息名消息名方向方向内容内容 不需要新密钥不需要新密钥 CLIENTHELLOCSchallenge, session_id, cipher_specs SERVERHELLOSCconnection-id, session_id_hit CLIENTFINISHCSEclient_write_keyconnection-id SERVER-VERIFYSCEserver_write_keychallenge SERVERFINISHSCEserver_write_keysession_id 其他流程其他流程 需要新密钥需要新密钥 CLIENTH

57、ELLOCSchallenge, cipher_specs SERVERHELLOSCconnection-id,server_certificate,cipher_specs CLIENTMASTERKEYCSEserver_public_keymaster_key CLIENTFINISHCSEclient_write_keyconnection-id SERVERVERIFYSCEserver_write_keychallenge SERVERFINISHSCEserver_write_keynew_session_id 需要客户认证需要客户认证 CLIENTHELLOCSchallen

58、ge, session_id, cipher_specs SERVERHELLOSCconnection-id, session_id_hit CLIENTFINISHCSEclient_write_keyconnection-id SERVER-VERIFYSCEserver_write_keychallenge REQUESTCERTIFICATESCEserver_write_keyauth_type,challenge CLIENTCERTIFICATECSEclient_write_keycert_type,client_cert,response_data SERVERFINISH

59、SCEserver_write_keysession_id 7.5 代理协议-SOCKs 1 1、代理协议、代理协议 根据代理服务器的工作层次,可分为应用层代理、传输 层代理和SOCKS代理。 应用层代理工作在TCP/ IP模型的应用层之上,对不同 的代理提供不同的处理方法,只能用于支持应用层协议的 代理(如HTTP、FTP) SOCKS代理工作在TCP/IP模型的应用层和传输层之间 2 2、SOCKsSOCKs代理代理 1)Socks协议是基于客户机/服务器结构的代理协议 2)在客户/服务器模型中,存在客户Client和服务器 Server两个实体。采用SOCKs代理技术,则SOCKs代理服

60、务 器对客户Client而言,其是服务器,对服务器Server而言, 其是客户 3)它处理的对象主要是传输层上的数据包,是一种兼具 传统应用代理特点,同时又具有良好透明性的通用代理技术 4)连接请求连接请求、代理链路的建立代理链路的建立和应用数据中转应用数据中转(SOCKv4), 鉴别功能鉴别功能(SOCKv5) 3、SOCKs工作过程工作过程 (1) 连接请求、用户鉴别连接请求、用户鉴别(Sockv5) 1)客户和代理间建立)客户和代理间建立TCP连接连接 2)协商认证模式(客户向代理发送选择报文)协商认证模式(客户向代理发送选择报文) 3)根据)根据2)进行身份验证)进行身份验证 若为若为

温馨提示

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

最新文档

评论

0/150

提交评论