it-swarm-es.com

Detalles de cifrado de iOS

Siguiendo desde esta pregunta , ¿qué recursos están disponibles en relación con los detalles técnicos de cómo Apple implementar el cifrado en sus dispositivos iOS 4.x series?

El Apple material de marketing aquí , establece que "iPad ofrece un cifrado basado en hardware de codificación AES de 256 bits para proteger todos los datos en el dispositivo. El cifrado siempre está habilitado y no puede ser deshabilitado por los usuarios ".

Utilizando un RAMDisk personalizado para arrancar un dispositivo iOS antiguo, fue posible ver el contenido de los archivos de usuario de forma clara, lo que significa que de alguna manera si están encriptados, el proceso de arranque del sistema operativo personalizado permite que se desencripte la información.

28
Rory McCune

Todos los dispositivos iOS de envío (con la posible excepción de AppleTV, que no tiene aplicaciones de terceros) tienen dos sistemas de archivos, implementados como dos particiones en el almacenamiento flash. El primero está montado de solo lectura y solo contiene el sistema operativo. El segundo contiene datos del usuario: las aplicaciones instaladas y sus datos de respaldo, incluidos documentos y cachés. Esta segunda partición, en el iPhone 3GS, iPhone 4, iPod Touch de tercera y cuarta generación y el iPad solo está encriptada con una clave administrada por un chip de cifrado de hardware en la PCB del dispositivo. Esta clave no se puede filtrar directamente del chip; aunque no sé si hay ataques de canal lateral.

Cuando el dispositivo está encendido, el chip de encriptación desbloquea la segunda partición. Eso significa que esta encriptación solo protege los datos en reposo. De hecho, está diseñado para admitir un borrado remoto rápido: cuando el dispositivo recibe la señal de borrado remoto, simplemente restablece la clave.

iOS 4 utiliza por separado la misma función de cifrado para admitir su API de protección de archivos. Los archivos almacenados con la opción NSFileProtectionComplete están cifrados en el sistema de archivos, y la clave de descifrado solo está disponible mientras el dispositivo está desbloqueado . Eso significa que cuando bloquea la pantalla, incluso si una aplicación tiene un componente de fondo que aún se está ejecutando, no se puede acceder a los archivos protegidos.

En el caso de los archivos protegidos, si el usuario tiene una contraseña configurada, la contraseña y la clave del dispositivo se combinan para derivar la clave de protección. En realidad, es un poco más complejo: cada archivo está protegido por una clave separada. Estas claves están protegidas por una clave de clase. La clave de clase está protegida por una clave derivada de la clave de hardware y el código de acceso. Esto le da las siguientes propiedades:

  • cuando el dispositivo está bloqueado, los archivos no están disponibles porque el núcleo no tiene el código de acceso para generar la clave de desbloqueo.
  • el descubrimiento de la fuerza bruta del código de acceso del usuario debe realizarse en el dispositivo, lo que ralentiza los intentos.
  • la limpieza remota aún implica simplemente restablecer la clave del dispositivo.
27
user185