清泛IT社区

标题: BLE(四)嗅探工具 [打印本页]

作者: App Inventor 2     时间: 2024-02-05 11:25
标题: BLE(四)嗅探工具
文章源自:https://www.gandalf.site/2018/11/ble_26.html

商业级的Ellisys BEX400侦听工具最为符合对BLE流量捕获及分析的要求,然而售价过于昂贵;
其次,作为开源硬件且配有混杂模式追踪的“超牙”设备——Ubertooth One拥有二次开发和嗅探已建立连接的蓝牙通信数据包的能力;
而淘宝购买的廉价CC2540开发板则作为最佳替补方案。
0x1 低功耗蓝牙SOC低功耗蓝牙推出以来,众多厂商根据标准规范实现了不同的解决方案,包括TI的CC2540\2541、北欧Nordic的nRF51822、CSR的1000\1001、Quintic的QN9020\9021(现在被NXP收购)、Broadcom的BCM20732等。其中,在开发者当中比较知名的是TI的CC254x系列和Nordic的NRF51822,并且这两款产品当有着自己的开发板和用于嗅探的调试工具。。
0x11 CC2540德州仪器的CC2540,是一款高性价比、低功耗的片上系统(SOC)解决方案,适合蓝牙低功耗应用。它包含了一个8051内核的RF收发器,可编程闪存,8KB RAM和其他功能强大的配套特征及外设。CC2540有两种版本:CC2540F128 / F256,分别为128和256 KB的闪存,结合TI的低功耗蓝牙协议栈,CC2540F128 / F256形成了市场上最灵活,性价比也最高的单模式蓝牙BLE解决方案。
CC2540 USB Dongle的实物图如下,它可以配合TI的PacketSniffer软件实现对BLE无线抓包:

实际上,任意包含CC2540芯片的开发板都能实现BLE流量嗅探的功能。不过,TI官方并没有将侦听BLE的源代码放出,仅提供了烧写到USB Dongle的固件
在这个基础上,如果想要实现更多的功能,比如监听指定范围内所有的低功耗蓝牙设备的流量,就有必要对其进行逆向或者自己完全重写个程序。。
优点:
缺点:
使用:






数据包类型:M -> S  主机到从机  手机到ble固件

S -> M  从机到主机

广播包:


初始连接包:





连接事件:



请求更新参数包:



接受请求参数:

result 0表示接受,1表示拒绝


重新设置更新参数:


write写:


主机监听:


监听到:(从机返回)



0x12 NRF51822挪威Nordic Semiconductor(简称Nordic)公司的nRF51822,是一款多协议ARM内核蓝牙4.0低功耗/ 2.4GHz 专用RF的单芯片解决方案。它基于Cortex-M0 内核,配备16kB RAM,可编程闪存,提供128 KB和 256 KB Flash两种版本供用户选择。
nRF51822 USB Dongle及开发板套件如下所示:


刷入以下固件,配合官方的BLE sniffer程序,即可实现蓝牙流量的嗅探功能


不同与cc2540的Packet Sniffer,该程序无需事先在3个广播信道中指定其一进行守候,只要指定要监听的设备,就会自动进行追踪,并能够配合Wireshark解析BLE数据包,可以很直观的显示出内部的层级关系和各字段含义。比较遗憾的是,实际使用发现它并没有CC2540 USB Dongle稳定,经常会抓不到后面数据通信的网络包,不过这一问题应该是可以通过优化算法得到解决的,但需要对官方的固件进行逆向或自己根据Nordic公司提供的BLE协议栈重写代码。。







优点:
缺点:
0x2 商业侦听工具0x21 Frontline BPA® 600Frontline Test Equipment——“前线测试设备”(简称“前线”,Frontline),主要是针对各种各样的协议所做的一个“协议分析器”。“前线”系统的销售策略是“卖硬件,送软件”,而软件自然是和硬件相关联的,其侦听范围包括SCADA系统、RS-232串口通信、Ethernet以太网通信、ZigBee网络通信,以及蓝牙网络技术。Frontline旗下的BPA® 600双模蓝牙协议分析仪,能够把从空中获取到的基础速率/ 增强数据速率(BR/EDR)的传统蓝牙无线通信和低功耗蓝牙无线通信数据同时直观的显示出来。



优点:

缺点:
0x22 Ellisys BEX400Ellisys公司的BLuetooth Explorer 400(简称“BEX400”),是个独特的蓝牙数据通信捕获系统。它使用了一个wideband的接收器,能够同时侦听蓝牙整个79MHz的所有频谱。通过这种无线接入方法,嗅探蓝牙数据包以及对蓝牙活动的评估变得很容易。在BEX400强大的宽带接收能力支持下,我们能够同时捕获蓝牙的所有活动,且无需指定“蓝牙设备地址”信息。此外,该设备在捕获一个“微微网”中的蓝牙通信数据时,既可以是在连接建立前,也可以在连接建立后



优点:
缺点:
0x3 开源侦听工具Ubertooth“超牙项目”(Project Ubertooth)是一个开源的硬件项目,由Great Scott Gadgets团队的Michael Ossmann开发。超牙的硬件系统,目前处于版本为1的阶段,称为“超牙一号”(Ubertooth One)。通过这个工具,可以创建属于自己的“传统蓝牙”和“低功耗蓝牙”底层通信数据包捕获工具。



此外,Ubertooth的固件源代码,可以直接从github:https://github.com/greatscottgadgets/ubertooth下载到最新的发布版。


优点:
缺点:






欢迎光临 清泛IT社区 (https://bbs.tsingfun.com/) Powered by Discuz! X3.3