什么是 SIP?
SIP(System Integrity Protection,系统完整性保护)是 Apple 在 macOS El Capitan(10.11)中引入的一项安全功能,用于限制对系统关键目录和进程的修改,即使以 root 权限运行也无法绕过。
对于黑苹果用户,在某些调试、驱动注入或系统定制场景下,可能需要临时或永久关闭 SIP。
⚠️ 重要警告
关闭 SIP 会降低系统安全性! 仅建议在必要时操作,并在完成后重新启用 SIP。请确保你了解风险并已备份重要数据。
通过 OpenCore 关闭 SIP 的步骤
- 打开你的 OpenCore 配置文件
config.plist(通常位于 EFI 分区的EFI/OC/目录下)。 - 使用 ProperTree、PlistEdit Pro 或 Xcode 打开该文件。
- 导航到
NVRAM → Add → 7C436110-AB2A-4BBB-A880-FE41995C9F82。 - 找到或创建键
csr-active-config,其值为十六进制数据(Data 类型)。 - 设置
csr-active-config的值以禁用 SIP。常用值如下:
常见 csr-active-config 值
00000000:完全启用 SIP(默认)E7030000:完全禁用 SIP(包括 Kext、Filesystem、Debug、DTrace 等)FF0F0000:更彻底的禁用(某些旧版 macOS 使用)
推荐使用 E7030000(小端序表示 0x000003E7),它会禁用几乎所有 SIP 保护项,适用于大多数黑苹果场景。
示例 config.plist 片段
<key>NVRAM</key>
<dict>
<key>Add</key>
<dict>
<key>7C436110-AB2A-4BBB-A880-FE41995C9F82</key>
<dict>
<key>csr-active-config</key>
<data>5wMAAA==</data> <!-- 即 E7030000 的 Base64 编码 -->
</dict>
</dict>
</dict>
注意:5wMAAA== 是 E7030000 的 Base64 表示。你也可以直接在支持十六进制输入的 plist 编辑器中输入 E7 03 00 00。
验证 SIP 是否已关闭
重启进入 macOS 后,打开终端(Terminal)并运行:
csrutil status
如果返回 System Integrity Protection status: disabled.,说明 SIP 已成功关闭。
如何重新启用 SIP?
只需将 csr-active-config 的值改回 00000000(Base64 为 AAAAAA==),或直接删除该键,然后重启即可恢复默认 SIP 状态。