Trollstore - это приложение, перенаписанное в тюрьме, которое может навсегда установить любое IPA, которое вы открываете в нем.
Он работает из -за ошибки AMFI/Coretrust, где iOS неправильно проверяет кодовые подписи двоичных файлов, в которых есть несколько подписчиков.
Поддерживаемые версии: 14.0 Бета 2 - 16.6.1, 16,7 RC (20h18), 17.0
Для установки Trollstore обратитесь к руководствам по адресу ios.cfw.guide
16.7.x (за исключением 16,7 RC) и 17.0.1+ никогда не будут поддерживать (если не обнаружится третья ошибка Coretrust, что маловероятно).
Когда будет доступно новое обновление Trollstore, кнопка для установки будет отображаться в верхней части в настройках Trollstore. После нажатия на кнопку Trollstore автоматически загрузит обновление, установите и Respring.
В качестве альтернативы (если что -то пойдет не так), вы можете загрузить файл Trollstore.tar в релизы и открыть его в Trollstore, Trollstore установит обновление и Respring.
Приложения, установленные из Trollstore, могут быть удалены только от самого Trollstore, нажмите на приложение или проведите его влево на вкладке «Приложения», чтобы удалить его.
Ошибка Coretrust, используемой в Trollstore, достаточно только для установки приложений «системы», это связано с тем, что Frontboard имеет дополнительную проверку безопасности (она вызывает LIBMIS) каждый раз до запуска пользовательского приложения. К сожалению, невозможно установить новые «системные» приложения, которые остаются через перезагрузку кэша значков. Поэтому, когда iOS перезагружает кэш значков, все установленные приложения Trollstore, включая сам Trollstore, вернутся в состояние «пользователя» и больше не будут запущены.
Единственный способ обойти это - установить вспомогательного помощника в системное приложение, этот помощник может быть использован для перерыва Trollstore и его установленных приложений как «системы», чтобы они снова стали запущенными, опция для этого доступна в Trollstore настройки.
На Jailbroken iOS 14, когда Trollhelper используется для установки, он находится в /приложениях и будет сохраняться в качестве приложения «системы» через перезагрузку кэша значков, поэтому Trollhelper используется в качестве помощника постоянства на iOS 14.
Начиная с версии 1.3, Trollstore заменяет системную схему URL-адреса «Apple-Magnifier» (это делается так, что обнаружение «джейлбрейк» не может обнаружить, как это могло бы, если бы у Trollstore была уникальная схема URL). Эта схема URL может использоваться для установки приложений прямо из браузера или для включения JIT из самого приложения (только 2,0,12 и выше), формат выглядит следующим образом:
apple-magnifier://install?url=<URL_to_IPA>
apple-magnifier://enable-jit?bundle-id=<Bundle_ID>
На устройствах, в которых нет установки Trollstore (1,3+), это просто откроет приложение Magnifier.
Двоичные файлы внутри IPA могут иметь произвольные права, подвести их с LDID и желаемыми правами ( ldid -S<path/to/entitlements.plist> <path/to/binary>
Поддельный корневой сертификат при установке. Это дает вам много возможностей, некоторые из которых описаны ниже.
iOS 15 на A12+ запретил следующие три права, связанные с запуском без знака, их невозможно получить без байпаса 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, вы также можете породить двоичные файлы как корень со следующим правом:
< key >com.apple.private.persona-mgmt</ key >
< true />
Вы также можете добавить свои двоичные файлы в свой пакет приложений.
После этого вы можете использовать функцию SpawnRoot в tsutil.m, чтобы породить двоичный файл в качестве корня.
TF_PLATFORM
/ CS_PLATFORMIZED
)CS_PLATFORMIZED
)TF_PLATFORM
, обход PAC пользователя и обход уровня доверия PMAP)Чтобы скомпилировать Trollstore, убедитесь, что Theos установил. Добавление Убедитесь, что пиво установлен и установите Libarchive от Brew.
@alfiecg_dev - Нашел ошибку Coretrust, которая позволяет Trollstore работать через PatchDiffing и работал над автоматизацией байпаса.
Группа анализа угроз Google-обнаружила ошибку Coretrust как часть цепочки шпионских программ и сообщила об этом Apple.
@Linushenze - Нашел обход InstallD, используемый для установки Trollstore на iOS 14-15.6.1 через Trollhelperota, а также исходную ошибку Coretrust, используемая в Trollstore 1.0.
Фугу15 Презентация
Запись на первой ошибке Coretrust с дополнительной информацией.