跳转至

【推荐】CC2652+Sniffle

【推荐】CC2652+Sniffle

这是 NCC Group 开源的一个工具 Sniffle,项目地址:https://github.com/nccgroup/Sniffle

:::info
可以使用 python 脚本控制,可自定义程度比较高,而且 BLE 的链路层中继也是用这个做的

:::

想要使用这个工具需要购买相应的硬件,人家在 README 也写好了,最下面的应该就是最便宜的了,一两百块钱,其他的都得三四百

1716172737751-b35878ca-9ff2-47ac-8885-06053756d136.png

买来工具之后需要刷固件,刷固件的软件使用 Ti 自己的 UNIFLASH 工具,直接在这个链接下载安装即可

https://www.ti.com.cn/tool/cn/download/UNIFLASH/8.6.0

安装好软件后把开发板插上会自动探测到设备,也可以在下面手动输入设备型号匹配一下,点击 Start 进入固件刷写步骤

1716173305450-0ab44f34-ea5b-4468-ae92-8bdb1c3ee801.png

固件在 Sniffle 的 releases 页面 https://github.com/nccgroup/Sniffle/releases 下载自己型号的即可,比如我的是 sniffle_cc2652rb.hex,选择好固件,点击 Load Image 等待刷写完成即可

1716173441927-c5c7b9fc-38ff-4639-aa43-879c1553d849.png

刷写完成后就可以进入 python_cli 文件夹通过 python 脚本进行控制了

reset.py 就是用来重置的,没啥好说的

1716173799043-a95c79b4-628c-472f-aa04-122e24b92f4c.png

想要抓包的话可以是用 sniff_receiver.py 来操作,-m 可以指定 MAC 地址进行过滤,-o 指定保存的文件名

sniff_receiver.py -m 11:22:33:44:55:66 -o 1.pcapng

1716173857048-b68e584d-880d-43be-8f4f-8b528e7432d4.png

还有很多过滤选项

-r RSSI, --rssi RSSI           按最小 RSSI 过滤数据包
-m MAC, --mac MAC              按广告商 MAC 过滤数据包
-i IRK, --irk IRK              按广告商 IRK 过滤数据包
-S STRING, --string STRING     过滤包含指定字符串的广告
-a, --advonly                  仅嗅探广告,不跟踪连接
-e, --extadv                   捕获 BT5 扩展(辅助)广告
-H, --hop                      在扩展模式下跳转主要广告通道
-l, --longrange                使用远程(编码)PHY 进行主要广告
-q, --quiet                    不显示空包

其他功能有:扫描(scanner.py)、广播(advertiser.py)、连接(initiator.py)等,在做中继的时候可以参考,一般也用不到

原文: https://www.yuque.com/hxfqg9/iot/wpqb50p4gu18mhs2