项目简介
Dopamine 是一款开源的半越狱工具,支持多种 iOS 版本和设备架构。用户无需电脑即可安装插件和定制系统行为。项目采用 MIT 许可证。
README 预览
\n\n# Dopamine\n\nA rootless semi-untethered jailbreak for iOS 15.0 - 17.3.1 (arm64e), iOS 15.0 - 18.7.1, 26.0 - 26.0.1 (A12/A13) and iOS 15.0 - 18.7.1 (arm64). More details will follow here soon.\n\nPlease note that all issues related to version support will be deleted without response.\n\nOfficial website / download: https://ellekit.space/dopamine/\n
常见问题 (2)
故障排除为什么 Dopamine 3.0.10 在 iOS 26 beta (23A5276f) 上显示 'unsupported'?
这是 Dopamine 3.0.10 中的一个已知 bug:iOS 26 beta 版本被错误地标记为不受支持,尽管 3.0.9 和 3.0.10 之间的版本检查逻辑并没有任何变化。该问题已在 Dopamine 3.0.11 中修复(通过 PR #1038),因此请更新到 3.0.11 或更高版本。作为 3.0.10 上的临时解决方案,可以降级到 Dopamine 3.0.9,它仍然可以正常越狱 iOS 26 beta。
故障排除如何修复 Frida 在搭载 Dopamine 3.0.9 的 iOS 26 上无法注入沙盒应用,并导致 EXC_BREAKPOINT、EXC_GUARD 或内核恐慌的问题?
这是由 Dopamine 3.0.9 在 iOS 26 上针对 Frida 的 hookd 兼容 shim 存在缺陷所导致的。hookd trampoline 仅保存 x29/x30,可能会破坏 Frida 期望被保留的寄存器;其扫描器仅修补 svc #0x80,并不处理 Frida 单独的 brk #1337 page-plan 请求。因此,被映射的 agent 会因 EXC_BREAKPOINT 触发陷阱,frida-server 可能因 EXC_GUARD 被杀死,而可执行内存操作可能触发重启/内核 panic。
修复/更新路径:
1. 使用比 3.0.9 更新的 Dopamine/basebin 构建,其中包含为 Frida 暴露带版本控制的 memory-hook/code-patching API 的 hookd 更改,包括保留真实的 vm_write 以及 VM 保护错误。
2. 使用与之匹配的 Frida/frida-gum 构建,该构建调用越狱环境提供的 hookd 内存钩子,而不是依赖 syscall 指令重写。
3. 安装更新后的 Frida server 软件包并重启它:
dpkg -i frida_<version>_iphoneos-arm64.deb
4. 使用版本匹配的 Frida 客户端连接,在前台启动一个沙盒应用(例如 Calculator),并附加到其 PID。
相关更改是 Dopamine 的 PR "Expose a memory hook API for Frida" 和 "hookd: Preserve write and protection errors",以及 frida-gum 的更改 "darwin: Use jailbreak-provided memory hooks"。在发布的 Dopamine/Frida 组合中包含这些修复之前,请避免在 Dopamine 3.0.9 上使用 Frida 17.9.10 附加到沙盒应用,因为该故障可能重启设备并丢失越狱状态。附加到某些系统进程(例如 SpringBoard)可能仍然可行,但这并不能作为沙盒应用的变通方案。