苹果自己的程序绕过大苏尔的防火墙和 VPN

在 macOS Big Sur 中,Apple 已停止允许第三方开发人员进行某些类型的内核扩展。这是预料之中的事情,苹果公司开始在卡塔琳娜州发出警告。到目前为止,这并不适用于所有内核扩展,而仅适用于那些已经收到 Apple 新”系统扩展”格式对应版本的内核扩展。它是一种更安全、更稳定的技术,用于构建驱动程序和其他以前作为内核扩展运行的东西。

到目前为止,这些是处理防病毒、各种防火墙、输入设备和 USB 配件驱动程序的内核扩展。其他不太常见的品种仍然可以使用,例如虚拟文件系统。将来,我们的想法是完全删除内核扩展。

这对于开发者来说意味着巨大的变化,但在某些领域对于我们用户来说也是如此。这尤其适用于使用防火墙(如 Little Snitch)、VPN 服务和网络限制器(如 Tripmode)的用户(仅允许来自选定程序的流量,这样您就不会浪费有限的数据,例如,当您通过手机或 4g 连接时)调制解调器)。

Apple自己的进程绕过过滤器

像Little Snitch和Tripmode这样的程序现在必须使用苹果公司所谓的网络扩展API,这是一个编程接口,可以提供对先前存在于相应内核扩展中的大部分功能的访问。但苹果没有向任何人提及的是,存在一个存在例外的系统,这意味着这些程序无法再精确过滤所有网络连接。

您可以在文件 /System/Library/Frameworks/NetworkExtension.framework/Versions/A/Resources/Info.plist 中的”ContentFilterExclusionList”键下查看列表本身。在这里,我们可以找到与 FaceTime、iMessage、iCloud、地图和 Siri 等相关的进程。

如果您想亲自测试一下,请按照以下步骤操作:安装 Lulu 2.0 来自Patrick Wardle(您必须批准系统扩展的安装以及该程序过滤您的互联网流量)。然后在设置中激活阻止模式。这应该会关闭所有流量,并且它适用于浏览器、邮件等。现在尝试打开 FaceTime 并呼叫某人 – 它可以工作并且无法被阻止。

Tripmode 的开发者 David Dudok de Wit 在 Medium 有关该发现及其对用户造成的后果。特别是对于 Tripmode,这意味着您无法再阻止 iCloud 同步和 Messages 下载新消息,包括图片和电影等重型附件。结果是该程序或多或少变得毫无用处,因为它的主要目的是阻止所有互联网,除了当您拥有昂贵的连接时最重要的互联网。

《Little Snitch》的开发者 Objective Development 也是撰写了这一发现 – 并且他们理所当然地认为苹果会纠正它。 (更新,2021 年 1 月 14 日:Apple 确实似乎有 在 macOS Big Sur 11.2 beta 2 中删除了白名单豁免。)

小飞贼

VPN 也是如此

VPN 程序也无法再使用 Big Sur 中的内核扩展。一些开发人员已经转向新的系统附加变体。但就像防火墙一样,苹果的例外也适用于 VPN 连接。这意味着 FaceTime 和许多其他内置进程可以继续从您的公共 IP 地址与 Apple 服务器进行通信,而不是通过您连接到的 VPN 隧道。

我们自己的研究表明,这似乎仅适用于使用新系统扩展来实现自己的 VPN 协议的 VPN 程序。例如,当我们通过系统设置手动设置的 macOS 内置 L2TP / IPsec 进行连接时,Mac App Store 流量将通过 VPN 以及第三方程序 Windscribe 发送。 Windscribe 可以通过各种协议进行连接,例如 IKEv2 和 OpenVPN。它们不运行内核扩展,但仍照常工作。

不利于安全和隐私

从安全角度来看,这一变化是严重的。如果像 Little Snitch 和 Lulu 这样的防火墙无法看到或阻止来自您计算机的流量,您就不能依靠此类程序来防止恶意软件和欺诈程序”打电话回家”。 Objective See 的 Patrick Wardle 已经发现了一种技术,允许恶意程序从任何 Apple 的豁免进程中获取流量,以从计算机发送数据,正如他在这条推文中解释的那样: