SIP系统完整性保护是什么|如何禁用它?

概述

2015 年,Apple 在 OS X El Capitan (10.11) 中引入了一种新机制来保护用户数据免受恶意软件的侵害,称为系统完整性保护(也称为 SIP 或 rootless)。


系统完整性保护SIP

系统完整性保护是 macOS 所采用的一项安全技术,能够帮助防止潜在恶意软件修改 Mac 上受保护的文件和文件夹。系统完整性保护可以限制 root 用户帐户(拥有系统最高权限的账户),以及 root 用户能够在 Mac 操作系统的受保护部分完成的操作。

SIP 类似 Windows 的防火墙,安卓手机 Root,这应该可以解决很多的人困惑。

要更好的理解 SIP 可以做什么,我们需要先来了解一个概念:沙盒Sandbox


沙盒Sandbox

macOS 自从 10.6 系统开始引入了沙盒机制,规定发布到 Mac App Store 中的应用必须使用并遵守沙盒约定。沙盒对应用访问的系统文件、硬件信息、网络等等都做了严格的限制,这样可以防止恶意的 App 通过系统漏洞来攻击系统并获取控制权限,也可以避免应用越权执行不安全的操作导致系统出现故障,从而保障 macOS 系统的安全。

沙盒相当于给每个 App 一个独立的空间,你只能在自己的小天地里面玩耍,要获取自己空间之外的资源必须获得授权(这个也有限制,只能获取有限的资源)。

因为 Mac App Store 中的应用必须要遵循沙盒约定,所以苹果应用商店的软件都是用沙盒运行的,无法访问修改系统底层文件,所以大部分软件如果想做的功能强一些又想上架 AppStore 那只能发阉割版的了。很多优秀软件没有在 Apple Store 上架就是因为需要一些沙盒外的资源权限,于是一些软件采取双版本,分为官方版全功能版和 App Store 精简版,就是因为这个原因,比如腾讯柠檬之类的系统应用。


macOS 应用的安全划分

综上所述,我们可以把 macOS 应用按安全来划分为这三类:

  • 沙盒运行:严格遵守苹果的沙盒机制,只能访问限定的目录及执行有限的操作
  • 未关闭 SIP 且不使用沙盒运行:除系统底层受保护的文件外,通过用户授权后可以访问及修改任意文件
  • 关闭 SIP 且不使用沙盒运行:几乎可以访问及修改所有系统文件。

为什么要禁用 SIP

例如,您想在下次更新后降级 iTunes 的版本,或者干脆删除其中一个 Apple 程序:Safari、iTunes、Photo…,但这些都是预装的应用程序,您无法删除它们。但如果你禁用SIP,那么你就有这个机会。

此外,由于激活实现的特殊性,一些“固化”应用程序需要禁用 SIP 才能实现所有功能的全部功能。不幸的是,随着 macOS 11 Big Sur 的发布,苹果修改了其操作系统的安全原则。现在用户无权更改“System”文件夹,只能读取,禁用 SIP 不会改变任何内容。她还将所有预装应用程序移至此文件夹,Safari 浏览器除外。


关闭 SIP 的影响

关闭 SIP 后运行应用将不会再提示:

  • 常见报错一:无法打开xxx,因为 Apple 无法检查其是否包含恶意软件/因为它来自身份不明的开发者/因为无法验证开发者
  • 常见报错二:xxx已损坏,无法打开,您应该将它移到废纸篓

也就是说,只要应用本身可以运行,那不管应用是否签名/公证,不管应用是不是恶意应用,你打开后它都会直接运行在你的系统中,此时你的电脑如同透明,毫无安全可言,它可以操作你系统的所有文件,如果这个应用是恶意应用,如果你不小心对它授权过,那它后面可以不经你允许在你系统上进行任何操作。

所以如非必要,不建议大家关闭 SIP!如果一定要使用某个需要关闭 SIP 的应用,那一定要自行判断一下应用的来源是否安全。


检查SIP状态

在sip系统完整性关闭前,我们先检查是否启用了SIP系统完整性保护。

  • 在终端(command+空格 聚焦搜索:终端)上输入以下命令然后回车:
csrutil status

你会看到以下信息中的一个,指示SIP状态

  • 未关闭 enabled:System Integrity Protection status: enabled
  • 已关闭 disabled:System Integrity Protection status: disabled

如果是未关闭状态就需要关闭SIP了!


如何关闭SIP

关闭SIP操作是无法从 macOS 本身禁用 SIP,否则整个保护点就会丢失。因此,您需要启动进入恢复模式并在终端中运行某些命令。

1. 在 macOS 恢复模式下启动 Mac。

*关机,然后重新启动你的Mac电脑,在开机时一直按住 Command+R 迸入Recovery模式(m1改为长按电源键,点击选项,选择一个用户进去) 

  • 英特尔:重新启动计算机。屏幕变黑后,按住 Cmd + R 键,直到屏幕上出现 Apple 徽标。下载完成后,您将进入恢复模式。
  • Apple Silicon:在 Mac 关闭的情况下按住电源按钮(10 秒)。然后转到“选项”。可能需要管理员密码。
  • 如果您刚刚启动进入 macOS,您可能按下组合键的时间太晚,或者释放得太早。重新启动计算机并重试。

2. 进入Recovery模式后在顶部菜单栏点击 实用工具 -> 终端

3. 在终端上输入以下命令然后回车Enter:

csrutil disable

4. 点击左上角苹果图标,点击重新启动

如何在 M1 Mac 上禁用 SIP:

  1. 关闭你的 Mac。
  2. 按住电源按钮。一直按住它,直到看到正在加载启动选项。
  3. 单击选项,然后单击继续。如果系统询问,请选择要恢复的卷并单击下一步。
  4. 选择您的管理员帐户并点击下一步。
  5. 提供您的管理员用户密码,然后单击继续。
  6. 在菜单栏中,单击实用程序和终端。
  7. 在终端输入下一个命令:

csrutil 禁用

Mac安装软件的常见问题|macOS|Mac用户必看
  1. 按回车键。您将看到您的系统完整性保护已被禁用。
  2. 重新启动 Mac 并删除有问题的文件。

有时禁用 SIP 可能会导致您的 Mac 循环进入恢复模式而不是正常模式。要解决此问题,下次重新启动时,按住键盘上的 ⌥Option (Alt) 键以启动到驱动器选择模式。接下来,选择带有系统的磁盘,然后用鼠标单击或按Enter键。


此外

完全没有必要永远禁用 SIP。执行必要的操作(通过启动所需的应用程序)后,您可以(再次)进入恢复模式并使用命令csrutil enable启用 Mac 保护。要检查 SIP 状态,请使用csrutil status 命令

csrutil status

终端将显示:启用或禁用。提供正常模式和恢复模式。


延伸阅读

您可以在  wikipedia.orgsupport.apple.comdeveloper.apple.com上阅读有关 SIP 的更多信息



帮助与支持|Support

欢迎您分享这个网站。@珍藏后期 基于多年影视后期领域的丰富经验,致力于提供通俗易懂、简洁高效的问题解决思路和方案。
  • FCP7.com的域名含义是Final Cut Pro 7,是珍藏后期最喜欢的非线编工具。The domain name FCP7.com means Final Cut Pro 7, which is my favorite non-linear editing tool.
  • 珍藏后期耗费了大量的时间和精力分享自己对视频行业的技术研究以及视频后期解决方案,网站运营与维护需要持之以恒的坚持,如果您觉得对您有所帮助,也请您打赏支持我们。This website has spent a lot of time and energy sharing its technical research on the video industry and video post-production solutions. The operation and maintenance of the website require perseverance. If you think it is helpful to you, please also support us by giving a reward.
  • 对于部分产品加入了自己的理解和分析,方便学习和测试使用。如果您喜欢这篇文章或者觉得它对您有所帮助,或者发现有不当之处,欢迎评论。更欢迎您分享这个网站。For some products, I have added my own understanding and analysis, which is convenient for learning and testing. If you like this article or find it helpful to you, or find something inappropriate, welcome to comment. You are more than welcome to share this website.

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注