BIAS:蓝牙冒充攻击


BIAS:蓝牙冒充攻击

文章插图
 
安恒海特实验室对此研究如下文:https://www.anquanke.com/post/id/206624
蓝牙(BR/EDR)是用于数十亿设备的无线通信的普遍技术 。蓝牙标准包括传统认证过程和安全认证过程 , 从而允许设备使用长期密钥来相互认证 。在配对和安全连接建立期间将使用这些过程 , 以防止冒充攻击 。在本文中证明了蓝牙规范包含一些漏洞 , 这些漏洞使得可以在建立安全连接期间执行冒充攻击 。此类漏洞包括缺乏强制性的相互身份验证 , 过于宽松的角色切换以及身份验证过程降级 。
攻击符合蓝牙标准 , 因此对于任何符合标准的蓝牙设备均有效 , 无论蓝牙版本、安全模式(例如安全连接)、设备制造商和实施细节如何 。攻击是隐性的 , 因为蓝牙标准不需要通知终端用户有关身份验证过程的结果或缺少相互身份验证 。为了确认BIAS攻击是否可行 , 成功地对来自主要硬件和软件供应商的31个蓝牙设备(28个独特的蓝牙芯片)进行了攻击 , 并实施了所有主要的蓝牙版本 , 包括苹果、高通、英特尔、赛普拉斯、博通、三星和CSR 。
 
0x01 Introduction蓝牙是用于低功率无线网络的普遍技术 。蓝牙提供了蓝牙BR/EDR和蓝牙低功耗(BLE)无线堆栈 。在本文中 , 重点介绍蓝牙BR/EDR , 并将其称为蓝牙 。蓝牙已在数十亿种设备中部署 , 例如手机 , IoT设备 , 笔记本电脑 , 汽车 , 医疗设备和工业设备 。蓝牙受蓝牙特殊利益组织(SIG)的监管 , 该组织维护并审查了蓝牙标准 。该标准定义的安全机制中的单个漏洞会转化为数十亿个可利用的设备 。
蓝牙标准规定了一种安全架构 , 该架构在链路层中提供机密和完整性 。首先要配对的两个从未见过的蓝牙设备要建立安全连接 。配对时 , 设备同意并验证长期密钥 。然后 , 此密钥用于派生用于后续安全连接的会话密钥 。期望两个蓝牙设备配对一次并安全地连接多次 。在安全连接建立期间 , 设备必须验证其在配对时建立的长期密钥的拥有 。
在最近的一篇论文中研究人员表明 , 即使受害者已经配对 , 蓝牙安全连接的建立也容易受到中间人攻击 。但是 , 在该工作中 , 攻击假定存在要闯入的合法安全连接 。攻击者无法针对隔离的蓝牙设备 , 因为攻击者无法在安全连接建立过程中证明受害者的长期密钥已被拥有 。
在本文中演示了蓝牙标准包含的漏洞 , 攻击者可以利用该漏洞冒充设备并与受害者建立安全连接 , 而无需拥有被冒充的设备和受害者共享的长期密钥 。攻击针对安全连接建立的身份验证阶段 。特别是攻击了用于旧版安全连接(LSC)的旧式身份验证过程和用于安全连接(SC)的安全身份验证过程 。当受害者和被冒充的设备配对时 , 攻击者不必在场 , 也不需要观察它们之间的任何先前通信 。
将展示如何利用已识别的漏洞在传统身份验证过程和安全身份验证过程上进行主-从冒充攻击 。即使受害者使用蓝牙最强的安全模式(例如SSP和安全连接) , 攻击也能起作用 。攻击针对标准的蓝牙身份验证程序 , 因此可有效攻击任何符合标准的蓝牙设备 。
 
0x02 BackgroundA.蓝牙BR/EDR蓝牙基本速率扩展数据速率(BR/EDR) , 在本节中称为蓝牙 , 是一种用于低功耗和短距离通信的无线技术 , 它是无线个人区域网(PAN)的事实上的标准 。物理层的蓝牙使用具有跳频扩展频谱的2.4 GHz ISM频段 。两个连接的蓝牙设备以固定的时间间隔在79个通道之间跳转 , 每个通道的带宽为1MHz 。蓝牙允许使用自适应跳频来减轻对范围内无线设备的干扰 。蓝牙网络由一个主设备组成 , 该主设备可以协调和同步最多七个从设备 。在建立异步无连接(ACL)物理链路之后 , 即在基带寻呼之后 , 两个设备可以随时切换主-从(master/slave)角色 。
蓝牙规范可免费获得 , 由蓝牙SIG维护 。该规范将蓝牙协议栈分为主机和控制器两个主要组件 , 并指定了它们的标准接口 , 即主机控制器接口(HCI) 。该标准还指定了一种HCI协议 , 主机使用该协议将命令发送到控制器 , 控制器将事件发送到主机 。主机由设备主操作系统实现 , 而控制器由设备蓝牙芯片的固件实现 。该标准未提供主机和控制器的参考实现 , 并且蓝牙供应商通常使用其专有实现 。


推荐阅读