wireshark 解密IPSec加密后的报文
序言
wireshark作为一款非常优秀的抓包工具,支持了各种各样的网络协议,成为了网络开发中必不可少的工具之一。一般而言,对于普通的网络数据包,wireshark能够提供很好的解析功能,但是对于加密的网络报文,由于缺乏密钥信息导致无法解析。幸运的时,新版的wireshark工具再一直密钥信息的情况下,提供了解析加密报文的功能。下面我们就该功能的使用提供一个简单的操作示例。
1. 正常抓取的报文
正常抓取的报文,wireshark无法解密。如果需要调试功能,但是又不知道它的报文内容,那是相当难受的感觉。
2. 使用wireshark解密加密报文
- 选中加密报文,右键选择 “协议首选项”
- 选择报文所属协议
因为我的是IPsec协商报文,采用的IKEv2协议,因此我使用了**“IKEv2 Decryption Table…”**,效果图如下:
然后根据需求填充上自己的密钥参数信息:
3. 密钥的来源
我使用的是Ipsec报文,他的密钥再协商过程中产生,因此我将pluto协商过程中的密钥信息记录下来,然后根据需求依次填充到wireshark中即可。密钥信息如下:
------------------------------------------------------------------
KEY length: skd_bytes=16 ska_bytes=16 ske_bytes=24 skp_bytes=16
SK_d: ce 21 6c af e3 6c 34 93 0f fc 86 21 e8 bf e7 22
SK_ai: 6ebfc1b41d90e0ea50a5124b75657839
SK_ar: 26a3a2f1fa014ec600a9d38b43ad1ec0
SK_ei: a91e5a67fdb998421fd9d31f46055be40e49aa5ba2468b00
SK_er: 8aef98774979227dd7f46a747adcfab19128a68cb35c8b1d
SK_pi: 93 04 47 7e 45 16 c6 2b 84 a6 37 bb 0f 03 f1 7e
SK_pr: da 9f 5b 47 4e b4 25 3e 47 dd 3e e8 82 c5 7f e1
ICOOKIE: ffd40d496cdd6ba6
RCOOKIE: 265f96692df83750
------------------------------------------------------------------
4. 解密后的报文
这样便很方便的看到解密的IPSec报文的内容。