在移动设备上检测隐藏/不可见的蓝牙设备

时间:2013-04-04 20:12:21

标签: android bluetooth

我有目标设备的蓝牙mac-id。然而,蓝牙处于隐藏/不可见模式。

两部手机都是机器人。 (非根)。

我做了我的研究并且*我知道*如果我知道mac-id,我可以连接到设备(在大多数情况下),但是我想只扫描接近度而不是连接,即如果目标设备在蓝牙系列,我知道它的mac-id,我可以*只知道它是否接近(或者是松散的,扫描它?)

1 个答案:

答案 0 :(得分:12)

简短的回答是,你无法发现无法发现的蓝牙设备。

undiscoverable mode 中设置设备是制造商实施的一项安全措施,用于防止设备跟踪等滥用行为。这使得标准蓝牙适配器(例如你的)完全无法说明不可见/不可发现的设备是否接近。

然而,事实证明这种安全性并不是最佳的,并且最近已被打破。你可以在这里找到Michael Ossmann关于Ubertooth的工作,这是一个能够检测不可发现设备的小型蓝牙适配器。你可以找到here这是一个很好的演示文稿,使用开源计划甚至buy加密狗构建这个加密狗。

编辑:

通过首先了解他的完整MAC地址,即使他处于不可发现的模式,也可以知道蓝牙设备是否存在。

该技术是尝试 PAGE请求,发送组成所寻找的蓝牙主机MAC标识符的所有6个字节。 PAGE请求允许在知道他的BT ADDR时与蓝牙从属设备连接。处于不可发现模式的设备不响应​​查询扫描(设备发现意图),但它们确实响应页面扫描,该页面扫描由想要连接到另一个先前已知设备的设备使用。

您可以使用Bluesniff执行您想要的操作,这是一个概念的安全证明,可让您发现隐藏的设备。它可能支持页面扫描。

请注意,这应该被视为教育资源,我不鼓励在商业应用程序中进行此类练习。