arquitectura, aplicaciones y seguridad en ios
DESCRIPTION
Charla: Arquitectura, aplicaciones y seguridad en iOS, impartida por Juan M. Aguayo de Informática 64 para el curso de Especialización en Dispositivos Móviles que tuvo lugar en la Facultad de Informática de la Universidad de A Coruña del 20 al 22 de Junio de 2012.TRANSCRIPT
![Page 1: Arquitectura, aplicaciones y seguridad en ios](https://reader035.vdocuments.co/reader035/viewer/2022062418/55661f38d8b42a7d608b520e/html5/thumbnails/1.jpg)
Curso Especialización en Dispositivos Móviles
Arquitectura, Seguridad y Apps y en iOS
Juan Miguel Aguayo Sánchez
![Page 2: Arquitectura, aplicaciones y seguridad en ios](https://reader035.vdocuments.co/reader035/viewer/2022062418/55661f38d8b42a7d608b520e/html5/thumbnails/2.jpg)
iOS en el entorno corporativoContents at a glance
Bloque I: Arquitectura.
Bloque II: Seguridad.
Bloque III: Apps en iOS.
![Page 3: Arquitectura, aplicaciones y seguridad en ios](https://reader035.vdocuments.co/reader035/viewer/2022062418/55661f38d8b42a7d608b520e/html5/thumbnails/3.jpg)
Bloque I
Arquitectura iOS
![Page 4: Arquitectura, aplicaciones y seguridad en ios](https://reader035.vdocuments.co/reader035/viewer/2022062418/55661f38d8b42a7d608b520e/html5/thumbnails/4.jpg)
iOS
¿Qué es iOS?
iPhone
iPod
iPad
Apple TV
![Page 5: Arquitectura, aplicaciones y seguridad en ios](https://reader035.vdocuments.co/reader035/viewer/2022062418/55661f38d8b42a7d608b520e/html5/thumbnails/5.jpg)
Historia iOS
NeXTSTEP (1989-1995) “Black boxes” NeXTSTEP + Sun Microsystems = OpenStep
Apple =NeXTSTEP Propia implementación de OPENSTEP = Rhapsody (1997)
Darwin S.O. open source y POSIX liberado por Apple (2000)
Rhapsody Mac OS X
Descendiente directo de NeXTSTEP
S.O UNIX con más mayor índice de penetración!
![Page 6: Arquitectura, aplicaciones y seguridad en ios](https://reader035.vdocuments.co/reader035/viewer/2022062418/55661f38d8b42a7d608b520e/html5/thumbnails/6.jpg)
Modelos de iDevices
![Page 7: Arquitectura, aplicaciones y seguridad en ios](https://reader035.vdocuments.co/reader035/viewer/2022062418/55661f38d8b42a7d608b520e/html5/thumbnails/7.jpg)
Especificaciones técnicas iPhone iPhone 4: 960 por 640 píxeles a 326 p/p. UMTS/HSDPA/HSUPA, GSM/EDGE, Wi-Fi, Bluetooth. AAC, AAC protegido, HE-AAC, MP3, MP3 VBR,
Audible, Apple Lossless, AIFF y WAV. Cámara de fotos de calidad VGA y grabación de vídeo
en HD. Sensores: Giroscopio de 3 ejes, acelerómetro, sensor de
proximidad, sensor de luz ambiental. Flash de 16 o 32GB. Hasta 300 horas en reposo. Fabricado sin PVC, bromo, mercurio o arsénico. …
![Page 8: Arquitectura, aplicaciones y seguridad en ios](https://reader035.vdocuments.co/reader035/viewer/2022062418/55661f38d8b42a7d608b520e/html5/thumbnails/8.jpg)
Especificaciones técnicas iPad
1.024 por 768 píxeles a 132 p/p. UMTS/HSDPA/HSUPA, GSM/EDGE, Wi-Fi,
Bluetooth. AAC, AAC protegido, HE-AAC, MP3, MP3 VBR,
Audible, Apple Lossless, AIFF y WAV. Dolby Digital 5.1 (con adaptador AV). Salida de vídeo hasta 1080p. Cámara de fotos de calidad VGA y grabación de
vídeo en HD. Sensores: Giroscopio de 3 ejes, acelerómetro, sensor
de luz ambiental. Flash de 16, 32 o 64 GB. Versiones: Wi-Fi y Wi-Fi 3G, iPad 1 y iPad 2. Fabricado sin PVC, bromo, mercurio o arsénico y
carcasa de aluminio y vidrio reciclable.
![Page 9: Arquitectura, aplicaciones y seguridad en ios](https://reader035.vdocuments.co/reader035/viewer/2022062418/55661f38d8b42a7d608b520e/html5/thumbnails/9.jpg)
Especificaciones técnicas iPhone 4S
http://www.apple.com/iphone/specs.html
http://www.apple.com/es/iphone/
![Page 10: Arquitectura, aplicaciones y seguridad en ios](https://reader035.vdocuments.co/reader035/viewer/2022062418/55661f38d8b42a7d608b520e/html5/thumbnails/10.jpg)
iOS Hardware
Grandes avances: Microprocesadores
ARM Cortex-A8 CPU.
ARM Cortex-A9 Dual-Core.
ARM Cortex-A9 MPCore.
![Page 11: Arquitectura, aplicaciones y seguridad en ios](https://reader035.vdocuments.co/reader035/viewer/2022062418/55661f38d8b42a7d608b520e/html5/thumbnails/11.jpg)
iOS Hardware
Grandes avances: Del A4 al A5
ARM Cortex-A8 CPU (A4).
ARM Cortex-A9 Dual-Core (A5).
![Page 12: Arquitectura, aplicaciones y seguridad en ios](https://reader035.vdocuments.co/reader035/viewer/2022062418/55661f38d8b42a7d608b520e/html5/thumbnails/12.jpg)
iOS Hardware
Grandes avances: Del A5 al A5X
ARM Cortex-A9 Dual-Core Processor (A5).
ARM Cortex-A9 Dual-Core Processor (A5X).
![Page 13: Arquitectura, aplicaciones y seguridad en ios](https://reader035.vdocuments.co/reader035/viewer/2022062418/55661f38d8b42a7d608b520e/html5/thumbnails/13.jpg)
iOS Hardware
Evolución Procesadores ARM
![Page 14: Arquitectura, aplicaciones y seguridad en ios](https://reader035.vdocuments.co/reader035/viewer/2022062418/55661f38d8b42a7d608b520e/html5/thumbnails/14.jpg)
iOS Hardware
Evolución Procesadores ARM
![Page 15: Arquitectura, aplicaciones y seguridad en ios](https://reader035.vdocuments.co/reader035/viewer/2022062418/55661f38d8b42a7d608b520e/html5/thumbnails/15.jpg)
iOS Hardware
Grandes avances: Seguridad
iPhone 3GS: Primero en soportar el juego de instrucciones Thumb2. Esto cambió la manera en la que se desarrollaban los ROP payloads.
iPad 2: Permite a iOS allocator trabajar mejor (dual core), haciendo que los exploits sean mucho menos fiables o más difíciles de implementar.
![Page 16: Arquitectura, aplicaciones y seguridad en ios](https://reader035.vdocuments.co/reader035/viewer/2022062418/55661f38d8b42a7d608b520e/html5/thumbnails/16.jpg)
iOS Hardware
Avances relativos al Baseband
Anteriores modelos: Infineon Firmware Baseband.
iPhone 4 CDMA y iPhone 4S: Qualcomm Firmware Baseband.
![Page 17: Arquitectura, aplicaciones y seguridad en ios](https://reader035.vdocuments.co/reader035/viewer/2022062418/55661f38d8b42a7d608b520e/html5/thumbnails/17.jpg)
iOS Hardware
Unlock
![Page 18: Arquitectura, aplicaciones y seguridad en ios](https://reader035.vdocuments.co/reader035/viewer/2022062418/55661f38d8b42a7d608b520e/html5/thumbnails/18.jpg)
iOS Cocoa Touch
Mac OS X iOS
![Page 19: Arquitectura, aplicaciones y seguridad en ios](https://reader035.vdocuments.co/reader035/viewer/2022062418/55661f38d8b42a7d608b520e/html5/thumbnails/19.jpg)
iOS Cocoa Touch
![Page 20: Arquitectura, aplicaciones y seguridad en ios](https://reader035.vdocuments.co/reader035/viewer/2022062418/55661f38d8b42a7d608b520e/html5/thumbnails/20.jpg)
iOS Cocoa Touch
![Page 21: Arquitectura, aplicaciones y seguridad en ios](https://reader035.vdocuments.co/reader035/viewer/2022062418/55661f38d8b42a7d608b520e/html5/thumbnails/21.jpg)
iOS Cocoa Touch
![Page 22: Arquitectura, aplicaciones y seguridad en ios](https://reader035.vdocuments.co/reader035/viewer/2022062418/55661f38d8b42a7d608b520e/html5/thumbnails/22.jpg)
iOS Cocoa Touch
![Page 23: Arquitectura, aplicaciones y seguridad en ios](https://reader035.vdocuments.co/reader035/viewer/2022062418/55661f38d8b42a7d608b520e/html5/thumbnails/23.jpg)
Cocoa Touch Frameworks
![Page 24: Arquitectura, aplicaciones y seguridad en ios](https://reader035.vdocuments.co/reader035/viewer/2022062418/55661f38d8b42a7d608b520e/html5/thumbnails/24.jpg)
Cocoa Touch Frameworks
UIKit Framework
• Proporciona todos los elementos gráficos de las aplicaciones a través de interfaces. Utilizando UIKit tienes acceso a los controles especiales GUI, botones, vistas a pantalla completa, etc.
• Acceso a APIs del hardware: control sobre acelerómetro, cámara, gestos multi-touch, GPS, …
• Organiza el ciclo de vida (lifecycle) de una aplicación.
• Manejo de eventos.
• Application runtime.
![Page 25: Arquitectura, aplicaciones y seguridad en ios](https://reader035.vdocuments.co/reader035/viewer/2022062418/55661f38d8b42a7d608b520e/html5/thumbnails/25.jpg)
Cocoa Touch Frameworks
Foundation Framework
Foundation Framework es un subconjunto de clases que representan estructuras complejas de datos. Una fuerte base a bajo nivel, favorece fantásticos frameworks de alto nivel como:
• GameKit para jugar en multiplayer.
• Core Data que ofrece rendimiento y facilidad de uso para administrar los datos.
• Core Animation para realizar efectos.
• y (según Apple) el más innovativo motor de búsquedas en dispositivos móviles WebKit.
![Page 26: Arquitectura, aplicaciones y seguridad en ios](https://reader035.vdocuments.co/reader035/viewer/2022062418/55661f38d8b42a7d608b520e/html5/thumbnails/26.jpg)
Bloque II
Seguridad en iOS
![Page 27: Arquitectura, aplicaciones y seguridad en ios](https://reader035.vdocuments.co/reader035/viewer/2022062418/55661f38d8b42a7d608b520e/html5/thumbnails/27.jpg)
Seguridad iOS
Situación actual
iOS se lanzó en 2007 como iPhoneOS.
Versión actual: iOS 5.1.1
Nuevas características de seguridad con cada nueva versión.
Fallos difíciles de explotar y se parchean constantemente.
Cada nueva versión trae nuevos retos!
![Page 28: Arquitectura, aplicaciones y seguridad en ios](https://reader035.vdocuments.co/reader035/viewer/2022062418/55661f38d8b42a7d608b520e/html5/thumbnails/28.jpg)
Seguridad iOS
Vectores o Amenazas
Malware: Al igual que en los PCs. Comienza a proliferar en smartphones
Exploits: Fallo o vulnerabilidad. Encontrar una manera de explotar la vulnerabilidad.
Dificultar el camino para explotar la vulnerabilidad
![Page 29: Arquitectura, aplicaciones y seguridad en ios](https://reader035.vdocuments.co/reader035/viewer/2022062418/55661f38d8b42a7d608b520e/html5/thumbnails/29.jpg)
Arquitectura de seguridad iOS
Reduced Attack Surface
Attack Surface: Es el código que procesa la entrada proporcionada por un atacante.
Menos fallos, menos oportunidades de explotación.
Ejemplos: iChat no disponible en iOS. QuickTime con funcionalidades muy reducidas. Java y Flash no disponibles. Archivos .psd (No en MobileSafari). Algunos archivos .mov no soportados en iOS. iOS soporta .pdf, pero tan sólo parsea algunas características del fichero. …
![Page 30: Arquitectura, aplicaciones y seguridad en ios](https://reader035.vdocuments.co/reader035/viewer/2022062418/55661f38d8b42a7d608b520e/html5/thumbnails/30.jpg)
Arquitectura de seguridad iOS
Stripped-Down iOS
Apple no sólo ha reducido la superficie de ataque, sino que también ha limitado el número de aplicaciones que un usuario querría utilizar durante y después de la explotación.
El ejemplo más obvio es que no hay shell (/bin/sh) en iOS, pero incluso si hubiese una shell, no sería útil, al no poder ejecutar utilidades como ls, rm, ps, etc.
Esto lleva a que el objetivo de los exploits sea diferente (no obtener shellcode):
Atacante tiene que realizar sus acciones en el contexto del proceso explotado.
O bien traer consigo todas las utilidades que desee usar.
![Page 31: Arquitectura, aplicaciones y seguridad en ios](https://reader035.vdocuments.co/reader035/viewer/2022062418/55661f38d8b42a7d608b520e/html5/thumbnails/31.jpg)
Arquitectura de seguridad iOS
Separación de privilegios - Usuarios
iOS hace separación de procesos, utilizando usuarios, grupos, y otros permisos típicos de sistemas UNIX.
Usuarios existentes en iOS:
root: Los procesos de sistema más importantes se ejecutan como root. mobile: Navegador Web (Safari), Cliente de Correo (Mail Client), Apps de
terceros (App Store). _wireless _mdnsresponder … …
![Page 32: Arquitectura, aplicaciones y seguridad en ios](https://reader035.vdocuments.co/reader035/viewer/2022062418/55661f38d8b42a7d608b520e/html5/thumbnails/32.jpg)
Arquitectura de seguridad iOS
Code-Signing
Uno de los principales mecanismos de seguridad en iOS.
Binarios y librerías deben ser firmados por una autoridad de confianza, antes de que el kernel permita su ejecución.
Además solo las páginas en memoria que provengan de fuentes firmadas podrán ser ejecutadas.
![Page 33: Arquitectura, aplicaciones y seguridad en ios](https://reader035.vdocuments.co/reader035/viewer/2022062418/55661f38d8b42a7d608b520e/html5/thumbnails/33.jpg)
Arquitectura de seguridad iOS
Code-Signing
Sólo se pueden descargar apps de la App Store (a menos que el dispositivo esté configurado para aceptar otras fuentes), por lo que Apple actúa de Antivirus.
Esta protección hace muy difícil infectarse de malware. Pocas muestras han sido encontradas.
![Page 34: Arquitectura, aplicaciones y seguridad en ios](https://reader035.vdocuments.co/reader035/viewer/2022062418/55661f38d8b42a7d608b520e/html5/thumbnails/34.jpg)
Arquitectura de seguridad iOS
Code-Signing
Code signing complica la explotación:
NO se puede descargar, instalar y ejecutar software malicioso adicional.
Por lo que los exploits estarán limitados a los procesos explotados originalmente.
Aunque otras características del dispositivo podrían ser atacadas.
![Page 35: Arquitectura, aplicaciones y seguridad en ios](https://reader035.vdocuments.co/reader035/viewer/2022062418/55661f38d8b42a7d608b520e/html5/thumbnails/35.jpg)
Arquitectura de seguridad iOS
Code-Signing
Esta protección es la principal razón por la que la gente realiza el jailbreak a sus dispositivos. Una vez jailbreakeados, pueden ejecutar aplicaciones no firmadas.
![Page 36: Arquitectura, aplicaciones y seguridad en ios](https://reader035.vdocuments.co/reader035/viewer/2022062418/55661f38d8b42a7d608b520e/html5/thumbnails/36.jpg)
Arquitectura de seguridad iOS
Data Execution Prevention (DEP)
Mecanismo por el cual el procesador distingue entre las zonas de memoria que contienen código ejecutable y las que contienen datos.
DEP no permite la ejecución de datos, sólo código.
Si un exploit intenta ejecutar un payload, NO es posible, ya que es detectado como datos.
El atacante utiliza ROP para bypassear el DEP.
En iOS el mecanismo Code-Signing actúa como DEP, pero es incluso más seguro.
![Page 37: Arquitectura, aplicaciones y seguridad en ios](https://reader035.vdocuments.co/reader035/viewer/2022062418/55661f38d8b42a7d608b520e/html5/thumbnails/37.jpg)
Arquitectura de seguridad iOS
Data Execution Prevention (DEP)
La manera de atacar en ROP (Return-Oriented Programming), es crear una zona de memoria en donde se pueda escribir y ejecutar.
Esto no es posible en iOS, por el Code-Signing, ya que ninguna página de memoria no firmada se va a ejecutar.
Esto combinado con que nada escrito en disco se va a ejecutar, resulta en que la única manera de realizar exploits es con ROP.
Escribir largos payloads en ROP es un proceso muuuy largo y complejo, por lo que se puede decir que realizar exploits para iOS es más difícil que en otras plataformas.
![Page 38: Arquitectura, aplicaciones y seguridad en ios](https://reader035.vdocuments.co/reader035/viewer/2022062418/55661f38d8b42a7d608b520e/html5/thumbnails/38.jpg)
Arquitectura de seguridad iOS
Address Space Layout Randomization (ASLR)
Para bypassear DEP, el atacante utiliza ROP (reusar trozos de código existentes).
Pero para ello debe saber en qué parte o zona de memoria se encuentran, pero para evitar esto está el mecanismo de protección ASLR, que lo complica colocando el código en una posición aleatoria cada vez.
En iOS todo está localizado en memoria utilizando ASLR: binaries, libraries, dynamic linker, stack, heap memory addresses.
Pero hay que tener cuidado si está compilado con PIE o no!
![Page 39: Arquitectura, aplicaciones y seguridad en ios](https://reader035.vdocuments.co/reader035/viewer/2022062418/55661f38d8b42a7d608b520e/html5/thumbnails/39.jpg)
Arquitectura de seguridad iOS
Address Space Layout Randomization (ASLR)
Cuando un sistema tiene ambas protecciones (DEP y ASLR), no hay una manera general de escribir un exploit.
En la práctica, un atacante necesita de dos exploits: El primero para obtener ejecución de código. El segundo para encontrar una dirección de memoria para realizar
ROP.
Otra opción es que el atacante encuentre una vulnerabilidad muy especial.
![Page 40: Arquitectura, aplicaciones y seguridad en ios](https://reader035.vdocuments.co/reader035/viewer/2022062418/55661f38d8b42a7d608b520e/html5/thumbnails/40.jpg)
Arquitectura de seguridad iOS
Sandboxing
La última defensa de iOS, las sandboxes de las apps.
Permite un control más detallado de los que los procesos pueden o no realizar.
Ejemplo SMS y Mobile Safari.
Dos efectos principales:
Limitar los efectos del malware (fotos y contactos SI, llamadas y SMS NO).
Si se encuentra una vulnerabilidad y se explota, estará limitada a la sandbox.
No se puede interaccionar directamente con los recursos/dispositivos de red.
![Page 41: Arquitectura, aplicaciones y seguridad en ios](https://reader035.vdocuments.co/reader035/viewer/2022062418/55661f38d8b42a7d608b520e/html5/thumbnails/41.jpg)
Arquitectura de seguridad iOS
Sandboxing
![Page 42: Arquitectura, aplicaciones y seguridad en ios](https://reader035.vdocuments.co/reader035/viewer/2022062418/55661f38d8b42a7d608b520e/html5/thumbnails/42.jpg)
Arquitectura de seguridad iOS
Sandboxing
Application Bundle: Contiene los recursos de la app y los ejecutables.
Library/Preferences: En esta carpeta se almacenan las preferencias de la app, y por tanto es donde la app Settings buscará dichas preferencias (a través de la clase NSUserDefault).
Library/Caches: En esta carpeta la app guarda los datos generados durante el tiempo de ejecución, y que se desean guardar entre ejecución y ejecución. NO se sincroniza (demaisado tiempo y tamaño Web Server).
![Page 43: Arquitectura, aplicaciones y seguridad en ios](https://reader035.vdocuments.co/reader035/viewer/2022062418/55661f38d8b42a7d608b520e/html5/thumbnails/43.jpg)
Arquitectura de seguridad iOS
Sandboxing
Documents: Igual que Caches, pero sí sincroniza (partida salvada).
tmp: Es donde sealmacenan los datos que la app utilizará de manera temporal durante su ejecución. Hay que eliminar los datos de dicha carpeta cuando se finaliza con ellos. El S.O. Podría eliminar o purgar datos de dicha carpeta cuando la aplicación no está corriendo.
![Page 44: Arquitectura, aplicaciones y seguridad en ios](https://reader035.vdocuments.co/reader035/viewer/2022062418/55661f38d8b42a7d608b520e/html5/thumbnails/44.jpg)
Arquitectura de seguridad iOS
Sandboxing
Hay varias formas de acceder a la sandbox (a nivel programático):
NSArray *documentPaths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES); NSString *ourDocumentPath = [documentPaths objectAtIndex:0];
NSString *sandboxPath = NSHomeDirectory(); // Once you have the full sandbox path, you can create a path from it NSString *documentPath = [sandboxPath stringByAppendingPathComponent:@"Documents"];
![Page 45: Arquitectura, aplicaciones y seguridad en ios](https://reader035.vdocuments.co/reader035/viewer/2022062418/55661f38d8b42a7d608b520e/html5/thumbnails/45.jpg)
Arquitectura de seguridad iOS
¿Donde está mi sandbox?
Veamos ahora el aspecto de la sandbox de una app desarrollada por nosotros.
La ruta de la sandbox en el equipo, es decir, en el simulador de iPhone, se encuentra (en Lion) en:
/Users/juanmi/Library/Application Support/iPhone Simulator/5.1/Applications
![Page 46: Arquitectura, aplicaciones y seguridad en ios](https://reader035.vdocuments.co/reader035/viewer/2022062418/55661f38d8b42a7d608b520e/html5/thumbnails/46.jpg)
Bloque III
Apps en iOS
![Page 47: Arquitectura, aplicaciones y seguridad en ios](https://reader035.vdocuments.co/reader035/viewer/2022062418/55661f38d8b42a7d608b520e/html5/thumbnails/47.jpg)
Tipos de aplicaciones
Aplicaciones Web
Desarrollo más sencillo con HTML5, JavaScript, CSS y no es necesario Objective-C.
Multiplataforma: Funciona en casi todos los dispositivos, siempre y cuando sean compatibles con el engine del Safari WebKit.
No depende de Apple:◦ Libertad en políticas de precios,, implantando diversos mecanismos en la
aplicación web, y evitando la comisión de Apple.◦ Mayor esfuerzo en marketing.◦ Sin registro.
![Page 48: Arquitectura, aplicaciones y seguridad en ios](https://reader035.vdocuments.co/reader035/viewer/2022062418/55661f38d8b42a7d608b520e/html5/thumbnails/48.jpg)
Tipos de aplicaciones
Aplicaciones Nativas
Acceso al API de iPhone: acelerómetro, cámara, GPS, etc.
Mejor experiencia de usuario: no cargan interfaz, sólo datos.
Permiten envío de push-notifications.
Necesarios conocimientos de Objective-C.
Depende de Apple:◦ Registro = Ganar dinero.◦ Aprovechar el canal de distribución del fabricante (AppStore).◦ Apple Developer Program. El coste es de 79€/año.
![Page 49: Arquitectura, aplicaciones y seguridad en ios](https://reader035.vdocuments.co/reader035/viewer/2022062418/55661f38d8b42a7d608b520e/html5/thumbnails/49.jpg)
¿Cómo se desarrolla en iOS?
![Page 50: Arquitectura, aplicaciones y seguridad en ios](https://reader035.vdocuments.co/reader035/viewer/2022062418/55661f38d8b42a7d608b520e/html5/thumbnails/50.jpg)
Aplicaciones en iOS
Seguridad en la App Store
25.000 millones de descargas.
500.000 apps diferentes.
Apple, Developers, 3rd parties.
TODAS las apps son revisadas y, si son aprobadas, son firmadas por una clave privada de Apple y puestas a disposición del público para descargarlas desde la App Store.
Mandatory Code-Signing
![Page 51: Arquitectura, aplicaciones y seguridad en ios](https://reader035.vdocuments.co/reader035/viewer/2022062418/55661f38d8b42a7d608b520e/html5/thumbnails/51.jpg)
iOS 6
![Page 52: Arquitectura, aplicaciones y seguridad en ios](https://reader035.vdocuments.co/reader035/viewer/2022062418/55661f38d8b42a7d608b520e/html5/thumbnails/52.jpg)
Aplicaciones en iOS
Desarrollo seguro en iOS
iOS proporciona varias APIs para desarrollo seguro.
API para cifrar datos: CryptoAPI.
API para manejar el Keychain.
Conocido como Data Protection API.
Desarrolladores junior y con poca experiencia en seguridad.
…
![Page 53: Arquitectura, aplicaciones y seguridad en ios](https://reader035.vdocuments.co/reader035/viewer/2022062418/55661f38d8b42a7d608b520e/html5/thumbnails/53.jpg)
PREGUNTAS
![Page 54: Arquitectura, aplicaciones y seguridad en ios](https://reader035.vdocuments.co/reader035/viewer/2022062418/55661f38d8b42a7d608b520e/html5/thumbnails/54.jpg)
Curso Especialización en Dispositivos Móviles
Arquitectura, Seguridad y Apps y en iOS
Juan Miguel Aguayo Sánchez