Trollstore es una aplicación encarcelada permasignada que puede instalar permanentemente cualquier IPA que abra en ella.
Funciona debido a un error AMFI/Coretrust donde iOS no verifica correctamente las firmas de código de los binarios en los que hay múltiples firmantes.
Versiones compatibles: 14.0 Beta 2 - 16.6.1, 16.7 RC (20h18), 17.0
Para instalar Trollstore, consulte las guías en iOS.CFW.Guide
16.7.x (excluyendo 16.7 RC) y 17.0.1+ nunca serán compatibles (a menos que se descubra un tercer error Coretrust, lo cual es poco probable).
Cuando hay disponible una nueva actualización de Trollstore, aparecerá un botón para instalarlo en la parte superior en la configuración de la estación de trollas. Después de tocar el botón, Trollstore descargará automáticamente la actualización, la instalará y se respring.
Alternativamente (si algo sale mal), puede descargar el archivo trollstore.tar en versiones y abrirlo en Trollstore, Trollstore instalará la actualización y la respring.
Las aplicaciones instaladas desde Trollstore solo se pueden desinstalar desde Trollstore, toque una aplicación o deslizarla hacia la izquierda en la pestaña 'Aplicaciones' para eliminarla.
El error Coretrust utilizado en Trollstore es suficiente para instalar aplicaciones "Sistema", esto se debe a que Frontboard tiene una verificación de seguridad adicional (llama libmis) cada vez antes de que se inicie una aplicación de usuario. Desafortunadamente, no es posible instalar nuevas aplicaciones de "sistema" que permanezcan a través de una recarga de caché de iconos. Por lo tanto, cuando iOS recarga el caché de iconos, todas las aplicaciones instaladas en trollstore, incluida la tienda de trollas en sí, volverán al estado de "usuario" y ya no se lanzarán.
La única forma de trabajar en torno a esto es instalar un ayudante de persistencia en una aplicación de sistema, este ayudante se puede usar para volver a registrar Trollstore y sus aplicaciones instaladas como "sistema" para que sean lanzados nuevamente, una opción para esto está disponible en Trollstore ajustes.
En iOS 14 de jailbreak, cuando se usa Trollhelper para la instalación, se encuentra en /aplicaciones y persistirá como una aplicación de "sistema" a través de las recargas de caché de iconos, por lo tanto, Trollhelper se usa como el ayudante de persistencia en iOS 14.
A partir de la versión 1.3, Trollstore reemplaza el esquema de URL del sistema "Apple-Magnifier" (esto se hace para que las detecciones de "jailbreak" no puedan detectar Trollstore como podrían si Trollstore tuviera un esquema de URL único). Este esquema de URL se puede utilizar para instalar aplicaciones directamente desde el navegador, o para habilitar JIT desde la propia aplicación (solo 2.0.12 y superior), el formato es el siguiente:
apple-magnifier://install?url=<URL_to_IPA>
apple-magnifier://enable-jit?bundle-id=<Bundle_ID>
En los dispositivos que no tienen Trollstore (1.3+) instalados, esto solo abrirá la aplicación Magnifier.
Los binarios dentro de una IPA pueden tener derechos arbitrarios, fingirlos con LDID y los derechos que desee ( ldid -S<path/to/entitlements.plist> <path/to/binary>
) y Trollstore preservarán los derechos cuando los renunciarán con El certificado raíz falso en la instalación. Esto le brinda muchas posibilidades, algunas de las cuales se explican a continuación.
iOS 15 en A12+ ha prohibido los siguientes tres derechos relacionados con la ejecución de un código sin firmar, son imposibles de obtener sin un bypass de PPL, las aplicaciones firmadas con ellos se bloquearán en el lanzamiento.
com.apple.private.cs.debugger
dynamic-codesigning
com.apple.private.skip-library-validation
Su aplicación puede ejecutarse sin manipular utilizando uno de los siguientes derechos:
< 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 />
El tercero se recomienda si aún desea un contenedor de sandbox para su aplicación.
También es posible que necesite el derecho de aplicación de la plataforma para que estos funcionen correctamente:
< key >platform-application</ key >
< true />
Tenga en cuenta que el derecho de aplicación de la plataforma causa efectos secundarios, como algunas partes del sandbox, se vuelven más estrictas, por lo que es posible que necesite derechos privados adicionales para eludir eso. (Por ejemplo, luego necesita un derecho de excepción para cada clase de cliente de usuario de IOKIT a la que desea acceder).
Para que una aplicación con com.apple.private.security.no-sandbox
y platform-application
para poder acceder a su propio contenedor de datos, es posible que necesite el derecho adicional:
< key >com.apple.private.security.storage.AppDataContainers</ key >
< true />
Cuando su aplicación no está en arena, puede generar otros binarios con POSIX_Spawn, también puede generar binarios como root con el siguiente derecho:
< key >com.apple.private.persona-mgmt</ key >
< true />
También puede agregar sus propios binarios a su paquete de aplicaciones.
Luego puede usar la función de pisos de reproducción en tsutil.m para generar el binario como raíz.
TF_PLATFORM
/ CS_PLATFORMIZED
)CS_PLATFORMIZED
)TF_PLATFORM
, un bypass PAC de usuarios y un nivel de confianza PMAP)Para compilar Trollstore, asegúrese de que se instale TheOS. Además de asegurarse de que Brew esté instalado e instale Libarchive de Brew.
@alfiecg_dev: encontró el error Coretrust que permite que Trollstore funcione a través de PatchDiffing y trabajó en la automatización del bypass.
Google Threat Analysis Group: encontró el error de Coretrust como parte de una cadena de spyware en el flujo y lo informó a Apple.
@Linushenze: encontró el bypass InstallD utilizado para instalar Trollstore en iOS 14-15.6.1 a través de Trollhelperota, así como el error Coretrust original utilizado en Trollstore 1.0.
Presentación de Fugu15
Escribe en el primer error de Coretrust con más información.