BLEEDINGBIT漏洞分析报告是怎么样的,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。
0x00 CVE-2018-16986
原理
BLE设备在LL层有5种状态,分别为 待机状态(standby)没有连接任何设备,没有传输和发送数据;广播状态(Advertiser/advertising);周期性广播;扫描状态(Scanner/scanning)主动寻找正在广播的设备;触发状态(Initiator/initiating):主动发起连接;连接状态(connected) 连接完成。
状态机如下:
主设备和从设备开始连接时,从设备从待机状态进入广播态,周期性发送广播包(advertising packets)。主设备会扫描从设备发送的广播包,对接收到的广播包进行处理。如需连接,主设备会主动发起连接从设备。连接完成后,主从设备都会进入连接态,进行数据通信。
广播包的的包结构如下:
其中长度域标识广播包数据载荷的长度,合法值为6 ~ 37。此取值范围由BLE协议所决定,但是6比特数的取值最大范围为64。 如果协议栈并未对广播包分配大于64字节的内存,且在接收到广播包时未判断长度域的有效性,就可能会造成缓存区的溢出。
研究人员可能构造了长度域非法的广播包,并利用了缓存区溢出漏洞进行攻击。
首先,攻击者发送多个合法广播包,这些包将被存储在目标设备的存储器上。这些包不是有害的,但它们包含稍后将由攻击者调用的代码。
接下来,攻击者发送溢出数据包,这个包使芯片从长度域得到的需要分配内存空间比它实际需要的空间要大,从而触发了内存溢出。泄漏的存储器包含函数指针——指向特定代码段的内存,攻击者可以利用这些代码段指向在攻击的前一阶段发送到易受攻击芯片的代码。
威胁描述
距离受限。需要攻击者在蓝牙广播包覆盖范围内攻击。
只对主设备有效。由于漏洞是主设备在扫描广播时缓存溢出造成的,研究人员也并未披露从设备在接收扫描请求包或连接请求包时也会有此漏洞,因此该漏洞并不会对从设备造成影响。目前绝大多数BLE设备都是作为从机使用,该漏洞对于作为主机的设备和有角色切换应用的设备有较大威胁。
影响范围
CC2640(非 R2版本)和CC2650,且协议栈为V2.2.1或更早版本
CC2640R2F ,协议栈为simpleLink CC2640R2 SDK 1.00.00.22 (BLE-STACK 3.0.0)或更早版本的使用者
CC1350,协议栈为SimpleLink CC13x0 SDK version 2.20.00.38 (BLE-STACK 2.3.3) 或更早版本
缓解措施
TI已经更新协议栈,目前版本为V2.2.2。
使用CC2640(非 R2版本)和CC2650,且协议栈为V2.2.1或更早版本的使用者,建议将协议栈更新到V2.2.2
使用CC2640R2F ,协议栈为simpleLink CC2640R2 SDK 1.00.00.22 (BLE-STACK 3.0.0)或更早版本的使用者,建议将协议栈更新到SimpleLink CC2640R2F SDK version 1.30.00.25 (BLE-STACK 3.0.1) 或更高版本。
使用CC1350,协议栈为SimpleLink CC13x0 SDK version 2.20.00.38 (BLE-STACK 2.3.3) 或更早版本的使用者,建议将协议栈更新到SimpleLink CC13x0 SDK version 2.30.00.20 (BLE-STACK 2.3.4)或更高版本。
0x01 CVE-2018-7080
该漏洞针对于Aruba的Access Point 300 系列产品,该系列产品使用了TI 的BLE芯片并应用了芯片提供的OAD(Over the Air firmware Download)功能。
原理
OAD功能实际是为了芯片的固件升级而预留的后门。
TI的ODA分为安全的ODA和非安全的ODA两种。 安全的ODA指新下载的固件作为OAD过程的一部分进行身份验证。
Aruba的Access Point 300系列产品中,只应用了硬编码的密码对OTA过程进行保护,并未对下载的固件进行身份认证。研究人员发现通过Aruba官方下载的的固件或连接硬件可以恢复出硬编码密码,并且通过此密码访问BLE设备。
威胁描述
危害性较大。使用TI BLE芯片,应用了ODA功能且未对升级固件进行身份认证的产品可能会受到攻击。
影响范围
CC2642R
CC2640R2
CC2640
CC2650
CC2540
CC2541
Aruba
AP-3xx and IAP-3xx series access points
AP-203R
AP-203RP
ArubaOS 6.4.4.x prior to 6.4.4.20
ArubaOS 6.5.3.x prior to 6.5.3.9
ArubaOS 6.5.4.x prior to 6.5.4.9
ArubaOS 8.x prior to 8.2.2.2
ArubaOS 8.3.x prior to 8.3.0.4
看完上述内容,你们掌握BLEEDINGBIT漏洞分析报告是怎么样的的方法了吗?如果还想学到更多技能或想了解更多相关内容,欢迎关注编程网行业资讯频道,感谢各位的阅读!