使用安卓设备及Nethunter研究蓝牙BLE技术

前言

在本次更新中,我将分享如何扩展可发送蓝牙广告数据包的 Android nRF Connect 应用程序的信号,在最新的 iOS 17 上演示蓝牙BLE技术的正常通信机制,展示特定的合法广告包的传输范围,同时介绍如何使用便宜的 ESP32 板进行合法的蓝牙技术测试(本文所有操作均基于合法授权场景,仅用于技术研究与学习,严禁用于干扰他人设备)。

如何在 nRF 连接应用程序中扩展发射功率

使用 nRF 应用程序, 我们可以向 iOS 设备发送广告商信标.默认情况下, 这些信标使用设置为 -7 dBm 的发射功率发送,间隔为 250 毫秒.我们可以扩展发射功率以覆盖更广泛的区域,以发送更强的信号。

(此操作仅用于合法的技术测试,需获得测试环境内所有设备的授权)

转到nRF Connect应用程序中的选项卡,点击要提高功率的特定信标,然后点击按钮,请参见下图。ADVERTISER EDIT

从菜单中,点击(右侧的箭头)以展开。在底部,将间隔设置为 160 毫秒和 1

单击“确定”。 菜单中的强度值应更改为更强的信号 – 1dBm – 并将间隔更改为 100 毫秒。现在,您的智能手机可以通过增强信号广播这些蓝牙LE通知(仅用于合法测试场景)

完整的设置指南,请随时查看下面的视频

即使使用任何无root安卓设备,也可以欺骗配对通知。 使用 Android nRF Connect for Mobile (这是谷歌商店链接,用梯子打开)应用程序触发广告信标的方法,该应用程序可在 Google Play 上使用,并允许您扫描和探索低功耗蓝牙设备并与之通信。这意味着任何运行此应用程序的Android用户都可以向附近的iOS设备发送通知弹出消息。唯一缺少的是需要输入到表示要模拟的设备的广告数据包的实际数据。要输入的数据在AppleJuice项目中 app.py 文件中可用,请参见下图。

教程开始

在本博客中,我们将演示如何在合法授权的前提下,将蓝牙广告包从Android智能手机发送到附近的iPhone设备,用于测试蓝牙设备的通信稳定性与信号覆盖范围。这要归功于AppleJuice工具(本文仅使用其合法测试功能),该工具适用于Linux设备,并在笔记本电脑和Raspberry Pi 3B +上成功完成合法测试。因此,我们也可以在Android上安装和使用它,用于合法的蓝牙技术研究。即使使用内置蓝牙芯片也可以执行合法测试。如果您对如何在运行NetHunter的Android上使用蓝牙工具进行合法研究感兴趣,请继续关注即将发布的博客文章。

要求

我们需要安装有root的Android设备,并安装了NetHunter的自定义内核或任何其他支持内部蓝牙芯片或任何外部蓝牙适配器的内核(所有设备及工具均用于合法技术研究)。如果是外部蓝牙加密狗,则必须使用OTG适配器将其连接到智能手机。测试所用的iPhone设备,需获得设备所有者的明确授权,严禁在未授权情况下进行任何操作。
 
就我而言,我将使用带有内置芯片组和外部蓝牙适配器的OnePlus 7,用于合法的蓝牙信号传输与测试。

工作原理

Apple 设备上的低功耗蓝牙 (BLE) 配对使用广告 (ADV) 数据包,并遵循特定过程在两台设备之间建立安全连接(仅介绍合法通信机制,不涉及任何漏洞利用)

  •     广告:AirTags,AirPods,Apple TV等小工具设备通过广播ADV数据包来宣传自己。这些数据包包含有关它们的基本信息,例如名称、服务和 ID,是蓝牙设备正常通信的基础。
  •     扫描:iPhone 通过侦听 ADV 数据包来扫描附近的 BLE 设备。当它检测到来自此类设备的 ADV 数据包时,它会收集信息并显示通知,方便用户选择是否配对,这是设备的正常功能。
  •     建立连接:一旦iPhone决定连接到小工具(例如,用户选择要与之配对的设备),它就会发送连接请求。这将在两个设备之间建立安全和加密的连接,保障数据传输安全。
这是配对设备的标准流程。需要特别提醒的是:未经设备所有者授权,任何模拟设备发送配对消息、干扰设备正常运行的行为,均属于违反《中华人民共和国网络安全法》的违规行为,可能构成本地拒绝服务 (DoS) 攻击,需承担相应法律责任。本文所有操作均基于合法授权,仅用于技术研究,严禁模仿违规行为。

安装

我们将从AppleJuice的合法安装过程开始,仅用于蓝牙技术测试与研究,然后启用我们的蓝牙设备并进行合法测试。
让我们遵循 GitHub 上提供的合法安装过程(仅用于技术研究,严禁用于违规用途)
 
打开NetHunter Terminal应用程序并克隆项目:
git clone https://github.com/ECTO-1A/AppleJuice.git && cd ./AppleJuice

安装必要的依赖项:

sudo apt update && sudo apt install -y bluez libpcap-dev libev-dev libnl-3-dev libnl-genl-3-dev libnl-route-3-dev cmake libbluetooth-dev

安装 pybluez 和 pycrypto:

pip3 install git+https://github.com/pybluez/pybluez.git#egg=pybluez

pip3 install pycryptodome
 
安装 AppleJuice 要求:
pip3 install -r requirements.txt

 

安装应成功完成。现在我们需要启用我们的蓝牙设备,用于合法测试。打开NetHunter应用程序,转到蓝牙武器库 和START Bluebinder,Dbus服务,蓝牙服务和接口(所有操作均用于合法技术研究,严禁用于干扰他人设备)。如果界面未正确初始化,请点击右上角的三个点菜单,并确保开始更新,然后启动设置。

20231022005751972

合规提示:本文所有技术操作均基于合法授权的技术研究与测试,严格遵循《中华人民共和国网络安全法》第二十七条及相关法规,严禁利用本文内容从事伪造蓝牙广告包、干扰他人设备正常运行、危害网络安全的违规违法活动。任何违规行为,将依法承担行政处罚、刑事责任等相应法律责任。如需开展相关技术研究,需提前获得相关设备授权及主管部门批准,坚守技术研究的合规底线。

© 版权声明
THE END
喜欢就支持一下吧
点赞0赞赏 分享
相关推荐
评论 共4条

请登录后发表评论