前言
在本次更新中,我将分享如何扩展可以发送配对消息的 Android nRF Connect 应用程序的信号,在最新的 iOS 17 上演示 AppleJuice,展示哪些特定的广告包可以触发最远 50 米的弹出窗口,甚至使用便宜的 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 文件中可用,请参见下图。
视频教程:
从安卓触发Windows BLE垃圾邮件
在nRF连接和选项卡中,您需要通过点击右下角的加号来创建。单击 ,选择 。在第一行中输入自定义名称,在第二个前缀中输入。在前缀后,以十六进制格式输入通知消息。参见图 。例如,要显示 ,请输入值 。若要显示自定义消息,可以使用 ASCII 到十六进制转换器。ADVERTISER
New advertising packet
ADD RECORD
Manufacturer Data
0006
030008
Hack the
planet
030008224861636B2074686520706C616E657422
效果
在nethunter中使用
演示
教程开始
在本博客中,我们将演示如何将这些弹出窗口从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决定连接到小工具(例如,用户选择要与之配对的设备),它就会发送连接请求。这将在两个设备之间建立安全和加密的连接。
这是配对设备的标准流程。但是,问题是周边地区的任何Apple设备都会收到此类配对通知。正因为如此,我们可以模拟我们的Android设备来发送这些配对消息,并使附近的iOS设备相信我们是例如AirPods。因此,这可能被视为本地拒绝服务 (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服务,蓝牙服务和接口。如果界面未正确初始化,请点击右上角的三个点菜单,并确保开始更新,然后启动设置。
要确保检测到您的适配器,请使用以下命令列出应用程序中的可用适配器:hcitool
NetHunter Terminal
hcitool dev
因此,检测到两个设备,内部 () 和外部 () 适配器,请参见图 2。hci0
hci1
如果您使用的是内部适配器,则应使用接口。如果您有外部适配器,则需要使用。苹果汁默认使用接口。如果要更改它,则需要编辑脚本并将正确的接口 (1) 分配给变量,如图 3 所示。hci0
hci1
hci0
app.py
dev_id
返回 AppleJuice 目录并授予脚本的可执行权限:app.py
chmod +x app.py
用法
运行脚本以列出可以使用以下方法进行欺骗的可用设备:
python3 app.py
要选择其中一个选项,请将参数与分配的小工具的数量一起使用。在下面的命令中,我将使用值欺骗 AirPods。-d
1
python3 app.py -d 1
因此,您附近任何启用了蓝牙的 iPhone 或 iPad 都会收到配对请求,如图 5 所示。当您单击“连接”时,不会执行进一步的操作,这意味着对iOS设备没有任何伤害。
最重要的是,我创建了一个快速的python脚本,它将每5秒在所有可用设备中循环一次,以使附近的iOS设备感到困惑。您可以在博客开头看到演示视频。
iOS
此脚本将每 5 秒在 AppleJuice 提供的所有可用小工具设备中循环一次,以使附近的 iOS 设备接收配对弹出窗口。
用法
将 dos.py 脚本复制到与 AppleJuice 相同的目录中。 运行:python3 dos.py
预防
对于默认启用的广告协议,您无能为力,因此您唯一能做的就是在不需要蓝牙时禁用蓝牙。
结论
在我的测试中,我无法欺骗列表中的所有设备,或者可能存在一些错误。当我决定为另一台设备发送配对消息时,目标iPhone仍然收到来自先前选择的设备的请求。但是,这不是一个大问题。这些通知即使在锁定的屏幕上也会显示。
内部蓝牙芯片有一些范围限制,因此即使使用外部和可拆卸天线,使用外部适配器也可能实现更好的弹出区域覆盖范围。
因此,发送这些请求不会对iOS设备造成伤害,但它们可能很容易被惹恼,因为我们可以将其视为本地拒绝服务(DoS)攻击。
2、本站永久网址:https://www.xheishou.com
3、本网站的文章部分内容可能来源于网络,仅供大家学习与参考,如有侵权,请联系站长进行删除处理。
4、本站一切资源不代表本站立场,并不代表本站赞同其观点和对其真实性负责。
5、本站一律禁止以任何方式发布或转载任何违法的相关信息,访客发现请向站长举报
6、本站资源大多存储在云盘,如发现链接失效,请联系我们我们会第一时间更新。
暂无评论内容