留在 Yosemite 上更安全,还是使用禁用 SIP 的 Sierra 更安全?

留在 Yosemite 上更安全,还是使用禁用 SIP 的 Sierra 更安全?

我们可能都知道,El Capitan 引入了 SIP。虽然它是一种出色的安全措施,但它也禁用了我所依赖的许多方便的工具和实用程序 - 例如,无菌以及 Wine 上的一些实用程序。

到目前为止,我一直使用 Yosemite,以便仍然能够在原生支持下使用这些工具。但是,现在 Sierra 已经发布,而我的操作系统落后了两个主要版本,我想权衡一下升级的利弊。也就是说,在 Sierra 上禁用 SIP 是否会让我处于比继续使用 Yosemite 更不安全的境地,或者我是否会承担相同的安全风险?

参数反对禁用 SIP有据可查,所以我想避免这样的回答:“SIP 比拥有你的工具更重要”。假设我的工具是重中之重,那么在什么样的环境中使用它们是最安全的呢?

答案1

  • 坚持使用旧版本的操作系统显然意味着你无法获得各种其他最新版本的安全性改进(更好的 SSL/TLS 加密、Sierra 对 Gatekeeper 处理磁盘映像方式的改进等)。

  • Apple 通常只针对最新的 2 或 3 个操作系统版本发布安全补丁。自 Sierra 发布以来,Yosemite可能继续接收补丁。一段时间。也许。

  • 另一方面,升级并关闭 SIP 意味着您将失去 Yosemite 的 kext 签名要求。这些要求已纳入 El Capitan 中的 SIP,因此当您关闭 SIP 时,这些要求也会消失。

  • 另一方面,有可能部分禁用 SIP,只关闭干扰您工具的部分,同时保持其他部分(例如 kext 签名)处于启用状态。例如,如果您需要 DTrace 工作,但其他 SIP 限制正常,您可以在恢复模式下启动并运行命令csrutil enable --without dtrace

    您可能需要进行实验才能确定需要关闭 SIP 的哪些部分才能使您的工具正常工作。选项包括--without kext、、、、和。您可以使用检查当前状态(尽管这似乎显示的是运行状态,而不是配置的设置,这意味着它在您--without fs重新启动之前不会更新)。您还可以使用将配置清除回默认--without debug值。--without dtrace--without nvram--no-internalcsrutil statuscsrutil clear

    所以这是我的建议:更新,然后对干扰您的工具的 SIP 部分进行手术禁用。

    顺便说一句,这个部分禁用功能没有很好的记录,但我找到了关于它的讨论在 apple.SE 上, 也这里这里, 和这里

相关内容