手把手教你如何通过CC2531抓取Zigbee包,并解析加密Zigbee包

news/2024/11/8 9:00:11/

文章目录

  • 前言
  • 准备阶段
  • 使用步骤
    • TiWsPc
    • Wireshark
    • 解析报文
    • Zigbee 的加密
  • 总结


前言

好久不见啊,大伙假期过得咋样?

最近我在研究 Zigbee ,使用了EFR32(购买链接)的开发板,之前也研究过一点,水了几篇文章,但是没有深了解和使用。最近 arduino 玩腻了,我开始回过头去继续研究 Zigbee ,这里推荐一下芯科科技的视频教程(视频链接)做得确实不错,但是学习的过程中,我遇到一个问题:不知道什么原因 Simplicity studio 自带的抓包工具我用不了,不能抓包就很难受了啊。于是我研究了一下如何通过其他方法抓zigbee包。

不过 Simplicity studio 平台虽然资料比较少,有点复杂,但是熟悉之后确实很好用,比 IAR 什么的要方便很多。

准备阶段

我们需要一个 CC2531 协议分析仪,还需要安装 Wireshark (这里我用的2.4.10版本,据说只能用2.4.x版本),和TiWsPc 。

需要注意的是 Wireshark 和 TiWsPc 必须安装在默认路径下,而且必须先安装 Wireshark 后安装 TiWsPc ,安装完成之后在 Wireshark 的快捷方式后加上:

空格-i\.\pipe\tiwspc_data -k //注意!空格很重要!

在这里插入图片描述

使用的时候需要先打开 TiWsPc 然后打开 Wireshark !

使用步骤

TiWsPc

在这里插入图片描述

打开 TiWsPc 按顺序点击和勾选,对应的按钮,完成之后就会变成上图所示的样子。
注意:4号框是选择信道的位置,不清楚是哪个信道的需要一个个去试,看哪个信道能抓到包。

Wireshark

完成上面的布置,打开 TiWsPc 后,点击之前被我们修改过的那个 Wireshark 的快捷方式,将会跳过选择网卡的界面,直接进入抓包界面:
在这里插入图片描述
不过我们的 zigbee 是加密的,所以这时抓到的包我们是没办法解读的,需要配置Link Key。

解析报文

在 Wireshark 中按快捷键:Ctrl+Shift+P 打开首选项窗口,在左边菜单找到 Protocols 下拉菜单,在最下面找到 Zigbee,然后点击 Edit 按钮,添加Link Key:
在这里插入图片描述
这里给大家提供一些常用的Link Key:

# This file is automatically generated, DO NOT MODIFY.
"5A6967426565416C6C69616E63653039","Normal",""
"821fd8fd9e8b54497ab7905516a38c21","Normal",""
"9b24d9cac760e566b35cb1c25f183dde","Normal",""
"c4f96ae7000506d3fcd1627fb85d7eeb","Normal",""
"aa27404546133c11a2bff89dbe2b74e9","Normal",""
"1770b5f6036c8152af280d6e1ba4594a","Normal",""
"27404546133c11a2bff89dbe2b74e99a","Normal",""
"6bb429da97f0357683ec01d22fa88dee","Normal",""
"691ad73075b6c32c41126fe8cd2edb64","Normal",""
"7d1e0bd4c9fa3710d596230ca1f2cfc8","Normal",""
"2aa7c0c5c693bc91223f781d3eabf469","Normal",""
"e4998a8720a526731c71821fd8fd9e8b","Normal",""
"d73075b6c32c41126fe8cd2edb64190a","Normal",""

Zigbee 的加密

这里我们添加的是 Link Key,但是 Zigbee 在网络层还有一层加密 NWK Key 。

这就要说一下Zigbee 加密方式。Zigbee 分别在APS层和网络层进行了加密,也就是对应了 Link Key 和 NWK Key。

NWK Key 的逐跳传输方式,每一个设备都要知道相同的 NWK Key,ZigBee大部分通讯数据都使用的 NWK Key 加密,而NWK Key 是在网络创建的时候由 ZC 节点随机生成的,而新加入的设备的获取这个 NWK Key 的信息是通过 Link Key 加密的,因为这时候设备还没有入网。

Link Key 是端对端传输,只有发送端和接收端知道key,中途传递的设备不需要知道,也不需要解密。这个 Link Key 大部分时候是用来传输 NWK Key ,也就是说我们知道 Link Key 后就可以通过抓取设备入网时携带了 NWK Key 的包,进而知道 NWK Key 。

这个看起来很麻烦的过程 Wireshark 已经可以自动帮我们完成了,Wireshark 添加了 Link Key 后,捕获到一个设备的入网过程,则 Wireshark 会自动从这个入网过程中解析出该 Zigbee 网络的 NWK KEY。

总结

Wireshark 天下第一! 我之前还在苦兮兮的想怎么才能抓到携带了 NWK Key 的包,然后发现 Wireshark 居然自动完成了!真是太强了!


http://www.ppmy.cn/news/543731.html

相关文章

POJ_2531

题目描述 这题主要题意难懂 题目大意:给定n个点并给出点与点之间的距离,请将点分为两个点集,使得两集合之间的距离最大 如:设点 i , j i,j i,j的距离为map[i][j]或者map[j][i] 点 1 , 2 , 3 1,2…

poj2531 DFS

本题题意:先给你说明有几个点,然后给你几个点的之间的距离,问将这些点分在两边,求点距离的最大值 dfs最怕的就是你的重复计算,一不小心把以前走过的路又走了一遍 例如本题卡我这么久的T,我因为是我剪的不够好&#xf…

poj2531

题目感觉是图的题。。但是做的是POJ简单搜索的专题,嗯,没有思路。。看了大神的代码才学会的,回溯dfs。。 等以后图论学好了,在回头用图论做,我在网上看到有大神用最大割来做,加星星了,等回头在…

hdu 2531

起初没有看懂题目,无处下手,就去翻翻别人的代码,才知道题目的意思,汗…… 简单的一般的广搜的变形,这个解释的比较详细http://blog.csdn.net/swm8023/article/details/6765219 虽然知道怎么做了,但是还是犯…

MSB2531产品简介

MSB2531主要用来做PND/车载导航板/车载核心板方案,主芯片规格为ARM Cortex-A7 32-bit RISC CPU,800MHz,内置三路LDO, 两路DC/DC,充电管理. GPS BaseBand, FM Transmitter, Class-D Amplifier, 立体声耳机驱动;DRAM memory支持16-bit LPDDR和8-bit DDR3, NAND interf…

cc2531USB dongle 实现MT模式 数据转发 串口

由于项目需求要实现CC2531USB dongle的MT模式来实现dongle的数据转发功能,框架简图1所示。PC端实现了MT模式,也可以用Ztool。总结起来就是dongle在MT模式下接收串口数据(数据满足MT格式),然后将数据解析为具体方法&…

POJ 2531 (简单dfs)

dfs一直不知道怎么写,可还是要练习。 这道题题意:n台电脑,分成两个集合,不同的集合交流需要时间,求最大的时间。 思想:遍历全部可能,最开始可以把所有电脑看作一个集合,然后一个一…

丹麦网站推出提供俊男靓女精子或卵子服务

丹麦约会网站“美丽人群”(BeautifulPeople.com)自2002年成立开始,已在全球190多个国家和地区拥有超过60万名注册会员,日点击量逾400万,促成会员间1000多对成婚,造就约600名漂亮宝宝。 最近,“美丽人群”网站在搭建约会…