蓝牙出血:基于Linux物联网设备的“零点击”内核漏洞
2020-10-15
来源:安全牛
近日,英特尔和Google敦促用户尽快将Linux内核更新到5.9版或更高版本。
Google和英特尔警告说,Linux蓝牙协议栈BlueZ发现一个高危漏洞,该协议栈为基于Linux的物联网(IoT)设备提供核心蓝牙层和协议的支持。
根据Google的说法,此漏洞影响支持BlueZ的5.9之前的Linux内核版本的用户。BlueZ是根据GNU通用公共许可(GPL)发行的一个开源项目,具有BlueZ内核,该内核从2.4.6版本开始就已成为正式Linux内核的一部分。
该漏洞被Google称为“血牙”,可以由未经身份验证的本地攻击者通过特定输入进行“零点击”攻击,从而在目标设备上提升权限。
根据Google在Github上发布的一篇文章:
一个远程攻击者只需知道受害者的蓝牙地址就可以发送恶意的l2cap (逻辑链路控制和适配层协议)数据包,实施拒绝服务攻击或带有内核特权的任意代码执行,恶意蓝牙芯片也可以触发此漏洞。
该漏洞(CVE-2020-12351)的CVSS评分为8.3,属于较为严重的漏洞。它特别是源于net/bluetooth/l2cap_core.c中基于堆的类型混淆。类型混淆漏洞是一个特定的漏洞,可能导致超出范围的内存访问,并可能导致攻击者可以利用的代码执行或组件崩溃。在这种情况下,问题在于Linux内核中的BlueZ实现中没有对用户提供的输入进行验证。
在BlueZ上曾投入巨资的英特尔在周二的公告中给出了安全方案,建议用户将Linux内核更新至5.9版或更高版本。
根据英特尔的安全公告,“BlueZ中的潜在安全漏洞可能允许特权升级或信息泄露。”“BlueZ正在发布Linux内核修复程序,以解决这些潜在漏洞。”
英特尔还针对两个影响BlueZ的中等严重性漏洞发布了修复程序,这两个缺陷均源于访问控制不当。这包括CVE-2020-12352,它可以使未经身份验证的用户潜在地通过近距离访问启用信息公开。
另一个漏洞(CVE-2020-24490)可允许未经身份验证的用户通过近距离访问启用拒绝服务。远程攻击者可以利用此漏洞进行短距离攻击,他们可以广播扩展的广告数据发起拒绝服务攻击,或者在受害机器上以内核特权执行任意代码(如果它们配备了Bluetooth 5芯片)。
Google的安全工程师Andy Nguyen发现了此漏洞,功不可没,并将在Google的安全博客上提供更多详细信息。