TrollStore巨魔商店
本网站为微信公众号:心科技,复刻汉化版本的TrollStore(巨魔商店 )
TrollStore官网:https://github.com/opa334/TrollStore
TrollStore 是一个永久签名的监禁应用程序,可以永久安装您在其中打开的任何 IPA。
它之所以有效,是因为AMFI/CoreTrust错误,iOS不会验证用于签署二进制文件的根证书是否合法。
安装巨魔商店
安装指南
版本/设备 | arm64 (A8 - A11) | arm64e (A12 - A15, M1) |
---|---|---|
13.7 及以下 | 不支持(CT 错误仅在 14.0 中引入) | 不支持(CT 错误仅在 14.0 中引入) |
14.0 - 14.8.1 | checkra1n + 巨魔助手 | 巨魔助手OTA (arm64e) |
15.0 - 15.4.1 | 巨魔助手OTA (iOS 15+) | 巨魔助手OTA (iOS 15+) |
15.5 测试版 1 - 4 | 巨魔助手OTA (iOS 15+) | 巨魔助手OTA (iOS 15+) |
15.5 (遥控) | 不支持(CT 错误已修复) | 不支持(CT 错误已修复) |
15.6 测试版 1 - 5 | SSH虚拟硬盘 | 巨魔助手OTA (arm64e) |
15.6 (RC1/2) 及以上 | 不支持(CT 错误已修复) | 不支持(CT 错误已修复) |
此版本表是最终版本表,TrollStore 将永远不会支持此处列出的版本以外的任何内容。不要费心问,如果您的设备版本不受支持,最好忘记TrollStore甚至存在。
更新巨魔商店
当新的巨魔商店更新可用时,安装它的按钮将出现在巨魔商店设置的顶部。点击按钮后,巨魔商店将自动下载更新,安装并重新加载。
或者(如果出现任何问题),您可以在“发布”下下载TrollStore.tar文件并在TrollStore中打开它,TrollStore将安装更新并重新加载。
卸载应用
从TrollStore安装的应用程序只能从TrollStore本身卸载,点击应用程序或在“应用程序”选项卡中向右滑动以将其删除。
持久性助手
TrollStore 中使用的 CoreTrust 错误仅足以安装“系统”应用程序,这是因为每次在用户应用程序启动之前,FrontBoard 都会进行额外的安全检查(它调用 libmis)。不幸的是,无法安装新的“系统”应用程序,这些应用程序通过图标缓存重新加载而保留。因此,当iOS重新加载图标缓存时,包括TrollStore本身在内的所有TrollStore安装的应用程序都将恢复为“用户”状态,并且不再启动。
解决此问题的唯一方法是将持久性帮助程序安装到系统应用程序中,然后可以使用此帮助程序将TrollStore及其已安装的应用程序重新注册为“系统”,以便它们可以再次启动,TrollStore设置中提供了此选项。
在越狱的iOS 14上使用巨魔助手进行安装时,它位于/Applications中,并且将通过图标缓存重新加载作为“系统”应用程序保留,因此TrollHelper在iOS 14上用作持久性助手。
网址方案
从版本1.3开始,TrollStore取代了系统URL方案“苹果放大镜”(这样做是为了让“越狱”检测无法像TrollStore具有唯一URL方案那样检测TrollStore)。此 URL 方案可用于直接从浏览器安装应用程序,格式如下:
apple-magnifier://install?url=<URL_to_IPA>
在没有安装TrollStore (1.3+)的设备上,这将只打开放大镜应用程序。
特征
IPA 中的二进制文件可以具有任意权利,使用 ldid 和您想要的权利 () 假签名,TrollStore 将在安装时使用假根证书重新签名时保留这些权利。这为您提供了很多可能性,其中一些将在下面解释。ldid -S<path/to/entitlements.plist> <path/to/binary>
禁止的权利
A15 + 上的 iOS 12 已禁止以下三项与运行未签名代码相关的权利,如果没有 PPL 绕过,这些权利是不可能获得的,使用它们签名的应用程序将在启动时崩溃。
com.apple.private.cs.debugger
dynamic-codesigning
com.apple.private.skip-library-validation
取消沙盒
您的应用可以使用以下授权之一以非沙盒方式运行:
<key>com.apple.private.security.container-required</key>
<false/>
<key>com.apple.private.security.no-container</key>
<true/>
<key>com.apple.private.security.no-sandbox</key>
<true/>
如果仍需要应用程序的沙盒容器,则建议使用第三个。
您可能还需要平台应用程序授权才能正常工作:
<key>platform-application</key>
<true/>
请注意,平台应用程序授权会导致副作用,例如沙盒的某些部分变得更紧,因此您可能需要额外的私有授权来规避这种情况。(例如,之后您需要为要访问的每个 IOKit 用户客户端类提供例外授权)。
为了使应用具有并能够访问其自己的数据容器,您可能需要额外的权利:com.apple.private.security.no-sandbox
platform-application
<key>com.apple.private.security.storage.AppDataContainers</key>
<true/>
根帮助程序
当您的应用程序未沙盒化时,您可以使用 posix_spawn 生成其他二进制文件,也可以以具有以下权利的 root 身份生成二进制文件:
<key>com.apple.private.persona-mgmt</key>
<true/>
您还可以将自己的二进制文件添加到您的应用程序捆绑包中。
之后,您可以使用 TSUtil.m 中的 spawnRoot 函数以根身份生成二进制文件。
使用巨魔商店无法实现的事情
- 获得适当的平台化 (
TF_PLATFORM
/CS_PLATFORMIZED
) - 生成启动守护进程(需要
CS_PLATFORMIZED
) - 将调整注入系统进程(需要,用户空间PAC旁路和PMAP信任级别旁路)
TF_PLATFORM
评论