小言_互联网的博客

网络安全技术-IPSec

294人阅读  评论(0)

IPSec概述

概述

  1. 是一种IETF设计的端到端的确保ip通信安全的机制。
  2. ipsec不是单独的协议,而是一组协议,ipsec协议的定义文件包括了12个rfc文件几十个Internet草案,已经成为工业标准的网络安全协议。
  3. ipse在ipv6中是必须支持,ipv4可选
  4. IETF中的ip security protocol working group工作组负责标准,目标包括:
  • 该体制可适用于ipv4 ipv6
  • 可谓运行ip顶部的任何一种协议提供保护
  • 与加密算法无关(改变加密算法不影响其他部分)
  • 可实现多种安全策略,同时避免给不适用该体制的系统造成影响

ipsec优点

  1. 防火墙路由器执行了ipsec,就可以为周边通信提供强有力的安全保障
  2. ipsec传输之下,对于应用程序来说是透明
  3. ipsec对用户也是透明的,因此不必对用户进行安全机制的培训

ipsec协议族相关的rfc

ipsec功能

  1. 保证数据来源可靠(认证)
  2. 保证数据完整(完整性)
  3. 保证数据机密(机密性)

ipsec提供的安全服务

ipsec体系结构图

ipsec的实施

  • 在主机的实施,作为网络层的一部分来实现

  • 堆栈中的块,作为楔子插入网络层与数据链路层之间,bump-in-the-stack(bits)

ipsec的实施

在路由器中的实施:

  • 等同于os的集成方案,集成在路由器的软件当中
  • 线缆中的块:等同于bits,ipsec在一个设备中实施,并将该设备接入路由器物理接口,不运行路由算法,只保障数据安全。

部署位置

主机(端设备)之间:
优点

  • 保障端到端安全性
  • 能够实现ipsec安全模式
  • 能够针对单个数据流提供安全保障
  • 在建立ipsec过程中,能够记录用户身份验证的相关数据和情况

安全网关(实现ipsec的中间系统,例如:路由器 防火墙等)之间

优点

  • 对两个子网(私有网络)间通过公共网络传输的数据提供安全保护
  • 能通过身份验证控制授权用户从外部进入私网,而将非授权用户挡在私网外。

核心内容

两种操作模式

  • 传输模式
  • 隧道模式

两个数据库

  • 安全策略数据库spd
  • 安全关联数据库sad

两个通信协议

  • ah 认证头
  • esp 载荷安全封装

三个密钥管理协议

  • 安全关联与密钥管理协议 isakmp
  • 因特网密钥交换管理协议
  • oakley:ike密钥交换协议

ipsec运行模式
由于ah esp都支持这两种模式,因此下述模式可以有四种组合

  1. 传输模式
  2. 隧道模式

传输模式

作用:保护ip包的载荷,通常,只用于两台主机之间的安全通信

ip隧道模式
作用:保护整个ip包,通常,只要有一方是安全网关或者路由器,就必须使用隧道模式

安全关联(SA)和安全策略(SP)

安全关联(sa)
发送方接收方之间的单向关系,用于通信双方之间业务流提供安全服务。
注: 安全关联是单向的,若需要双向则需要建立两个安全关联,且ah和esp不能在一个sa上同时实现,若需要同时提供ah和esp则需建立多个sa

sa内容
sa的内容主要包含一组针对特定目的主机或安全网关的一组参数:

  1. 安全参数索引 spi
  2. ip目的地址
  3. 安全协议标识 ah 或esp

sa类型

  1. 传输模式sa:两个主机的安全关联。
  • 在esp协议中,仅保护ip以上的协议数据安全,对ip头不保证。
  • 在ah中,不仅保护ip以上协议数据安全,对ip不可变字段的安全进行保证。
  1. 隧道模式sa
  • 适用于ip隧道
  • 安全网关之间、主机与安全网关之间的sa为隧道模式。
  • 主机之间也可以建立隧道模式sa。
  • 有两个ip头:内部ip头(ipsec设备的ip头)、外部ip头
  • 安全协议在外部ip头和内部ip头之间
  • 若在ah中使用,则整个ip包和外部ip头部分会受到保护
  • 若用esp使用,仅保护隧道数据包,不保护外部ip头


ipsec标准对两类sa的实现要求

  1. 对于主机:必须支持隧道模式和传输模式
  2. 对与安全网关:只要求支持隧道模式,若安全网关支持传输模式的sa,则该网关只能当作主机来使用(如网络管理主机)

sa的获得与管理

  1. 如何获得:通过向ike这样的密钥管理协议在通信对等方之间协商而生成
  2. 如何管理:当一个sa协商完成后,两个对等方都在器安全关联数据库(sad)中存储该sa参数,当过期时要么用新的sa替换,要么该sa从sad中删除

sa与sad的关系

安全参数索引

地址信息

协议选择


序列号计数器


序列号溢出标志

抗重放窗口

ah认证密钥

esp认证密钥


esp加密算法

sa操作模式

路径最大传输单元


sa生存期


目的ip地址
源ip地址

传输层协议标识

系统名

用户标识

端口号

操作标识

指向sa的指针

sa sad sp spd在数据处理中的使用

问题
如果一个通信实体需要同时和多个其他通信实体建立不同安全关
联,如何处理呢?
解决方法:
• 安全策略数据库:SPD:Security Policy Database

安全策略安全策略数据库
• 安全策略( SP ):
– 指定用于到达源自特定主机/ / 网络数据流策略
• 安全策略数据库( SPD ):
– 包含策略条目的有序列表
• 通过使用一个或多个 选择符 来确定每个条目

AH协议概述

概述
为ip包提供以下安全功能

  1. 完整性
  2. 数据起源认证
  3. 抗重放攻击

利用mac实现认证,双方共享一个密钥
认证算法由安全关联(sa)指定

鉴别模式

  1. 传输模式:不改变ip地址,插入一个ah
  2. 隧道模式:生成一个新ip头,把ah和原来的整个ip包放到载荷数据中

认证头ah格式

ah头说明

  1. next header:指出ah后下一载荷的类型
  2. spi:与目的ip地址和认证头ah唯一标识了该数据包的安全关联(sa)
  3. squence number:序列号字段
  • 创建一个新的SA 时,发送者会将序列号计数器初始化为0
  • 每当在这一SA 上发送一个数据包,序列号计数器的值就加1 并将序列号字段设置成计数器的 值, 用于 抵抗重放攻击
  • 当达到其最大值2 ^32 -1 时,就应建立一个新的SA
  • AH 规范强制发送者必须发送 SN 给接收者,而接收者可以选择不使用抗重放特性,这时它不理会该 SN
  • 若接收者启用抗重放特性,则使用 滑动接收窗口机制 检测重放包
  1. authentication data:包含数据报的认证数据,称为完整性校验值(icv),icv由sa指定的算法生成,但是为了保证互操作性,ah强制所有ipsec必须实现两个mac:hmac-md5 hmac-sha-1

序列号和滑动窗口技术

序列号
作用:让ah可以抵抗重放攻击,若接收者启用抗重放特性,则需使用滑动窗口机制检测重放包

窗口
固定或者可变长度的一个数据缓冲区

滑动窗口
随着处理不断向前移动的窗口

滑动接收窗口
消息接收方的滑动窗口

工作过程




AH协议处理过程

ah位置

  • 传输模式:不改变ip地址,插入一个ah

  • 隧道模式:生成一个新的ip头,把ah和原来的ip包放在新ip包载荷中

滑动窗口抵御重放攻击

工作过程概述
当接收到的数据包落在滑动窗口最右侧时候,通过该包序列号与窗口最高序列差值确定是否可以被接收

处理流程

  1. 判断接收的数据包序号是否小于最后一个收到的数据包序号:
    若是:计算其与最大包序号之间的差值是否大于窗口大小,若大于,则说明该包过期,丢弃
  2. 上述检查无误,再检查数据是否有被接收过的信息判断是否是重放,若是,则丢弃
  3. 上述检查无误,将该报序列号更新为接收到的包的最大序列号

小结
接收到的数据包不被丢弃的条件

  1. 序列号必须是新的,即在滑动窗口未出现过
  2. 必须落在窗口内部或者窗口右侧
  3. 能通过鉴别检查

接收到的数据包落在窗口内且通过检查,胸口就会向前走,使得序号成为窗口的右边界。

ip包头中确定字段和不确定字段

AH 认证算法
• AH的 的 完整性校验值 (ICV) 计算方法由SA 确定
• 对于 点到点通信 ,可以采用基于加密算法(如DES )的带密
钥消息认证函数,或单向函数(如MD5 ,SHA-1 )
• 对于 多播通信 ,可以采用单向函数和非对称加密算法
• 必须 实现的认证算法包括:
– HMAC with MD5
– HMAC with SHA-1

完整性校验值 完整性校验值(ICV) 的计算
作用 ICV 用于验证 IP 包的完整性

计算采用通信双方协商后放在sa中定义的密钥,再采用mac生成,且长度依赖于算法
– HMAC- - MD5: 128 位
– HMAC- - SHA- - 1:160 位
:用HMAC 求MAC 时算法的 输入包括三个部分:

  1. IP 数据包头:只包括在传输期间 不变的字段 或 接受方可预测的字段 ,其余不定的字段全置为0
  2. AH :除 “鉴别数据”字段外其他的 所有字段 ,“鉴别数据”字段被置为0
  3. IP 数据包中的 所有的上层协议数据

ah处理过程
外出处理过程

进来数据包处理过程

ah 传输模式和隧道模式比较

ipsec的配置与应用

有关术语

  1. 身份验证 :确定计算机的身份是否合法的过程,win2000 ipsec 支持三种身份验证 :keberos、证书、预共享密钥
  2. 加密:使准备的两个重点之间传输的数据难以辨认的过程
  3. 筛选 器 :对 Internet 协议 (IP) 地址和协议的描述,可触发 IPSec 安全关联的建立。
  4. 筛选器列表 :筛选器的集合。
  5. 筛选器操作 :筛选器使用的安全机制
  6. Internet 协议安全策略 :规则集合,描述计算机之间的通信是如何得到保护的。
  7. 规则 :筛选器列表和筛选器操作之间的链接。当通信与筛选器列表匹配时,可触发相应的筛选器操作。IPSec 策略可包含多个规则。
  8. 安全关联:终结点为建立安全会话而协商的身份验证与加密方法的集合。

Window 平台上IPSec配置与测试步骤

  1. 配置ipsec安全策略
  2. 配置ipsec安全规则
  3. 配置IPSec筛选器
  4. 配置筛选器操作
  5. 指派策略
  6. 测试与管理

ipsec体系结构中的关键技术

  1. 两种操作模式
  • 传输模式
  • 隧道模式
  1. 两个数据库
  • 安全策略 数据库( SPD )
  • 安全关联 数据库( SAD )
  1. 两个通信协议:
  • AH :认证头( Authentication Head)
  • ESP: 载荷安全封装( Encapsulating Security Payload )
  1. 两个算法:
  • 加密算法
  • 认证算法
  1. 三个密钥管理协议
  • 安全关联与密钥管理协议 ( Internet Security Association and Key Management Protocol )
  • 因特网密钥交换管理协议 ( Internet Key Exchange )
  • Oakley :IKE密钥交换协议

ipsec中的安全服务与应用

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

  1. 定义了两个协议 AH 和 ESP , 通过 SA 把两 部分连接起来
  2. IPSec 可以用来解决许多IP 层的安全问题
  3. 已经发展成为Internet 标准
  4. IPSec是非常复杂的一个安全协议,对其安全性的讨论甚多

转载:https://blog.csdn.net/shark_chili3007/article/details/105707942
查看评论
* 以上用户言论只代表其个人观点,不代表本网站的观点或立场