[关闭]
@gzm1997 2017-11-12T13:42:16.000000Z 字数 1357 阅读 940

web安全第四次作业整理

web作业


ipsec

ip层属于网络层

网际网路安全协定(英语:Internet Protocol Security,缩写为IPsec),是一个协定组合,透过对IP协议的分组进行加密和认证来保护IP协议的网络传输协议族(一些相互关联的协议的集合)。


保护ip分组流的两种协议:


ESP 封装安全载荷协议

  • 一般不对整个原ip包加密,只加密不包含ip头的有效载荷(传输模式),但是在端对端的隧道模式中,ESP加密整个ip数据包
  • ESP报头一般在ip头之后,在TCP或者UDP报头之前
  • ESP可以单独使用,也可以跟AH一起使用

ipsec的工作原理

SA

SA,Security

  • Associations安全关联,是ipsec保护的某个连接的唯一标示,SA是单方向的,即在一次安全通信中两个方向都各自需要创建一个SA
  • SA内容是维护一次安全通信所需要的数据参数,一个SA可以由目的地址,IPsec 所采用的协议(AH或ESP)和SPI来唯一确定。

SAD

所有的SA存放在一个数据库中,成为SAD,SA 的建立和维护通过密钥交换协议IKE 实现。

SPI

Security Parameter Index 安全参数索引。用于将收到的IPsec 数
据包与其对应的SA 进行关联。

SPD

Security Policy Database 安全策略数据库。IPsec 的策略就是规则
。SPD 的策略告诉系统如何处理收到的数据包,例如将包处理
成IPsec 数据包从而进行保护,或者不保护直接转发,甚至直
接丢弃。

IKE

Internet Key Exchange 互联网密钥交换协议。默认情况下,IPsec
使用它来自动管理密钥,也可以直接手动管理。


隧道模式的IPsec(ESP)datagram

image_1bttqjqpbscm1nreung1to51qj59.png-94.5kB

隧道模式上,ESP是加密整个ip报文
过程:

  1. Append an ESP trailer
  2. Encryption
  3. Append an ESP header
  4. Append MAC
  5. Create a New IP Header

image_1bttrdcl316d5ibb1u1u1ua31ts2m.png-102.2kB


拆包过程

  1. 接收方收到IP 报文后,发现协议类型是50,表明这是一个ESP包。首先查看ESP header,通过SPI 决定数据报文所对应的SA,获得对应的模式(tunnel/transport mode)以及安全规范。
  2. 计算“enchilada”部分的摘要,与附在末尾的ICV 做对比,验证数据完整性。
  3. 检查Seq#里的顺序号,保证数据是“新鲜”的。
  4. 根据SA所提供的加密算法和密钥,解密被加密过的数据,得到原IP 报文与ESP trailer。
  5. 根据ESP trailer的填充长度信息,找出填充字段的长度,删去后得到原来的IP 报文。
  6. 最后根据得到的原IP报文的目的地址进行转发。

传输模式

image_1bttrmnss15851q767uj17ls1qvm13.png-164.8kB
ESP协议的编号是50

封装过程:
image_1bttrtolbuk71but85b1uurqc420.png-110.1kB

拆包过程:
1. 数据接收方收到数据后,看到协议类型为50,知道这是一个ESP协议,查看ESP头,通过SPI决定数据对应的SA.
2. 计算Enchilada部分的ICV,与数据包尾部的ESP ICV进行比较,确定数据的完整性。
3. 检查Seq序列号,决定是否需要该数据信息。
4. 根据SA提供的加密算法和密钥,解密被加密的Enchilada数据,得到原数据报文和ESP尾部
5. 根据ESP尾部的填充长度信息,找出填充字段的长度,删去后得到原数据报文。
6. 根据原IP头的目的地址进行转发。

添加新批注
在作者公开此批注前,只有你和作者可见。
回复批注