谷歌安全研究人员在Linux Kernel中发现了一组蓝牙漏洞(BleedingTooth),该漏洞可能允许攻击者进行零点击攻击,运行任意代码或访问敏感信息。
BleedingTooth漏洞分别被命名为CVE-2020-12351,CVE-2020-12352和CVE-2020-24490。其中最严重的漏洞是基于堆的类型混淆漏洞(CVE-2020-12351),被评为高危漏洞 ,CVSS评分达到8.3。
据悉,漏洞存在于BlueZ中,软件栈默认情况下为Linux实现了所有蓝牙核心协议和层。 除Linux笔记本电脑外,它还用于许多消费或工业物联网设备。
受害者蓝牙覆盖范围内的远程攻击者都可以通过目标设备的bd地址来利用此漏洞 。攻击者能够通过发送恶意的l2cap数据包来触发漏洞,导致拒绝服务,甚至执行具有内核特权的任意代码。而此过程中无需用户交互,使得这一漏洞的隐患更大。
此前,Nguyen发布了针对此漏洞的Poc和一个演示视频。
第二个问题是基于堆栈的信息泄漏,即CVE-2020-12352。该漏洞影响Linux内核3.6及更高版本。远程攻击者知道受害者的bd地址后可以检索包含各种指针的内核堆栈信息,这些指针可用于预测内存布局并绕过KASLR。此外,还可能窃取其他有价值的信息,例如加密密钥。
第三个漏洞CVE-2020-24490则是位于net / bluetooth / hci_event.c的基于堆的缓冲区溢出,影响Linux内核4.19及更高版本。
如果受害机器配备了Bluetooth 5芯片并且处于扫描模式,则近距离的远程攻击者可以广播扩展的广告数据,并导致拒绝服务或可能在受害机器上执行具有内核特权的任意代码。恶意或易受攻击的蓝牙芯片(例如,受BLEEDINGBIT或类似漏洞破坏的芯片 )也可能触发该漏洞。
参考来源