原来,苹果一直在给自家应用开防火墙绿灯

自废“特权”

贾浩楠 发自 凹非寺
量子位 报道 | 公众号 QbitAI

去年10月被曝出的macOs“特权”漏洞,终于被苹果修复了。

其实,要不是苹果昨天“低调”更新macOs Big Sur系统Beta版的细节被扒出,绝大部分普通用户还不知道,苹果一直在为自家的应用开防火墙特权。

原来,苹果一直在给自家应用开防火墙绿灯

Hacker News上相关消息讨论激烈

也就是说,在这次更新之前,任何第三方防火墙,都无法监控拦截苹果官方应用的所有后台行为。

而且,除了可能损害用户知情和隐私权,这样的设置,还可能带来安全风险。

“果二代”逃避监管,“特权”大行其道

苹果给自家应用开的绿灯,是长期关注苹果OS的开发者比较熟悉的ContentFilterExclusionList,相关情况去年10月就被曝光。

不少用户都给自己的Mac安装了第三方的防火墙应用,而苹果,针对这些情况推出了用户模式网络扩展框架。

原来,苹果一直在给自家应用开防火墙绿灯

在这个框架下,Mac上的50多种官方应用,比如AppStore,会获得防火墙“豁免权”,任何后台的数据交换和执行行为都不会被第三方防火墙监控,更不用说拦截了。

可以通过检查/System/Library/Frameworks/NetworkExtension.framework/Versions/Current/Resources/Info.plist文件(查找键“ ContentFilterExclusionList”)来查看豁免列表:

原来,苹果一直在给自家应用开防火墙绿灯

而且,据国外长期从事苹果系统安全研究,同时也是本次更新细节的爆料者Patrick Wardle说,苹果的这些措施仅在开发者社区被大家熟知。

因为,ContentFilterExclusionList早就存在,但苹果从未明确告知用户。

尽管苹果的一系列操作至今没有曝出有关隐私、安全的“大新闻”,但Patrick Wardle还是给出了如何利用这一机制攻击苹果设备的例子。

防火墙不能阻断流量,那它还有什么用?

恶意软件是否可以滥用这些“被豁免”的应用,产生可以偷偷绕过防火墙的网络流量呢?

不幸的是,答案是肯定的!很容易就能找到途径来利用这些漏洞。

原来,苹果一直在给自家应用开防火墙绿灯

Patrick Wardle将Lulu和Little Snitch(第三方防火墙)设置为阻止运行Big Sur的Mac上的所有外发流量后,运行一个小型脚本。

脚本自动与苹果公司豁免的一个应用程序进行交互,毫不费力地到达成他设置的命令,控制了服务器。

原来,苹果一直在给自家应用开防火墙绿灯

脚本“要求”一个受信任的苹果应用将产生的网络流量发送到一个攻击者控制的服务器,并可以(ab)利用这个来获取文件。

而且由于流量来自受信任的项目,它永远不会被通过防火墙……意味着所谓防火墙,是100%“瞎”的。

苹果“自废”特权

从去年10月这个漏洞被曝出之后,开发者们就不断向苹果反映这个问题。

于是,最近更新的macOS 11.2 beta 2中,ContentFilterExclusionList,终于被移除了。

而类似LuLu这样的第三方防火墙,现在可以监控并阻断Mac上所有应用的数据流。

原来,苹果一直在给自家应用开防火墙绿灯

苹果修复漏洞的做法得到了网友的一致称赞,但也有人指出了苹果操作系统存在的其它问题。

比如,使用M1芯片的Mac在登录状态下,始终保持着一个硬件序列号链接的TLS与苹果服务器通信。

原来,苹果一直在给自家应用开防火墙绿灯

即使你不使用iCloud、App Store、iMessage或FaceTime,并且关闭了所有分析诊断功能的情况下,也是如此。

而且,UI界面根本没法禁用。

这意味着苹果拥有每个M1序列号的粗略位置跟踪记录(由于客户端IP的GeoIP)。

当你打开App Store应用时,这个序列号也会被发送,如果你登录账号的话,还会与你的Apple ID(邮箱/手机)关联。

原来,苹果一直在给自家应用开防火墙绿灯

苹果有可能知道你什么时候离开家,什么时候到办公室,或者到其它城市,而这一些都是在用户没有开启定位功能的情况下发生的,

这位网友还说,不光是Mac,在所有使用iOS的设备上都是这样的。

眼下对于macOS的更新是非常必要的,用户乐于见到自动自发为用户隐私着想的行为。

原来,苹果一直在给自家应用开防火墙绿灯

但要完全争取用户的合法权益,还需要更多普通用户向大科技公司施压。

总之今后要还有很长的路要走。

除了“果二代”特权,macOS 11中,还有哪些让你忍不住要吐槽的地方?

版权所有,未经授权不得以任何形式转载及使用,违者必究。