개요
Dopamine은 다양한 iOS 버전과 기기 아키텍처를 지원하는 오픈 소스 반탈옥(semi-jailbreak) 도구입니다. 사용자는 컴퓨터 없이도 플러그인을 설치하고 시스템 동작을 커스터마이징할 수 있습니다. 이 프로젝트는 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
FAQ (2)
문제 해결왜 Dopamine 3.0.10이 iOS 26 beta (23A5276f)에서 'unsupported'라고 표시되나요?
이는 3.0.9와 3.0.10 사이에 버전 확인 로직이 변경되지 않았음에도 불구하고 iOS 26 베타 빌드가 지원되지 않는 것으로 잘못 표시되는 Dopamine 3.0.10의 알려진 버그입니다. 이 문제는 Dopamine 3.0.11(PR #1038을 통해)에서 수정되었으므로 3.0.11 이상으로 업데이트하세요. 3.0.10에서 임시 해결 방법으로는 여전히 iOS 26 베타를 올바르게 탈옥할 수 있는 Dopamine 3.0.9로 다운그레이드하세요.
문제 해결Dopamine 3.0.9가 설치된 iOS 26에서 Frida가 샌드박스가 적용된 앱에 인젝션되지 않으면서 EXC_BREAKPOINT, EXC_GUARD 또는 커널 패닉이 발생하는 문제는 어떻게 해결하나요?
이 문제는 iOS 26에서 Frida용 Dopamine 3.0.9의 손상된 hookd 호환성 shim으로 인해 발생합니다. hookd trampoline은 x29/x30만 저장하므로 Frida가 보존할 것으로 예상하는 레지스터를 덮어쓸 수 있으며, 스캐너는 svc #0x80만 패치하고 Frida의 별도 brk #1337 page-plan 요청은 처리하지 못합니다. 그 결과 매핑된 에이전트가 EXC_BREAKPOINT로 트랩되고, frida-server가 EXC_GUARD로 종료될 수 있으며, 실행 가능한 메모리 작업이 재부팅/커널 패닉을 유발할 수 있습니다.
수정/업데이트 방법:
1. 실제 vm_write 및 VM 보호 오류 보존을 포함하여 Frida용 버전 지정 memory-hook/code-patching API를 노출하는 hookd 변경 사항이 포함된, 3.0.9보다 최신의 Dopamine/basebin 빌드를 사용하세요.
2. syscall 명령어 재작성에 의존하는 대신 탈옥이 제공하는 hookd 메모리 훅을 호출하는, 이에 맞는 Frida/frida-gum 빌드를 사용하세요.
3. 업데이트된 Frida 서버 패키지를 설치하고 다시 시작하세요:
dpkg -i frida_<version>_iphoneos-arm64.deb
4. 버전이 일치하는 Frida 클라이언트로 연결하고, Calculator와 같은 샌드박스 앱을 포그라운드에서 실행한 다음 해당 PID에 attach하세요.
관련 변경 사항은 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 조합에 포함될 때까지 Frida 17.9.10과 함께 Dopamine 3.0.9에서 샌드박스 앱에 attach하는 것은 피하세요. 이 실패로 인해 기기가 재부팅되고 탈옥이 해제될 수 있습니다. SpringBoard와 같은 일부 시스템 프로세스에 대한 attach는 여전히 작동할 수 있지만, 이는 샌드박스 앱에 대한 우회 방법이 아닙니다.