他们在 Linux 中检测到可以通过蓝牙利用的漏洞

漏洞

如果被利用,这些漏洞可能允许攻击者未经授权访问敏感信息或通常会导致问题

最近有消息爆出e 在 Linux 内核中发现了两个漏洞 (已在 CVE-2022-42896 下编目),这可能 可用于编排远程代码执行 在内核级别通过蓝牙发送特制的 L2CAP 数据包。

有人提到 第一个漏洞 (CVE-2022-42896) 在访问已释放的内存区域时发生 (释放后使用)在 l2cap_connect 和 l2cap_le_connect_req 函数的实现中。

失败 创建通道后利用 通过回调 称呼 新连接,它不会阻止它的设置,但会设置一个计时器(__set_chan_timer), 超时后,调用函数 l2cap_chan_超时 并在不检查功能中通道工作完成的情况下清理通道 l2cap_le_connect*。

默认超时为 40 秒,并且假定竞争条件不会在如此长的延迟内发生,但事实证明,由于 SMP 驱动程序中的另一个错误,可以立即调用计时器并达到竞争条件。

l2cap_le_connect_req 中的问题可能导致内核内存泄漏,在 l2cap_connect 中您可以覆盖内存内容并运行您的代码。 攻击的第一个变体可以使用蓝牙 LE 4.0(自 2009 年起)执行,第二个变体使用蓝牙 BR/EDR 5.2(自 2020 年起)。

Linux 内核函数 l2cap_connect 和 l2cap_le_connect_req net/bluetooth/l2cap_core.c 中存在发布后漏洞,可能允许通过蓝牙远程(分别)执行代码和内核内存泄漏。 如果远程攻击者离受害者很近,则可以通过蓝牙执行泄漏内核内存的代码。 我们建议更新过去的提交 https://www.google.com/url https://github.com/torvalds/linux/commit/711f8c3fb3db61897080468586b970c87c61d9e4

第二个漏洞 检测到的(已在 CVE-2022-42895 下编目)是 由 l2cap_parse_conf_req 函数中的残余内存泄漏引起, 它可用于通过发送特制的配置请求来远程获取有关内核结构指针的信息。

关于这个漏洞,提到 在 l2cap_parse_conf_req 函数中,使用了 l2cap_conf_efs 结构, 之前未为其分配的内存初始化, 并通过操作 使用 FLAG_EFS_ENABLE 标志, 有可能实现旧数据的包含 包装中的电池。

FLAG_EFS_ENABLE 通道标志而不是 remote_efs 变量 决定是否应该使用 l2cap_conf_efs efs 结构和 可以在不实际发送 EFS 配置数据的情况下设置 FLAG_EFS_ENABLE 标志 并且,在这种情况下,未初始化的 l2cap_conf_efs efs 结构 将被发送回远程客户端,从而泄露有关 内核内存的内容,包括内核指针。

该问题仅发生在内核所在的系统上 它是使用 CONFIG_BT_HS 选项构建的(默认情况下禁用,但在某些发行版上启用,如 Ubuntu)。 成功的攻击还需要通过管理界面将 HCI_HS_ENABLED 参数设置为 true(默认情况下不使用)。

针对这两个发现的漏洞,已经发布了运行在Ubuntu 22.04上的利用原型,演示了远程攻击的可能性。

要进行攻击,攻击者必须在蓝牙范围内; 无需事先配对,但计算机上的蓝牙必须处于活动状态。 对于攻击,知道受害者设备的 MAC 地址就足够了,这可以通过嗅探确定,或者在某些设备上,根据 Wi-Fi MAC 地址计算得出。

最后值得一提的是 发现了另一个类似的问题 (CVE-2022-42895) 在 L2CAP 控制器中 它可以在配置信息包中泄漏内核内存内容。 第一个漏洞出现于 2014 年 3.16 月(内核 2011),第二个漏洞出现于 3.0 年 XNUMX 月(内核 XNUMX)。

对于那些有兴趣跟踪分布修正的人,他们可以在以下页面上进行: DebianUbuntuGentoo的RHELSUSEFedora .


发表您的评论

您的电子邮件地址将不会被发表。 必填字段标有 *

*

*

  1. 负责资料:AB Internet Networks 2008 SL
  2. 数据用途:控制垃圾邮件,注释管理。
  3. 合法性:您的同意
  4. 数据通讯:除非有法律义务,否则不会将数据传达给第三方。
  5. 数据存储:Occentus Networks(EU)托管的数据库
  6. 权利:您可以随时限制,恢复和删除您的信息。