Dispositivo de investigación de seguridad de Apple
El dispositivo de investigación de seguridad de Apple es un iPhone especialmente configurado para permitir a los investigadores de seguridad llevar a cabo investigaciones en iOS sin tener que anular o desactivar las funciones de seguridad de la plataforma del iPhone. Con este dispositivo, un investigador puede realizar una carga lateral de contenido que ejecuta permisos equivalentes a la plataforma y, así, llevar a cabo una investigación sobre una plataforma que se asemeja a la de los dispositivos de producción.
Para ayudar a garantizar que los dispositivos de usuario no se vean afectados por la política de ejecución del dispositivo de investigación de seguridad, los cambios en la política se implementan en una variante de iBoot y en la colección de kernel de arranque, que no arrancan en hardware de usuario. La instancia de iBoot de investigación comprueba si hay un nuevo estado de configuración y entra en un bucle de kernel panic si se ejecuta en un hardware no configurado para investigación.
El subsistema cryptex permite a un investigador cargar una caché de confianza personalizada y una imagen de disco que contiene el contenido correspondiente. Se ha implementado una serie de medidas detalladas de defensa diseñadas para garantizar que este subsistema no permite la ejecución en dispositivos del usuario:
launchd
no carga la lista de propiedades launchd decryptexd
si detecta un dispositivo normal del usuario.cryptexd
se anula si detecta un dispositivo normal del usuario.AppleImage4
no vende el valor de antirreproducción usado para verificar un cryptex de investigación en un dispositivo normal del usuario.El servidor de firmas rechaza personalizar una imagen de disco de cryptex para un dispositivo que no se encuentre en una lista autorizada explícita.
Para respetar la privacidad del investigador de seguridad, solo se envían a Apple las mediciones (por ejemplo, los hashes) de los ejecutables o de la caché del kernel y los identificadores de dispositivos de investigación de seguridad durante la personalización. Apple no recibe el contenido del cryptex que se carga en el dispositivo.
A fin de evitar que un tercero malicioso intente enmascarar un dispositivo de investigación como un dispositivo de usuario para engañar a un objetivo para que lo use a diario, el dispositivo de investigación de seguridad presenta las siguientes diferencias:
El dispositivo de investigación de seguridad solo arranca mientras se carga. Para ello, puede utilizarse un cable Lightning o un cargador Qi compatible. Si el dispositivo no está cargando durante el arranque, entrará en el modo de recuperación. Si el usuario empieza a cargar el dispositivo y lo reinicia, arrancará con normalidad. Una vez que cargue el XNU, ya no será necesario que el dispositivo esté cargándose para seguir funcionando.
El texto Dispositivo de investigación de seguridad se muestra debajo del logotipo de Apple durante el arranque de iBoot.
El kernel XNU arranca en modo traza.
El dispositivo tiene grabado un mensaje en el lateral: “Property of Apple. Confidential and Proprietary. Call +1 877 595 1125”.
Las siguientes son medidas adicionales que están implementadas en el software que aparece después del arranque:
El texto Dispositivo de investigación de seguridad se muestra durante la configuración del dispositivo.
El texto Dispositivo de investigación de seguridad se muestra en la pantalla bloqueada y en la app Ajustes.
El dispositivo de investigación de seguridad ofrece a los investigadores las siguientes funciones que un dispositivo de usuario no proporciona. Los investigadores pueden:
Realizar una carga lateral de código ejecutable en el dispositivo con autorizaciones arbitrarias en el mismo nivel de permiso que los componentes del sistema operativo Apple.
Inicializar los servicios al arrancar.
Utilizar contenido persistente entre reinicios.
Usar
research.com.apple.license-to-operate
para permitir que un proceso depure cualquier otro proceso del sistema, incluidos los procesos del sistema.El espacio de nombres
research.
solo es respetado por la varianteRESEARCH
de la extensión del kernel AppleMobileFileIntegrity; cualquier proceso con esta autorización se termina en un dispositivo del cliente durante la validación de la firma.Personalizar y restaurar la caché de un kernel personalizado.