0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

如何使用低成本的硬件來實(shí)現(xiàn)Mesh數(shù)據(jù)的捉包與解密?

冬至子 ? 來源:紅旭無線技術(shù) ? 作者:Wireless Tech ? 2023-07-18 11:28 ? 次閱讀

小編之前經(jīng)常對(duì)群里的網(wǎng)友說 “幾十塊錢的捉包都可以捉Mesh數(shù)據(jù)包的話,那Ellisys和Frontline不就倒閉了嗎?” 后來發(fā)現(xiàn)小編還是太 “草率” 了;

隨著科技的不斷發(fā)展,目前是可以使用低成本的硬件來實(shí)現(xiàn)Mesh數(shù)據(jù)的捉包與解密的,那么到底是怎么做的呢?Here we go!

前期準(zhǔn)備

首先,我們需要如下幾個(gè)工具:

  • 紅旭無線的52840 Dongle*
  • 大名鼎鼎的協(xié)議分析軟件Wireshark

安裝最新的版本即可

注意: 安裝時(shí)需要將pip也安裝上

  • nRF Sniffer for Bluetooth LE

下載最新的版本即可

  • nRF Connect for Desktop( 非必須 )

下載最新的版本即可(非必須,我們出廠時(shí)候,已經(jīng)使用該軟件燒寫好抓包固件了。如果需要Dongle可以留言客服修改固件)

軟件配置

因?yàn)槲覀冏罱K是調(diào)用Wireshark對(duì)抓取到的數(shù)據(jù)包進(jìn)行協(xié)議分析,所以我們此時(shí)還需要對(duì)上述下載的

nRF Sniffer for Bluetooth LE進(jìn)行配置,操作如下所示:

  1. Sniffer_Software/extcap/ 文件夾中打開CMD并安裝相應(yīng)的依賴包,以下是小編的路徑:

F:BluetoothNordicSniffernrf_sniffer_for_bluetooth_le_3.1.0_7cc811fextcap

以及命令

pip3 install -r requirements.txt

圖片

因?yàn)樾【幰呀?jīng)安裝過了,所以提示說已經(jīng)安裝完成;如果是第一次安裝的話就會(huì)自動(dòng)下載相應(yīng)的依賴包;

  1. 復(fù)制Nordic的捉包工具到Wireshark的文件中:
    1. 打開Wireshark軟件,并選擇 **Help ** --> About Wireshark

圖片

  1. 選擇 “Floders ,并雙擊Global Extcap path就會(huì)跳到相對(duì)應(yīng)的路徑,并復(fù)制 Sniffer_Software/extcap/ 文件夾中的內(nèi)容:

圖片

  1. 基本上,這個(gè)時(shí)候軟件的配置已經(jīng)完成了;此時(shí)我們?cè)趶?fù)制后的這個(gè)目錄下,可以用如下命令進(jìn)行驗(yàn)證是否配置成功:

nrf_sniffer_ble.bat --extcap-interfaces

采用上述在本目錄下打開CMD的方法,輸入上述的指令,如果出現(xiàn)下述的界面則說明配置成功:

圖片

抓包原理

可能有讀者此時(shí)有點(diǎn)不耐煩了,但是在開始抓包之前,小編覺得還是很有必要跟大家講講這個(gè)抓包原理到底是怎么樣的;廢話不多說,老規(guī)矩---上圖?。。?/p>

圖片

從上圖可知,如果僅僅是抓取廣播包的話,那么就省事多了,直接對(duì)著37,38,39三個(gè)廣播信道掃描,然后對(duì)抓取到的數(shù)據(jù)進(jìn)行解析即可;當(dāng)然如果是擴(kuò)展廣播包的話,可能會(huì)比較麻煩些,但是這個(gè)小編以后會(huì)專門開個(gè)章節(jié)進(jìn)行講解;眾所周知,BLE連接上之后每個(gè)連接間隔都是會(huì)跳頻的,那么這個(gè)時(shí)候抓包器又是怎么抓的呢?BLE 5.0之前,跳頻的步長(zhǎng)是固定的,但是5.0之后跳頻的步長(zhǎng)則變成隨機(jī)了,這樣對(duì)抓包器的要求就更高了;但是,再復(fù)雜也是通過數(shù)學(xué)公式計(jì)算出來的,現(xiàn)在后悔沒有把數(shù)學(xué)學(xué)好吧?

由于5.0之后的跳頻算法比較復(fù)雜,小編這里不表,感興趣的讀者可以自行閱讀Spec;但是,像小編這樣的學(xué)渣來說,有沒有辦法通過輸入某些值,即可算出跳頻的列表呢? 答案:當(dāng)然是有的 ,這個(gè)時(shí)候就不得不祭出一個(gè)神器了,先讓大伙看看效果:

圖片

紅色高亮是計(jì)算出來的跳頻列表,而下圖是實(shí)際抓包時(shí)的數(shù)據(jù)通道列表:

圖片

從上述的兩幅圖,我們可以看到第0~4個(gè)連接事件的跳頻信道跟抓包得到的數(shù)據(jù)信道是完全一樣的;其中CONNECT_IND的消息攜帶有 Access Address ,我們利用神器只要將Access Address值的內(nèi)容輸入進(jìn)去即可計(jì)算出整個(gè)跳頻列表;同理,抓包器就利用這個(gè)CONNECT_IND的消息,計(jì)算出下一個(gè)信道在哪里,從而實(shí)現(xiàn)抓包的目的,這也是為什么在抓取數(shù)據(jù)包時(shí),一定要在廣播前就打開Sniffer,否則抓取不到數(shù)據(jù)包;

開始抓包

接下來,小編正式講解開始本篇文章的重點(diǎn),也是大家最喜歡的環(huán)節(jié),那么怎么使用紅旭無線的52840 Dongle進(jìn)行抓取Mesh數(shù)據(jù)包并解密呢?

  1. 首先,打開Wireshark選擇紅旭無線的52840 Dongle,如下圖所示:

圖片

  1. 雙擊上圖中的 “nRF Sniffer for Bluetooth LE COM22” ,即可開始抓包
  2. 由于我們周邊會(huì)大量存在其他我們不想要的BLE數(shù)據(jù)包,那么這個(gè)時(shí)候就需要過濾一下,這里小編過濾了普通的BLE數(shù)據(jù)包,只保留了Mesh相關(guān)的數(shù)據(jù)包以及用于測(cè)試那個(gè)設(shè)備,過濾的命令如下:

((pbadv) || (provisioning)||(btmesh)||(beacon) ) && ((btle.advertising_address == eb:7b:7a:14:1c:02)||(btle.advertising_address == d3:31:5a:db:35:91))

圖片

  1. 其中一個(gè) HX-DK-夏 Z1A00下載Nordic官方的Light_Switch固件,另外一個(gè) HX-DK-夏 Z1A00下載Nordic官方的Provisioner固件
  2. 按下Provisioner那個(gè)開發(fā)板的 Button 1 ,此時(shí)Provisioner這個(gè)開發(fā)板就開始對(duì)未入網(wǎng)的設(shè)備進(jìn)行配網(wǎng)
  3. 這個(gè)時(shí)候紅旭無線的52840 Dongle就會(huì)將整個(gè)入網(wǎng)過程抓取,并顯示在Wireshark界面上;然而,我們大家都知道,Mesh入網(wǎng)之后所有的數(shù)據(jù)都是通過加密的,那么如果解密呢?這個(gè)其實(shí)跟Ellisys是一樣的,只要輸入Netkey,Appkey,DevKey以及IV Index即可;隨便選中一個(gè)加密后的Mesh數(shù)據(jù)包,將前面提到的內(nèi)容填充進(jìn)去,具體操作如下:

圖片

按照上圖中的步驟填充Netkey,Appkey,DevKey以及IV Index,這里以小編的為例:

圖片

圖片

需要注意的是: 所有的Key都要在前面加上“0x”,其中SRC Address指的是節(jié)點(diǎn)元素的首地址 ;至此,Wireshark就可以解析所有Mesh加密之后的內(nèi)容了;

注意: 為了提高抓取GATT-Bear的數(shù)據(jù)包概率,應(yīng)該指定抓取某個(gè)設(shè)備,經(jīng)過小編實(shí)測(cè)之后,基本上可以抓取到GATT-Bear的交互數(shù)據(jù)包;具體的配置如下:

圖片

其中Device就是要你指定的被抓取的設(shè)備,同時(shí)如果發(fā)現(xiàn)紅旭無線的52840 Dongle的紅色LED此時(shí)高亮,就說明已經(jīng)抓取到連接的數(shù)據(jù)包了;

實(shí)驗(yàn)結(jié)果

下面是小編用紅旭無線的52840 Dongle抓取到的Mesh入網(wǎng)以及配置的整個(gè)過程:

圖片

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • led燈
    +關(guān)注

    關(guān)注

    22

    文章

    1591

    瀏覽量

    107654
  • Mesh網(wǎng)絡(luò)
    +關(guān)注

    關(guān)注

    0

    文章

    41

    瀏覽量

    14122
  • SRC
    SRC
    +關(guān)注

    關(guān)注

    0

    文章

    60

    瀏覽量

    17932
  • python
    +關(guān)注

    關(guān)注

    54

    文章

    4758

    瀏覽量

    84289
  • nrf52840
    +關(guān)注

    關(guān)注

    1

    文章

    98

    瀏覽量

    8283
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    藍(lán)牙mesh網(wǎng)絡(luò)在數(shù)據(jù)包的應(yīng)用

    獨(dú)特的概念,但其主要資產(chǎn)在于數(shù)據(jù)包,這也是它的一個(gè)差異化因素。它非常緊湊,這種緊湊性有助于確保藍(lán)牙mesh網(wǎng)絡(luò)的頻譜效率和吞吐量。
    發(fā)表于 07-18 08:06

    解密藍(lán)牙mesh系列 | 第七篇

    :廣播承載層 (advertising bearer)和GATT承載層 (GATT bearer)。藍(lán)牙mesh網(wǎng)絡(luò)設(shè)備默認(rèn)使用的是廣播承載層,它負(fù)責(zé)在低功耗藍(lán)牙廣播數(shù)據(jù)包內(nèi)收發(fā)藍(lán)牙mesh數(shù)
    發(fā)表于 07-25 08:36

    低成本先鋒開發(fā)工具使用有限制嗎?

    你好,我找不到合適的地方張貼,所以我在這里張貼。如果在第三方商業(yè)產(chǎn)品中使用低成本先鋒開發(fā)工具,請(qǐng)?jiān)试S我知道是否有許可限制。
    發(fā)表于 11-01 13:52

    低成本無線射頻芯片A7105

    4pin(SPI)或3pin接口來訪問FIFO中的數(shù)據(jù),指令和寄存器設(shè)置◆ 處理硬件包括序言,同步字,糾錯(cuò),CRC數(shù)據(jù)加密和曼徹斯特編碼◆ 獨(dú)立的64字節(jié)FIFO(RX和TX)◆ 支
    發(fā)表于 06-27 14:07

    如何利用FPGA的硬件描述語言實(shí)現(xiàn)AES的加解密算法?

    為了系統(tǒng)的擴(kuò)展性和構(gòu)建良好的人機(jī)交互,如何利用FPGA的硬件描述語言實(shí)現(xiàn)AES的加解密算法?
    發(fā)表于 04-08 06:01

    數(shù)據(jù)包解密必須要配置哪些

    1、數(shù)據(jù)包解密必須要配置 Netkey,Appkey,Devkey, IV Index的,可以找一下配置接口。2、廣播需要 37,38, 39 三通道同時(shí)抓才行,一般使用的是專門的儀器。
    發(fā)表于 07-22 08:04

    如何低成本實(shí)現(xiàn)大棚自動(dòng)打藥

    作為技術(shù)小白,但是我們非常希望有低成本的農(nóng)業(yè)解決方案。是通過什么軟件的學(xué)習(xí),我們能夠一步步實(shí)現(xiàn)初級(jí)的農(nóng)業(yè)自動(dòng)化
    發(fā)表于 10-20 11:27

    使用STM32F10xxx實(shí)現(xiàn)低成本現(xiàn)實(shí)的應(yīng)用方案

    本文檔適用于STM32F1系列微控制器。文檔描述了在沒有片內(nèi)LCD驅(qū)動(dòng)硬件的情況下,使用STM32F10xxx微控制器驅(qū)動(dòng)LCD的技術(shù)。此技術(shù)提供了使用STM32F10xxx實(shí)現(xiàn)低成本現(xiàn)實(shí)的應(yīng)用方案,可通過固件控制LCD對(duì)比度。
    發(fā)表于 12-01 06:26

    藍(lán)牙Mesh技術(shù)—邊緣網(wǎng)絡(luò)的成長(zhǎng)

    、控制在傳輸層中的數(shù)據(jù)加密、解密過程。對(duì)于傳輸層送達(dá)的數(shù)據(jù),接入層能夠?qū)ζ渲械木W(wǎng)絡(luò)、應(yīng)用信息進(jìn)行驗(yàn)證。   基礎(chǔ)模型層(foundation models Layer):實(shí)現(xiàn)應(yīng)用層模型
    發(fā)表于 05-17 15:39

    基于FPGA的低成本AES IP核的設(shè)計(jì)與實(shí)現(xiàn)

    硬件實(shí)現(xiàn)數(shù)據(jù)加密已成為信息安全的主流方向。本文提出了一種基于FPGA 的低成本的AES IP核的實(shí)現(xiàn)方案。該方案輪內(nèi)部系統(tǒng)資源共用,減少了
    發(fā)表于 01-06 15:11 ?10次下載

    低成本mTouch評(píng)估工具的詳細(xì)中文資料概述

    本文檔介紹了如何將低成本mTouch評(píng)估工具用作開發(fā)工具評(píng)估m(xù)Touch 1D解決方案,以及如何基于該工具開發(fā)電容傳感應(yīng)用。
    發(fā)表于 06-06 10:29 ?9次下載

    如何才能使用低成本實(shí)現(xiàn)非接觸式的數(shù)據(jù)交互

    隨著電子技術(shù)、無線通信技術(shù)的蓬勃發(fā)展,出現(xiàn)了各種非接觸式無線數(shù)據(jù)傳輸標(biāo)準(zhǔn)。技術(shù)的不斷推進(jìn)升級(jí),使得人們對(duì)這些標(biāo)準(zhǔn)提出了更加嚴(yán)格的要求,一種低成本實(shí)現(xiàn)非接觸式無線數(shù)據(jù)傳輸?shù)募夹g(shù)也由此應(yīng)運(yùn)
    的頭像 發(fā)表于 01-01 12:41 ?4887次閱讀
    如何才能使用<b class='flag-5'>低成本</b><b class='flag-5'>實(shí)現(xiàn)</b>非接觸式的<b class='flag-5'>數(shù)據(jù)</b>交互

    如何低成本實(shí)現(xiàn)AES密碼算法的硬件

    Rijndael算法為高級(jí)加密標(biāo)準(zhǔn)AES。AES密碼算法的加密速度快,安全級(jí)別高,已經(jīng)成為加密各種形式的電子數(shù)據(jù)的實(shí)際標(biāo)準(zhǔn)。目前,針對(duì)AES密碼算法的加密技術(shù)已成為研究熱點(diǎn)。論文提出了一種低成本的AES密碼算法的硬件
    發(fā)表于 03-19 17:16 ?7次下載
    如何<b class='flag-5'>低成本</b><b class='flag-5'>實(shí)現(xiàn)</b>AES密碼算法的<b class='flag-5'>硬件</b>

    泰凌微電子自研藍(lán)牙Mesh解密分析工具操作說明

    在調(diào)試開發(fā)藍(lán)牙Mesh產(chǎn)品時(shí),除了打開設(shè)備端的Log外,有時(shí)還需要用到抓包工具分析空中的Mesh消息格式和交互流程是否正確。目前市面上的抓儀器價(jià)格較貴,在缺少專業(yè)的抓包工具時(shí),可通過泰凌自研的藍(lán)牙
    的頭像 發(fā)表于 05-17 10:43 ?2782次閱讀
    泰凌微電子自研藍(lán)牙<b class='flag-5'>Mesh</b><b class='flag-5'>解密</b>分析工具操作說明

    低成本實(shí)現(xiàn)MCU非接觸式數(shù)據(jù)交互

    近年來,電子技術(shù)、無線通信技術(shù)的蓬勃發(fā)展,出現(xiàn)了各種非接觸式無線數(shù)據(jù)傳輸標(biāo)準(zhǔn)。技術(shù)的不斷推進(jìn)升級(jí),使得人們對(duì)這些標(biāo)準(zhǔn)提出了更加嚴(yán)格的要求,一種低成本實(shí)現(xiàn)非接觸式無線數(shù)據(jù)傳輸?shù)募夹g(shù)也由此
    的頭像 發(fā)表于 08-04 14:26 ?1130次閱讀
    <b class='flag-5'>低成本</b><b class='flag-5'>實(shí)現(xiàn)</b>MCU非接觸式<b class='flag-5'>數(shù)據(jù)</b>交互