一、ESP协议结构
  ESP(Encapsulating Security Payload)为IP数据包提供完整性检查、认证和加密,可以看作是"超级 AH", 因为它提供机密性并可防止篡改。ESP服务依据建立的安全关联(SA)是可选的。然而,也有一些限制:
  ·完整性检查和认证一起进行。
  ·仅当与完整性检查和认证一起时,"重播(Replay)"保护才是可选的。
  ·"重播"保护只能由接收方选择。
  ESP的加密服务是可选的,但如果启用加密,则也就同时选择了完整性检查和认证。因为如果仅使用加密,入侵者就可能伪造包以发动密码分析攻击。
  ESP可以单独使用,也可以和AH结合使用。一般ESP不对整个数据包加密,而是只加密IP包的有效载荷部分,不包括IP头。但在端对端的隧道通信中,ESP需要对整个数据包加密。
  如图三所示,ESP报头插在IP报头之后,TCP或UDP等传输层协议报头之前。ESP由IP协议号"50"标识。
  图3 ESP报头、报尾和认证报尾
  ESP报头字段包括:
  ·Security Parameters Index (SPI,安全参数索引):为数据包识别安全关联。
  ·Sequence Number(序列号):从1开始的32位单增序列号,不允许重复,唯一地标识了每一个发送数据包,为安全关联提供反重播保护。接收端校验序列号为该字段值的数据包是否已经被接收过,若是,则拒收该数据包。 ESP报尾字段包括:
  ·Padding(扩展位):0-255个字节。DH算法要求数据长度(以位为单位)模512为448,若应用数据长度不足,则用扩展位填充。
  ·Padding Length(扩展位长度):接收端根据该字段长度去除数据中扩展位。
  ·Next Header(下一个报头):识别下一个使用IP协议号的报头,如TCP或UDP。
  ESP认证报尾字段:
  ·Authentication Data(AD,认证数据): 包含完整性检查和。完整性检查部分包括ESP报头、有效载荷(应用程序数据)和ESP报尾。见图四。
  图4 ESP的加密部分和完整性检查部分
  如上图所示,ESP报头的位置在IP报头之后,TCP,UDP,或者ICMP等传输层协议报头之前。如果已经有其他IPSec协议使用,则ESP报头应插在其他任何IPSec协议报头之前。ESP认证报尾的完整性检查部分包括ESP报头、传输层协议报头,应用数据和ESP报尾,但不包括IP报头,因此ESP不能保证IP报头不被篡改。ESP加密部分包括上层传输协议信息、数据和ESP报尾。
二、ESP隧道模式和AH隧道模式
  以上介绍的是传输模式下的AH协议和ESP协议,ESP隧道模式和AH隧道模式与传输模式略有不同。
  在隧道模式下,整个原数据包被当作有效载荷封装了起来,外面附上新的IP报头。其中"内部"IP报头(原IP报头)指定最终的信源和信宿地址,而"外部"IP报头(新IP报头)中包含的常常是做中间处理的安全网关地址。
  与传输模式不同,在隧道模式中,原IP地址被当作有效载荷的一部分受到IPSec的安全保护,另外,通过对数据加密,还可以将数据包目的地址隐藏起来,这样更有助于保护端对端隧道通信中数据的安全性。
  ESP隧道模式中签名部分(完整性检查和认证部分)和加密部分分别如图所示。ESP的签名不包括新IP头。
  图5 ESP隧道模式
  下图标示出了AH隧道模式中的签名部分。AH隧道模式为整个数据包提供完整性检查和认证,认证功能优于ESP。但在隧道技术中,AH协议很少单独实现,通常与ESP协议组合使用。
  图6 AH隧道模式
编辑本段
IPv6下的攻击防御

  IPv6提供了更广阔的地址空间,但就安全性而言,IPv6并不比IPv4安全,甚至是某些攻击手段的天然土壤,比如DDos。
IPv6下的攻击方式
  IPsec是IPv6引以为傲的安全策略,下面我们说下这种策略带来的问题。最直接的,IPsec是端到端的加密,中间传输过程是透明的,如果窃听者没有对应密钥,那么就无法解开数据内容;所以像路由防火墙等基于内容过滤的安全策略将无法存在;而如果通过某种方式,使得路由和防火墙能够解开数据包,那么IPsec的安全性也就不存在了。
  更广阔的地址空间导致更容易伪造源地址,也就更难以追踪。
  利用IPv6的自定义扩展头,自定义路由路径,就可以定义复杂的路由路径,比如环路径等,进一步增加追踪难度并消耗更多路由资源。自定义扩展头,也导致更复杂的安全过滤。还可以使用极大的扩展头进行称为畸形炸弹的DDos攻击。
IPv6下的防御策略
  目前主要防御思路有基于统计特征的防御、基于Netfilter的防御等。

发表评论

电子邮件地址不会被公开。 必填项已用*标注