查看原文
其他

苹果蓝牙协议的源代码质量都这么差了吗?!研究员找到10个 0day

Thomas Claburn 代码卫士 2022-04-06
 聚焦源代码安全,网罗国内外最新资讯!
编译:奇安信代码卫士团队

苹果用于保护蓝牙外围设备的 MagicPairing协议被曝存在10 0day 漏洞。




德国达姆斯塔特工业大学的研究人员查看了 MagicPairing 协议后发现它在 iOS、macOS 和 PTKit 中的三个实现之间存在10个未披露缺陷且尚未修复。
PTKit 是基于 PTKit 框架的实时操作系统,用于苹果 AirPods 1、2和 Pro,Siri Remote 2,Apple Pencil 2 和 Smart Keyboard Folio 中。虽然并非众人皆知,但得益于苹果的 AirPods 受众覆盖超过一半的全球无线耳机市场而广为传播。
研究员 Dennis Heinze、Jiska Classen 和 Felix Rohrbach 发布论文《MagicPairing:苹果保护蓝牙外围设备的方法 (MagicPairing: Apple’sTake on Securing Bluetooth Peripherals)》中自出,MagicPairing 协议克服了蓝牙设备配对的两个缺点:糟糕的可扩展性和易崩溃的安全模型(如果永久密钥 Link Layer 或 Long-Term Key 受陷则会崩溃)。
尽管如此,研究员指出,MagicPairing 仍然存在一些不太严重的问题,“由于 MagicPairing 用于配对和加密前,因此它提供了庞大的零点击无线攻击面。我们发现所有的实现欧具有不同的问题,包括锁定攻击和可导致百分之百 CPU 负载的拒绝服务。我们在开展通用的无线测试和 iOS 进程内模糊测试时发现了这些问题。”
当两款蓝牙设备连接时,他们生成了用于保护设备真实性、信息完整性和信息机密性的永久密钥。除非用户手动删除取消设备配对,则它一直存在,而且它是获取更短暂的会话密钥的来源。
MagicPairing 将苹果 iCloud 服务加入进来。在每个会话中,它基于特定用户的 iCloud 密钥生成新的永久性密钥,而对永久性密钥的安全改进未改变。研究人员表示MagicPairing 通过对称棘轮算法和经过身份验证的加密来实现这一点。论文指出,“MagicPairing 协议的安全目标似乎是为每次连接提供认证和新的共享密钥。它使用对称棘轮算法和经过身份验证的加密来实现这些目标。”
研究人员使用名为 ToothPicker 的代码执行无线模糊测试和进程内模糊测试,并表示通过蓝牙测试框架 InternalBlue 发布 ToothPicker。



10 0day,代码质量低下


研究人员发现了8个 MagicPairing 和2个 L2CAP 漏洞,它们可导致崩溃、CPU 过载且配对设备关联取消。论文提到在2019年10月20日至2020年2月13日披露了这些漏洞且漏洞尚未修复。他们在上周日发布了 PoC 代码。
其中一名研究员 Jiska Classen 认为苹果之所以不采取行动,可能是因为这些漏洞的严重程度不够高,“他们修复可导致远程代码执行后果的漏洞的速度非常快”。
论文指出,苹果在 iOS 和 macOS 中的 MagicPairing 实现的日志信息和 macOS Bluetooth 守护进程 bluetoothd 函数名称中存在大量拼写错误。论文认为“错误根据栈的不同而不同,每个栈可能是由不同的开发人员实现的。虽然拼写错误和实现中的缺陷之间并不直接相关,但这让人认为代码并未仔细审查,开发工作很可能是外包完成的。”
苹果尚未置评。
Dennis Heinze 通过使用自创的 ToothPicker 工具发现了这些低质量代码中的漏洞。Classen 指出从中可以认为苹果并未对该蓝牙协议的大部分栈进行模糊测试。不过一些部分也获得良好测试。很可能这是由负责某些协议的不同团队造成的。
然而,Classen 认为对于某些协议而言,开源无线测试工具就可以进行测试,其他安全研究员可能已经借此仔细检查苹果的蓝牙栈。她指出,苹果未修复只需稍加检查就能发现的 bug 让她惊讶。不过这可能和研究员的论文因为 WiSec 会议改为线上举行而提前发布有关。尽管如此,苹果获悉会议时间变更的消息后并未阻止研究员发布论文。但即使是已存在多时的bug也并未修复,这一点很可能和论文发布时间变更没有丝毫关系。
完整论文请见:
https://arxiv.org/pdf/2005.07255.pdf










推荐阅读

某 iOS 零点击 0day 漏洞已存在8年之久且正遭利用?苹果称正在调查并将推出补丁

Zerodium 称 iOS exploit 过剩,将暂停收购且买价或下跌

奇安信开源卫士免费提供开源组件安全检测服务

《应用软件安全编程指南》国标发布 奇安信代码卫士已全面支持



原文链接
https://www.theregister.co.uk/2020/05/18/apples_bluetooth_flaws/





题图:Pixabay License


本文由奇安信代码卫士编译,不代表奇安信观点。转载请注明“转自奇安信代码卫士 www.codesafe.cn”。


奇安信代码卫士 (codesafe)

国内首个专注于软件开发安全的

产品线。

    点个 “在看” ,加油鸭~

您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存