Shadow屏蔽越狱

Shadow

iOS屏蔽越狱检测

兼容性

iOS 8 – iOS 16或更高,支持Dopamine-RooHideDopaminePalera1nUnc0verCheckra1nOdysseyChiemraTaurine、Electra等越狱工具

已知问题(Known Issues)

XinaA15

不提供任何支持,但 Shadow 应该仍然可以正常工作。

palera1n

iOS 16.2+ 上,Substitutehook C 函数 时似乎存在问题。
在这种情况下,请尝试使用 fishhook hook 库,或者用 ElleKit 替代 Substitute(?)。

故障排查(Troubleshooting)

Shadow 并不能保证在所有应用上都能正常工作,但你可以尝试以下方法:

  1. 使用不同的 hook 库
    • fishhook 是一个安全的选择,但它在可 hook 的范围上有一定限制。
  2. 禁用除 Shadow 之外的所有插件
    • 你可以使用 Choicylibhooker Configurator 在每个应用上单独配置。
  3. 使用 vnodebypass(如果你的系统支持)。
  4. 如果你使用半越狱 / 无根越狱
    • 请重启进入 正常的非越狱状态(jailed iOS),然后再尝试使用该应用。
  5. 尝试其他绕过插件
    • 最好使用 针对某个应用专用的绕过插件
    • 注意不要同时启用多个绕过插件,以免发生冲突。
  6. 降级应用
    • 有时候,新版本应用会引入更先进的检测手段,降级到旧版本可能有帮助。

安装(Installation)

  • 在软件源列表找到jjolanoOpa334软件源并添加到Sileo/Cydia后搜索Shadow安装

请在安装之前删除其他包含Shadow的无关软件源

如果你是RootHide越狱,请使用下列方法安装Shadow

  • 在软件源列表找到外星源Choicy软件源并添加到Sileo/Cydia后搜索安装

使用方法(Usage)

安装完成后,你可以在 系统设置(Settings) 应用中找到 Shadow 的设置页面。

  • 你可以配置 全局默认设置
  • 也可以为 单个应用添加独立的配置。

Shadow 提供了对 绕过强度(bypass strength) 的细粒度控制,所以在设置里会有很多选项可供调整。

配置项介绍

Hook 库基础 Hook推荐 Hook额外 Hook危险 Hook 以及每个子选项的作用和使用建议。

一、Hook 库 (Hook Libraries)

在 Shadow 或 KernBypass 中,Hook 库决定了注入方式。

选项说明适用情况风险
fishhookFacebook 开源的底层符号重绑定工具,直接在动态链接层 Hook 系统函数。性能高,但不兼容所有检测。推荐 rootless 越狱
Cydia SubstrateSaurik 出品,最传统的 Hook 框架,大多数老插件依赖它,兼容性最好,但有时被检测到。推荐 rootful 越狱中等

建议

  • 如果你在 iOS 14+ 且是 rootless 越狱 → 选 fishhook
  • 如果是传统 unc0ver、checkra1n 越狱 → 选 Cydia Substrate
  • 如果遇到 App 崩溃或失效,可尝试切换 Hook 库。

二、基本 Hook (Basic Hooks)

最核心、最常用的屏蔽选项,大多数 App 检测都会走这里。

选项作用使用建议
文件系统 (Filesystem)阻止 App 检测 /var/jb//Library/MobileSubstrate 等越狱目录。建议开启
动态库 (Dynamic Libraries)隐藏已加载的越狱动态库,比如 .dylib.so建议开启
URL 处理 (URL Handling)阻止 App 检测 cydia://sileo:// 等 URL Scheme。建议开启
环境变量 (Environment Variables)一些 App 检测 DYLD_INSERT_LIBRARIES 等环境变量判断越狱,开启后会屏蔽这些变量。建议开启

总结:基本 Hook 全部建议开启,几乎不会影响系统稳定性。

三、推荐 Hook (Recommended Hooks)

这是 Shadow 作者推荐的选项,适合大多数人。

选项功能适用场景风险
检测框架 (Detection Frameworks)专门针对常见检测库,比如 App 内置的越狱检测 SDK。大部分金融类、支付类 App
Foundation 框架 (Foundation Frameworks)Hook NSFileManagerNSBundle 等高级 API,拦截对越狱文件的检测。银行 App 常用中等
M1 Mac 伪装 (M1 Mac Spoofing)让 App 误以为自己在 Apple Silicon Mac 上运行,从而跳过 iOS 检测逻辑。大部分仅限 iOS 检测的 App

建议
如果你想最大程度兼容支付类、银行类 App,这三项建议全部开启。

四、额外 Hook (Extra Hooks)

这些是可选的进阶 Hook,针对更复杂的检测方法。

选项功能建议
Mach 服务查找 (Mach Service Lookup)拦截 App 通过 bootstrap_look_up() 获取系统服务,防止发现越狱服务。如果 App 崩溃,建议关闭
运行时符号查找 (Runtime Symbol Lookup)阻止 App 动态解析符号,比如 dlsym 获取私有 API。开启可提高安全性
Objective-C 方法 (Objective-C Methods)隐藏被 Hook 的 Objective-C 方法,防止检测到越狱插件注入。建议开启
反调试方法 (Anti-Debugging Methods)拦截 App 内部的反调试逻辑,避免被强制退出。银行类、游戏类强烈建议开启
私有系统调用 (Private Syscalls)阻止 App 调用内核级私有 API 检测越狱状态。建议开启
应用枚举 (Application Enumeration)防止 App 检测已安装的越狱工具,比如 Cydia.appFilza.app建议开启

五、危险 Hook (Dangerous Hooks)

这些功能非常强大,但可能导致系统崩溃或 App 异常。

选项功能风险建议
增强应用沙盒 (Enhanced App Sandbox)让 App 以更严格的沙盒运行,防止它探测外部目录。中等一般关闭,除非必要
底层文件处理 (Low-level File Handling)Hook 内核级文件访问,防止检测 /bin/sh/usr/libexec 等目录。除非常规 Hook 失效,否则不要开
隐藏可执行内存 (Hide Executable Memory)隐藏越狱插件在内存中的代码段,防止游戏和支付 App 检测。除非玩防作弊游戏,否则不建议开
隐藏插件的 Objective-C 类 (Hide Plugin ObjC Classes)隐藏所有越狱插件注册的 ObjC 类,防止 App 扫描越狱插件。谨慎开启,可能导致崩溃
动态库加载器 (Dynamic Loader)Hook dlopen()dyld 相关方法,阻止 App 检测动态库。如果 App 崩溃,先关闭

六、最佳实践推荐配置

类型是否开启说明
Hook 库fishhook / Substrate根据越狱类型选择
基本 Hook全部开启最安全
推荐 Hook 全部开启提高兼容性
额外 Hook按需开启先开“反调试”“ObjC 方法”
危险 Hook 慎用除非必要,不建议开

概述

  • 如果你想要最稳的配置:
    基本 Hook + 推荐 Hook 按需开
  • 如果要对付金融类 App(如支付宝、微信支付、银行):
    再额外开启 反调试 + Objective-C 方法 + 动态库隐藏
  • 如果是游戏(王者、PUBG、防作弊 App):
    → 必须考虑开启部分 危险 Hook,尤其是隐藏可执行内存。