《VPN隧道抓包分析.docx》由会员分享,可在线阅读,更多相关《VPN隧道抓包分析.docx(2页珍藏版)》请在得力文库 - 分享文档赚钱的网站上搜索。
1、整个IPSEC VPN从建立到数据传输可以分为两个阶段。阶段一主要是协商建立一个主密钥,所有后续用户的密钥都根据主密钥产生,阶段一主要是在通信双方间建立一条经过身份验证并且加密的通道。阶段二使用阶段一建立的安全通道,协商安全联盟与用于保护用户数据的密钥。阶段一有主模式与积极模式。现在抓包分析的是主模式,有6个来回交互的包,发起端是60.251.67.10,对端是58.248.41.221。第一个包,发起端协商SA,使用的是UDP协议,端口号是500,上层协议是ISAKMP,该协议提供的是一个框架,里面的负载Next payload类似模块,可以自由使用。可以看到发起端提供了自己的cookie值
2、,以及SA的传输集。第二个包,响应端响应,回包中包括自己的cookie值与协商好的传输集。传输集是什么样的?把security association展开,如下,主要是加密算法,哈希算法,认证算法,生存时间等。第三个包,发起端开始交换密钥的相关材料,记住交换的不是密钥本身。采用的是DH算法。这时可以看到ISAKMP的下一负载变成了Key Exchange,不是SA了。第四个包,响应端回包。这样,双方的密钥材料交换完毕,可以生成共有的主密钥了。密钥生成的公式如下主密钥生成后,会跟着产生三个密钥其中密钥d与a是为下一阶段用的,而密钥e是用来加密后续的协商数据的。第五个包,发起方发起身份验证,带有I
3、dentification的数据。第六个包,响应端回应报文,双方身份验证通过,注意包的经过加密的,加密的密钥就是上面产生的密钥e。到此,阶段一完成了,ISAKMP的SA也建立起来了,后续的密钥也有了,就要开始阶段二的协商了。阶段二只有一种模式:快速模式,通过三个包完成交互。第二阶段的数据是经过加密的,该阶段会产生ipsec sa,每一端都有两个,一个进站一个出战,每个sa的SPI都不同,所以阶段二共产生4的SA。第一个包发起方主要是进行IPSEC SA的协商,建立安全联盟,协商用的封装是AH或是ESP,以及后面的加密算法认证完整性算法以及生存时间与感兴趣流等等第二个包响应方回包,协商好与发起端共同的的规则。最后一个包是发起端对响应端的确认。以上三个包都是通过HASH进行完整性与可靠性认证的。到此,隧道建立起来。第 2 页