文档章节

Zigbee抓包分析——介绍

临峰不畏
 临峰不畏
发布于 2016/11/19 17:36
字数 774
阅读 1085
收藏 46
点赞 2
评论 9

#背景 博主从事的是智能家居领域的网关研发工作。
由于我们的网络是Zigbee,所以博主不得不学会抓包。
会抓包,这个很重要。做我们这行不会抓包,就等同于电子工程师不会示波器、程序员不会GDB。

#正题

抓包器介绍

我司用的抓包软件是Ubiqua,是花了重金买的。主界面如下: 抓包器主界面

添加抓包器

首先,插上我们的抓包器,博主为 NXP 的 JN5168,用 FTDI 串口转USB 的 Dangle。
点击菜单栏:Device -> Add Device ... ,弹出设备添加框:
选 “NXP”,然后选重 "NXP FTDI Device",再点 “Add Device”,如下:
输入图片说明

设置信道

设备信道
然后点击设备上的开关按钮即可。
开启

正常情况下,主界面就会出现大量的数据显示:
数据包
其中如下显示的,表示未解密包:
未解密包
需要遇到 Transport Key 包方可解密。最简单的方法就是入一个设备进网络。

常用工具

在抓包器中一有些常用的工具:
工具

  1. 保存当前数据
  2. 滚动显示
  3. 单包分解窗显示最新包
  4. 清空所有
  5. 当前过滤器
  6. 启用与关闭过滤器
  7. 新建过滤器
  8. 编辑当前过滤器
  9. 删除过滤器

过滤器

过滤器是必要的,不然人眼受不了。

新建过滤器

点击(7)所示的按钮,弹出如下框:
新建过滤
如果是Zigbee新手,用起来都比较麻烦。还有另一种简单的方法。
比如博主要抓 PANID=5FCC的包,即同一个网络的数据包。 先选中一个数据包样本。然后:
添加过滤

Zigbee包结构

ZCL包

如下为ZCL包,开关的属性报告:
ZCL包
Zigbee的协议很多与我们以太网络很像:

  • MAC
  • NWK
  • APS
  • ZCL

不详讲,只想提一下几点:

  • PANID 在 MAC 层里
  • MAC层与NWK层都有Source Address 与 Destination Address,MAC层的是当前包的源地址与目标地址,而NWK的是指真正的源地址到目标地址。类似以太网的IP层与MAC层的关系
  • Frame Information中有包的信息,包括信号强度
  • Cluster id 是在 APS 层

##常见的数据包介绍 如下数据包:

  • Management Permit Joining Request 开启与关闭组网
  • Beacon Request 请求信标
  • Beacon 信标
  • Acknowledgement (MAC) 点对点确认包
  • Acknowledgement (NWK) 目标到源确认包
  • Association Request 请求关联
  • Association Response 关联回复
  • Transport Key 传输密钥
  • Device Announce 设备通告
  • Active Endpoints Request 请求端点个数
  • Active Endpoints Response 回复端点个数
  • Simple Descriptor Request 请求端点简单描述
  • Simple Descriptor Response 回复端点简单描述
  • Data Request 终端结点向父结点获取数据
  • Bind Request 请求绑定
  • Bind Response 回复绑定
  • Configure Reporting 配置属性报告
  • Configure Reporting Response 配置属性报告回复
  • Read Attributes 读属性
  • Read Attributes Response 读属性回复
  • Write Attributes 写属性
  • Write Attributes Response 写属性回复
  • Report Attributes 属性报告

结语

本文就到介绍到这里,博主以后再一一介绍设备入网与控制的流程分析。

© 著作权归作者所有

共有 人打赏支持
临峰不畏
粉丝 211
博文 183
码字总数 96576
作品 0
深圳
技术主管
加载中

评论(9)

Ankie
Ankie

引用来自“临峰不畏”的评论

引用来自“Ankie”的评论

您好,想请教一下,我使用的是cc2531抓的包,但是包都是未解密的,设备是成品,是可以按照您上面的提示,找到Transport Key 包,让新设备入网么?我尝试了下让新设备入网,没找到这个包啊,多有打扰啦!

是的,只有设备入网时才能抓到密钥
已经做了几次尝试,已经抓到这个关于传输密钥的包了,谢谢哈
临峰不畏
临峰不畏

引用来自“Ankie”的评论

您好,想请教一下,我使用的是cc2531抓的包,但是包都是未解密的,设备是成品,是可以按照您上面的提示,找到Transport Key 包,让新设备入网么?我尝试了下让新设备入网,没找到这个包啊,多有打扰啦!

是的,只有设备入网时才能抓到密钥
Ankie
Ankie
您好,想请教一下,我使用的是cc2531抓的包,但是包都是未解密的,设备是成品,是可以按照您上面的提示,找到Transport Key 包,让新设备入网么?我尝试了下让新设备入网,没找到这个包啊,多有打扰啦!
临峰不畏
临峰不畏

引用来自“FX-XXX”的评论

请问硬件用到了什么,我现在想用usrp可以实现吗?

这个不清楚,我们是自已做的协调器
xiaolongba
xiaolongba
的确是贵得一逼,找遍整个网络,都没有发现有2.0破解版的,其中找到的一个还是不肯公开的:disappointed_relieved:
FX-XXX
FX-XXX
请问硬件用到了什么,我现在想用usrp可以实现吗?
ixiaohei
ixiaohei

引用来自“临峰不畏”的评论

引用来自“ixiaohei”的评论

查了一下个这个软件65刀一个月,说贵也不贵,说便宜也不便宜,一个抓包软件卖这么贵真可以。。。。

是很贵的哦~
没有我司买hp的代码扫描的贵,一个月10w
临峰不畏
临峰不畏

引用来自“ixiaohei”的评论

查了一下个这个软件65刀一个月,说贵也不贵,说便宜也不便宜,一个抓包软件卖这么贵真可以。。。。

是很贵的哦~
ixiaohei
ixiaohei
查了一下个这个软件65刀一个月,说贵也不贵,说便宜也不便宜,一个抓包软件卖这么贵真可以。。。。
[ZigBee] 16、Zigbee协议栈应用(二)——基于OSAL的无线控制LED闪烁分析(下)

说在前面:上一篇介绍了无线LED闪烁实现的OSAL部分,本篇介绍如何实现无线数据收发及数据处理: 上一篇是用SI跟着流程查看源码,我个人认为以架构的思维去了解代码能让人更清晰 ::ZMain.c...

史迪奇2号 ⋅ 01/10 ⋅ 0

[ZigBee] 15、Zigbee协议栈应用(一)——Zigbee协议栈介绍及简单例子(长文,OSAL及Zigbee入门知识)

1、Zigbee协议栈简介   协议是一系列的通信标准,通信双方需要按照这一标准进行正常的数据发射和接收。协议栈是协议的具体实现形式,通俗讲协议栈就是协议和用户之间的一个接口,开发人员通...

史迪奇2号 ⋅ 01/01 ⋅ 0

基于Web方式的数据包捕获实践

基于Web方式的数据包捕获实践 抓包是运维的必备技能,很多网络故障需要靠抓包来解决,如常见的ARP欺骗和广播风暴。另外还有一些网线或光纤接触不好的故障,不抓包也很难分析出来,例如两个公司...

李晨光 ⋅ 2016/03/22 ⋅ 0

基于Web方式的数据包捕获实践

基于Web方式的数据包捕获实践 实验环境:下文基于 OSSIM 4.15.2 平台得出实验结论。 抓包是运维的必备技能,很多网络故障需要靠抓包来解决,如常见的ARP欺骗和广播风暴。另外还有一些网线或光...

OSSIM ⋅ 2016/03/22 ⋅ 0

Postman Fiddler使用手册

本文主要讲解没有什么主要的内容,主要是一些网上的Postman和fiddle教程,本人亲自测试和阅读过,以下是一些链接, Postman: 一,Postman软件安装 二,Postman使用手册1——导入导出和发送请...

slagga ⋅ 2016/09/24 ⋅ 0

HTTPS抓包与手机抓包,看这一篇就够了

前言 关于抓包的话题我之前也写过,这次主要针对HTTPS与手机抓包。最近这方面工作做的不少,一边记录一边分享。 正文 1 HTTPS抓包 对于HTTPS的抓包在之前我的文章中也写到过,关注微信公众号...

Mocha_Lee ⋅ 2017/11/16 ⋅ 0

白帽黑客如何以上帝视角操纵高楼酒店?

还记得当年红极一时的黑客操控大厦电力玩起坦克大战的视频吗?(就是这个)视频真实性抛开不论,带给围观群众的震撼效果绝对是十级。 雷锋网今天带来的是另一组大片。 视频中的神操作者是来自...

又田 ⋅ 04/17 ⋅ 0

Wireshark基本用法

按照国际惯例,从最基本的说起。 作者当前的操作系统为:Windows 10 专业版 抓包软件为:Wireshark2.0.4 WinPcap版本:4.1.3 抓取报文: 下载和安装好Wireshark之后,启动Wireshark并且在接口...

hongliang_liu ⋅ 2017/04/14 ⋅ 0

移动端安全修炼(二)

前因 iOS针对IAP有一个保护机制,如果使用了全局代理的方式,iOS检查到之后为了保障交易的安全性,将会拒绝IAP流程,所以是无法抓取交易数据的,以豆瓣阅读为例,未开启代理时,可以正常的进...

陆行鸟 ⋅ 01/04 ⋅ 0

Python实现电影排行榜自动网盘下载(4)Cookies免登录+抓包下载

上一篇文章提到了使用Selenium模拟操作进行下载的一些缺点,包括文本框输入令人抓狂等等,这一篇文章将介绍使用Cookies免登录、抓包分析来进行下载、查询等功能。 成功的效果图 喂喂!你丫这...

Seeker_zz ⋅ 2017/08/05 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

apollo配置中心的学习笔记

公司现在配置文件太多了,导致配置文件修改起来还是非常麻烦的。在boss(业务运营支撑系统)中,配置文件是存放在jar包的,通过应用jar包来引用配置文件(区分不同环境)。这种方式虽然能够满足...

miaojiangmin ⋅ 2分钟前 ⋅ 0

Jena增删改查AP

插入、更新数据 public static void insert(){ String query = "PREFIX book: <http://www.book.com/jinyong/> \n" + " INSERT DATA \n" + ......

Vincent-Duan ⋅ 3分钟前 ⋅ 0

springMVC之与json数据交互方法

因为我也要返回json数据。所以需要这个注解@ResponseBody,把Java对象转换成json字符串 注意: 1、@RequestBody不能省,因为前台发过来的数据是json数据,得用这个注解去解析该怎么接收这些数...

颖伙虫 ⋅ 7分钟前 ⋅ 0

用实例域代替序号(31)

1、许多枚举天生就与一个单独的int 值相关联 ordinal 方法,返回枚举常量在类型中的数字位置 下述,枚举修改很不方便,不好维护 永远不要根据枚举的序数导出与他相关联的值 而是将他保存在一...

职业搬砖20年 ⋅ 8分钟前 ⋅ 0

并发编程---ConcurrentHashMap源码解析

ConcurrentHashMap是java中为了解决HashMap不能支持高并发而设计的新的实现。 ConcurrentHashMap的类结构 public class ConcurrentHashMap<K,V> extends AbstractMap<K,V> implements C......

千古一梦888 ⋅ 11分钟前 ⋅ 0

微服务 WildFly Swarm 简介

我们将看到的最后一个Java微服务框架是一个相对较新的场景,它利用了 JBoss WildFly 应用服务器中已试过且受信任的 JavaEE 功能。WildFly Swarm 是 WildFly 应用服务器的一个完整的拆下来的组...

woshixin ⋅ 16分钟前 ⋅ 0

android apk 瘦身

头条APK瘦身之路 随着版本迭代,功能增加安装包体积也会慢慢增大。 今日头条576版本APK达到了25M,通过一系列的优化,到目前的607版本为12M。本文主要是介绍头条APK瘦身中用到的一些方法。 ...

GoldenVein ⋅ 20分钟前 ⋅ 1

mac机器学习开发环境部署及helloworld

一、下载并安装Anaconda2.7 https://repo.anaconda.com/archive/Anaconda2-5.2.0-MacOSX-x86_64.pkg 路径:/Users/shijun/anaconda2 二、运行Anaconda Navigator -> Environments -> base(ro......

八戒八戒八戒 ⋅ 31分钟前 ⋅ 0

关于日常开发的经验总结(Java),持续更新中

常量尽量使用枚举来表示,这样表现力会很强,因为枚举比一个常量类要有更多的扩展性 方法的入参和出参尽量不要使用Map,因为Map会让调用者感到迷惑,他不知道你里面装的什么,面向对象的开发...

小99 ⋅ 31分钟前 ⋅ 0

IDEA创建SpringMVC+Mybatis+Maven项目

视频如下(加载有点慢请见谅,服务器不太好): 视频

影狼 ⋅ 32分钟前 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部