IP接入网安全机制中的一个关键技术
发布时间:2006-10-14 8:03:50   收集提供:gaoqian
南京邮电学院 王桂玲 李正超 范忠礼


一、引言

  随着Internet的发展,现有电信网越来越多地用于IP接入,术语“IP接入网”的出现方便了人们研究相关问题。IP接入网是指在IP用户和IP业务提供者(ISP)之间的网络实体,它为用户提供所需的接入到IP业务的能力。IP接入网参考模型如图1所示。

  IP接入方式可采用直接接入方式、PPP隧道方式、IP隧道方式、路由方式以及MPLS(多协议标签交换)方式。鉴于目前我国电信163/169网的现状,其中IP隧道方式可采用把现有L2TP技术与IPSec技术结合的方式,具有明显的平滑过渡和安全性方面的优势。IPSec是由IETF IP安全性工作组定义的协议集,它用于确保网络层之间的安全通信,该协议草案分为七个部分,它们分别描述了体系结构、封装安全负载协议(ESP)、认证头协议(AH)、加密算法、认证算法、解释域(DOI)以及密钥管理。同时,IETF还制定了IKE(Internet Key Exchange),定义了通信实体之间身份认证、协商加密算法、生成共享会话密钥的方法。

  安全联盟(Security Association)则是在IP的加密和认证机制中出现的核心概念:AH和ESP都必须通过安全联盟来实现,IKE的功能其实即是建立安全联盟。安全联盟的实现是IP接入网安全机制的关键技术。

二、基本概念

  一个安全联盟是一个发送方与接收方之间的单向关系,从而对其承载的流量提供安全服务。若需要一个对等关系,即双向安全交换,就需要建立两个安全联盟。一个单一的安全联盟可以向认证头AH或封装安全负荷ESP提供安全服务,但不能同时提供给两者。安全联盟仅由三个参数标识:安全参数指数、IP目的地址和安全协议标识符。

  1.安全参数指数SPI:是分配给安全联盟的比特串,仅在本地可用。安全参数指数在认证头或封装安全负荷头中出现,使接收系统选择安全联盟并在其下处理一个收到的报文。

  2.IP目的地址:只有单向传播地址可用。它是安全联盟的终端地址,该终端可以是终端用户系统或者诸如防火墙、路由器这样的网络系统。

  3.安全协议标识符SPID:指示安全联盟用于认证头还是封装安全负荷。

在任何IP包中,安全联盟是由Ipv4中的目的地址或Ipv6头和内部扩展头(AH或ESP)中的SPI所唯一标识的。

三、两种模式的安全联盟

  安全联盟有两种类型:传输模式的安全联盟和隧道模式的安全联盟。

  1.传输模式的安全联盟应用在两台主机之间。在IPv4中,传输模式的安全协议头插入到IP报头之后、高层传输协议(如TCP、UDP)之前。在IPv6中,该模式的安全协议头出现在IP头及IP扩展头之后、高层传输协议之前。目的地址选项可以放在安全协议头之前或之后。对安全封装负载报头(ESP)来说,传输模式的安全联盟只对那些高层协议提供安全服务,而不对在ESP头之前的IP头及其扩展头进行安全处理。对认证报头(AH)来说,安全处理还可扩展到IP头、IP扩展头,比如在IPv4头、IPv6的Hop-by-Hop扩展头或目的地址扩展头中的被选部分。

  2.隧道模式的安全联盟其实质是一个应用在IP隧道之上的安全连接。若构成一个安全联盟的两个终端中至少有一个是安全网关(而不再是主机),则这个安全联盟就必须采用隧道模式。这是因为,在传输模式下,安全网关是作为一个主机来工作的,并不进行数据流的转接,而在隧道模式下,IPSec报文要进行分段和重组操作,并且可能要再经过多个安全网关才能到达安全网关后面的目的主机,故在这种情况下最好采用隧道模式。

  在隧道模式下,“外部”IP头指明进行IPSec处理的目的地址,“内部”IP头指明最终的目的地址。安全协议头出现在外部IP头和内部IP头之间。同在传输模式下类似,对于带有AH的帧来说,提供对内部IP头、高层传输协议以及部分外部IP头的安全保护,对于带有ESP的帧来说,只提供对内部IP头及高层传输协议的安全保护。在隧道模式下,安全网关后面的主机无需具有IPSec处理功能而同样进行安全通信。

  综上,我们可以概括出:主机要求能够支持传输及隧道两种模式;安全网关则只需支持隧道模式。工作在传输模式下的安全网关必定仅仅是做为一台主机工作的(比如,作网络管理用时)。

四、安全联盟组合

  单独的安全联盟有两个不足:(1)一个单独的安全联盟不能提供对AH和ESP两者共同的支持。(2)一种特殊的数据流既需要在两个主机之间也需要在两个安全网关之间提供IPSec 服务。这是单独的安全联盟无法企及的。

  安全联盟组合的概念便是为解决这两个不足而出现的,“安全联盟束”形象地定义了为提供一系列IPSec服务所应用的安全联盟系列。安全联盟组合成“束”有两种方式:传输邻接方式和循环嵌套方式。前者不调用隧道实现多个协议,后者调用隧道实现多层协议,允许多层嵌套。这两种方式也可以联合起来工作。

  为改善单独安全联盟的第一个不足之处,也就是说,实现既带有加密和又带有认证的IP报文,我们有三种方式:带有认证选项的ESP;传输邻接;传输——隧道束。在第一种方式下,ESP被应用在受保护数据上,然后再加上认证字段。第二种方式即传输邻接方式使用了SA束技术,内部是ESP SA,外部是AH SA。在这种方式下,ESP 不带有认证选项,内部SA在传输模式下生成带有IP头或IP扩展头的加密报文,然后,再在传输模式下应用AH。第二种方式的认证工作包括ESP以及初始IP头(以及IP扩展头)的不可变字段。与第一种方式相比,这种方式下的认证覆盖了更多的字段,包括源、目的地址;这种方式的不足之处是由于SA束的额外开销而导致效率下降。在第三种方式即传输—隧道束方式下,内部SA应用传输模式的AH,外部SA应用隧道模式的ESP。在这种方式下,认证工作包括IP负载和IP头(或IP扩展头)的不可变字段;加密工作则包括整个被认证的内部报文。加密后,多出了一个新的外部IP头(或IP扩展头)。

  为解决单独安全联盟的第二个不足,我们有安全联盟的四种基本组合方式。

  注:带有号者支持IPSec机制

  方式1包括四种情况:(1)传输模式下的AH。(2)传输模式下的ESP。(3)传输模式下外部ESP SA和内部AH SA。(4)外部隧道模式下的AH或ESP,内部是(1)、(2)、(3)中的任何一种。

  方式2只在安全网关之间提供安全保护,主机不应用IPSec机制。此种方式下只需要网关之间一个单一SA隧道,该隧道支持AH、ESP以及带有认证头的ESP。此方式无需嵌套机制,因为IPSec服务应用在整个内部报文上。

  方式3在方式二的基础上加上端到端的安全性。

  方式4支持远程终端通过因特网接入到防火墙后面的服务器或工作站上。根据上文分析,可知这种方式只能采用隧道模式。

五、安全联盟数据库

  安全策略数据库(SPD)指示从一台主机、一个安全网关输入、输出的IP数据流的部署。安全联盟数据库(SAD)则包括与每一个安全联盟相关的参数,另外,它还定义了安全联盟选择器的概念,包括一套IP及高层协议字段值,供SPD用来把数据流映射到一个安全联盟或安全联盟束中。SAD中的安全联盟参数包括:

  1.序数计数器:产生一个32位的数值以确定AH或ESP头部的序数域。

  2.序数计数器溢出:指示序数计数器溢出的符号。SCO=1时,引发预置事件,防止在该安全联盟下继续发送数据包。

  3.抗重发窗口:用于确定一个内置的AH或ESP包是否重发以判断是否受到攻击。

  4.AH信息:指示认证算法、密钥、密钥生命期等与AH相关的参数。

  5.ESP信息:指示加密认证算法、密钥、初始值、密钥生命期等与ESP相关参数。

  6.安全联盟生命期:安全联盟被新安全联盟替代或终止的时间间隔或字节数。并指示发生哪种动作。

  7.IPsec协议方式:隧道、传输还是混合方式(通配符)。

  8.路径最大发送单位MTU:完整发送的数据包最大传送单位长度和老化变量。

  IP数据流经由安全策略数据库SPD与特定的安全联盟相关或不与安全联盟相关。SPD最简单的形式由一些入口组成,每个入口定义一个IP数据流子集并为该数据流指定一个安全联盟。在更复杂的情况下,多个入口可以与一个安全联盟相关或多个安全联盟与一个入口相关。每个SPD入口由SAD中一系列称为选择器的IP及其上层协议域的数值确定,这些选择器被用来过滤待处理的数据流以便于特定的安全联盟处理。以输出处理为例,安全处理大致遵循以下程序:

  1.比较包相应域与SPD的数值找到匹配的SPD入口,该入口指向零个或多个安全联盟;

  2.为该包确定安全联盟和相应的SPI;

  3.进行相应的IPsec处理AH或ESP。

六、结束语

  安全联盟是IPSec认证、加密机制中的核心概念,它贯穿了整个安全处理的方方面面。

  安全联盟由面向接收者的SPI唯一标识的特性使安全机制更适合于IP多播业务,对电话会议、分布模拟等业务的发展是一个有利的推进。另外,安全联盟组选择的多样性和灵活性有利于推进IP接入网概念中各ISP间的竞争。

  同时,我们应该看到,安全机制的应用增加了系统的协议处理开销。包括加密、认证占用的时间以及安全联盟数据库占用的字节。对这些问题的解决,有待于算法的优化配置、硬件实现部分算法以及数据库的优化配置。


----《通信世界》
 
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50