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报文的内容。

wireshark 解密加密报文的更多相关文章

  1. Wireshark解密HTTPS流量的两种方法

    原理 我们先回顾一下SSL/TLS的整个握手过程: Clienthello:发送客户端的功能和首选项给服务器,在连接建立后,当希望重协商.或者响应服务器的重协商请求时会发送. version:客户端支 ...

  2. 如何利用Wireshark解密SSL和TLS流量

    如何利用Wireshark解密SSL和TLS流量https://support.citrix.com/article/CTX135121 1.有server端的private key,直接在wires ...

  3. Wireshark对ping报文的解码显示(BE与LE) 转自作者:易隐者

    Wireshark对ping报文的解码显示(BE与LE) 我们非常熟悉ping报文的封装结构,但是,在这个报文解码里,我们发现wireshark的解码多了几个参数:Identifier(BE).Ide ...

  4. asar 如何解密加密?electron 的 asar 的具体用法

    来源:https://newsn.net/say/electron-asar.html 在electron中,asar是个特殊的代码格式.asar包里面包含了程序猿编写的代码逻辑.默认情况下,这些代码 ...

  5. WebApi 如何 优雅的 对 输入输出 解密加密

    原文:WebApi 如何 优雅的 对 输入输出 解密加密 这不是变态的想法, 这只是对现实需求的转化. 因为有密文, 所以本文不适用于浏览器到服务端的数据交换; 只适用于服务端到服务端的数据传输. 用 ...

  6. wireshark如何抓取分析https的加密报文

    [问题概述] https流量基于ssl/tls加密,无法直接对报文进行分析. [解决方案] 方案1 -- 利用"中间人攻击"的代理方式抓包分析.整个方案过程比较简单,这里不赘述,大 ...

  7. 利用Fiddler和Wireshark解密SSL加密流量

    原文地址:http://kelvinh.github.io/blog/2014/01/12/decrypt-ssl-using-fiddler-and-wireshark/ Fiddler是一个著名的 ...

  8. 小程序 之使用HMACSHA1算法加密报文

    首先说说我们前端常用的加密技术, 我们常用的加密技术有:如MD5加密,base64加密 今天要说的是HMACSHA1加密技术 先介绍下什么是SHA1算法, 安全哈希算法(Secure Hash Alg ...

  9. 利用Wireshark 解密HTTPS流量

    在我之前的一篇文章中已经介绍了一种解密HTTPS流量的一种方法,大致方法就是客户端手动信任中间人,然后中间人重新封包SSL流量. 文章地址: http://professor.blog.51cto.c ...

随机推荐

  1. 【GCC编译器】将GIMPLE序列划分成基本块(Basic block),并构造控制流图

    1. 首先介绍测试用例,这是一个简单的if-then-else结构,输入为 int 类型的单变量,输出为 int 类型的结果.如果条件 a < 1 成立,则将输入直接返回:如果条件不成立,则返回 ...

  2. rein 多平台支持的超便携端口转发与内网穿透工具

    介绍 本程序主要用于进行反向代理IP地址和端口,功能类似于 nginx 的 stream 模式和rinetd 的功能:在(1.0.5)版本开始,rein支持内网穿透,这一功能类似于frp 和ngrok ...

  3. mysql《一》

    一.启动和停止服务器 通过管理员权限打开cmd命令指示符 通过 net stop mysql(自己的服务器名字)  停止服务器 通过 net start mysql(自己的服务器名字)  启动服务器 ...

  4. 线程的分离状态(detached state)

    说到线程的分离状态,我认为,之所以会有这个状态,是因为系统对某些线程的终止状态根本不感兴趣导致的. 我们知道,进程中的线程可以调用: [cpp] view plaincopyprint? int pt ...

  5. Switch User Command in Linux

    Switch user command (su) has the following forms: su Switch to , without loading environment variabl ...

  6. 【死磕 Java 基础】 — 自己动手实现一个 LRU

    大家好,我是大明哥,一个专注于[死磕 Java]系列创作的男人 个人网站:https://www.cmsblogs.com/.专注于 Java 优质系列文章分享,提供一站式 Java 学习资料 LRU ...

  7. comm tools

    RTL:寄存器传输级别 LRM:语言参考手册 FSM:有限状态机 EDIF:电子数据交换格式 LSO:库搜索目录 XCF:XST 约束条件 1. par -ol. high  命令总是 '-'开头,参 ...

  8. 题解 God Knows

    传送门 这里有个线段树维护单调栈的神仙技巧 同机房dalao @Yubai的不同理解方式 yysy,我考场上连\(n^2\)的暴力都没搞出来 这里实际上求的是最小权极大上升子序列 但这个跟题目几乎没什 ...

  9. Java之Spring基础与IoC

    Spring About Spring 开源免费框架,轻量级,非入侵式框架.Spring就是一个轻量级的控制反转(IOC)和面向切片编程(AOP)的框架 Maven repo:Spring Web M ...

  10. FirstGradle

    一.导入依赖 二.build.gradle 整合SpringBoot plugins { id 'java' } group 'com.qiang' version '1.0.0-SNAPSHOT' ...