SlideShare une entreprise Scribd logo
1  sur  55
Trabajando en seguridad desde hace 6 años


Apasionado por la seguridad de toda la vida
¿En serio vamos a diseccionar un sistema operativo?



¿Y además hablando también de hardware?



¿Estamos locos?
http://images.apple.com/ipad/business/docs/i
OS_Security_May12.pdf
Especialmente interesante a partir de 3GS

   Cifrado total del almacenamiento

   Procesador criptográfico

  Claves que nunca salen del mismo y ‘fuseadas’ para cada
unidad (UID & GID)
Combinan CPU (ARM Cortex) + GPU + RAM
   S5L8920 iPhone 3GS
   S5L8930 (Apple A4) iPad / iPhone 4 / ATV 2G
   S5L8940 (Apple A5) iPad 2 / iPhone 4S
   S5L8945 (Apple A5X) iPad3
   S5L8950 (Apple A6) iPhone 5

Familia ARMv7
   Juegos de instrucciones ARM, THUMB y THUMB-2
Originalmente desarrollado para el primer iPhone (2007)
Sin duda uno de los sistemas operativos más seguros


Primera versión: iPhoneOS 1.0


Además cada vez más seguro


Basado en Mac OS X
iPhone OS 1.0

    Sin sandboxing

     Todo corría como root

     Sin firma de código ni DEP ni ASLR

     ¡Sin apps!

     iPhone OS 1.0 libTiff Exploit (Tavis Ormandy)
iOS 2 implementa la mayor parte de la actual arquitectura

     App Store

     Sin ASLR…

     Casi todos los procesos corren sin privilegios

     SMS exploit (Charlie Miller)

     La sandbox era igual de permisiva para todas las apps.

     Jailbreak   Ikee Worm
iOS 3
    Sin ASLR

   Introducen code signing.

   MobileSafari Pwn2Own 2010

      Payload full ROP

       No rompieron la sandbox
iOS 4
    Se introduce el sistema de cifrado actual
         En realidad con alguna pequeña modificación
    jailbreakme.com (v2) (by comex)
         Stack Overflow (Safari) + Integer Overflow (IOKit)

iOS 4.3
    Aplicaciones compiladas con PIE
    Introduce ASLR
        main 256 posibles ubicaciones (si PIE)
        dyld 256 posibles ubicaciones (si PIE)
        dynamic library cache 4200 posibles ubicaciones
iOS 4.3.3
    jailbreakme.com (v3 Saffron) (by comex again)
         Leaking Integer Overflow (Safari) + Problema de tipado
     (IOMobileFrameBuffer) + Incomplete Codesign
http://esec-lab.sogeti.com/post/Analysis-of-
the-jailbreakme-v3-font-exploit
iOS 5
    Introduce Stack Canaries
    Introduce Automatic Reference Counting
    dyld siempre se mueve sea o no PIE el binario.
    Exploit Corona (5.1.1)
        Racoon Format String Overflow +
        HFS Heap Overflow
    Se cierra vulnerabilidad que permitía downgrades
    Se acaba con el incomplete code signing

iOS 6
    Sin novedades conocidas en la arquitectura de seguridad
    Parcheo continuado de bugs (197)
Una clave para cada archivo
File System Key
    Se genera durante la instalación
    Está cifrada con UID
    Si se borra se pierde todo
    Effaceable Storage!
Diferentes Class Keys
Wipe muy rápido y efectivo
Posible cambiar fácilmente la “Clase” de un fichero
Es posible cambiar el Passcode sin recifrar todo.
Acceso a los ficheros en función de la clase del mismo
AES256-CBC
Los datos se almacenan según cuando deben estar accesibles
    Dispositivo desbloqueado
    Dispositivo alguna vez desbloqueado (arrancado)
    Siempre

Cada clase tiene una clave maestra…

… cifrada con una combinación de passcode y UID

Estas claves se almacenan en la “keybag” del sistema
Región especial de las flash

Almacena tres claves
   FileSystem Key
   Clave de la clase NSProtectionNone
   Clave del keybag del sistema
NSFileProtectionComplete
   Passcode + UID
   Se borra al bloquear


NSFileProtectionCompleteUntilFirstUserAuthentication
   Passcode + UID
   No se borra al bloquear

NSFileProtectionNone
   UID
   Clave de la clase guardada en Effaceable Storage
NSFileProtectionCompleteUnlessOpen
    Ficheros que necesitan escribirse con el dispositivo bloqueado
    Se genera un par efímero
    Con ECDH se crea un secreto compartido con la privada
 efímera y la pública de la clase.
    Los metadatos del fichero almacenan:
        La clave del fichero cifrada con el hash del secreto
        La parte pública efímera
    Se borra la parte privada
    Cuando se cierra el fichero su clave se borra
    Para abrirlo:
        Recrear el secreto compartido con la parte privada de la
     clase y la pública efímera
        Descifrar la clave del fichero con el hash del secreto
Base de datos SQLite
Permiten guardar información de forma fácil a las Apps
NSFileProtectionNone
Acceso a través de API provista por Apple
Acceso permitido o no en función de
    keychain-access-groups
    application-identifier
Clases análogas a las de los ficheros
    Sin NSFileProtectionCompleteUnlessOpen
AES128-GCM
Contienen las claves de las clases. Ficheros & Keychain

   System keybag: donde están normalmente en el sistema
       Se accede a través de AppleKeyStore.kext
       Triple cifrado
           Filesystem key
           System keybag key
           Cada clave de clase cifrada con UID / passcode

   Backup keybag: usada en los backups cifrados de iTunes
      PKBDF2(password iTunes) * 10000
iCloud keybag: similar a la de Backup
    Usa criptografía asimétrica como en “Protected Unless
 Open” para hacer el backup en el background.

Escrow keybag:
    iOS la crea al conectar con iTunes por primera vez y se
 envía cifrada al PC con una clave.
    La clave queda guardada en el dispositivo
    El PC almacena la keybag cifrada con la clave.
    La clave se envía cuando se conecta a iTunes y permite
 sincronizar aunque el dispositivo esté bloqueado.
    Utilizada también para MDM.
La Passcode Key se calcula utilizando el UID

   Proceso deliberadamente lento

No es posible crack offline!


En iPhone 4 con iOS 5:
Es un dispositivo embebido

  Extraer la UID del procesador está normalmente fuera de
ámbito (¿microscopios electrónicos de barrido? ¿FIB?

  La otra posibilidad: hacerlo ‘a la Live CD’
Bootrom   Bootloader   Firmware
Lo primero que se ejecuta


Sólo lectura


Origen de la cadena de confianza

   Si es vulnerado la seguridad del sistema se viene abajo
   Y no tiene arreglo…
Modelo /    0x24000    usb_control_   Limera1n   SHA-1 Image
    Exploit    Segment    msg(0xA1,1)                 Segment
               Overflow                              Overflow

iPhone 3GS A      X

iPhone 3GS B                                X

iPod 2G                        X

iPod 4G                                     X           X

iPad 1G                                     X           X

iPhone 4                                    X           X

Apple TV 2G                                 X           X
Fallo a nivel de aplicación / kernel


Vulnerabilidad en BootROM
Permitir ejecución de aplicaciones no firmadas por Apple


Instala la tienda alternativa de aplicaciones: Cydia
    Permite instalar aplicaciones “piratas”
    Y otras muchas utilidades por supuesto


Reduce la seguridad del sistema a la de Android
Tethered


Untethered
BootROM exploit == tethered jailbreak


  BootROM exploit + Incomplete Code Signing + Kernel Exploit =
untethered jailbreak

  Safari + Kernel exploit = Remote jailbreak

  Safari + Kernel + Incomplete Code Signing exploit = remote
untethered jailbreak
Aplica a todas las aplicaciones de terceros (y a la mayoría de las
propias)

  Impide
     Acceder a ficheros de otra aplicación
     Acceder a ficheros del sistema
     El acceso a la funcionalidad de la API está limitado por los
   entitlements.
Cada aplicación declara a qué funcionalidad desea tener acceso

  No se permite el acceso a la API sin el entitlement
correspondiente

  Unido a la firma de código es un mecanismo muy potente
Todas las aplicaciones deben estar firmadas
    Las de terceros son firmadas con la clave privada que
 identifica al desarrollador (firmada por Apple)
    La identidad del desarrollador es verificada por Apple
    La calidad del código es revisada por Apple

Se permite cargar nuevas entidades de confianza
    Para desarrollo
    Para empresas
    Ciertamente peligroso

Es responsabilidad del kernel verificarlo
También en tiempo de ejecución (para cada página)

   Mucho más allá de W^X

   Una de las razones para que no haya Flash o Java

   La cadena de confianza se mantiene hasta el último momento
La excepción que confirma la regla (iOS 4.3)

   dynamic code signing entitlement

   Permite a Safari ejecutar JIT

  Requiere una zona de memoria RWX (que también es
marcada como JIT)

   Puede permitir exploits más sencillos en Safari
Hasta iOS 5.0.1 sólo se comprobaba el entitlement de
dynamic code signing si se pasaba la flag MAP_ANON

      ¡Cualquiera podía reservar memoria RWX!

     Charlie Miller lo descubre y cuela aplicación en App Store
   que ejecuta payloads remotas.

      EPIC FAIL
¿Realmente es necesario?
Apple ha logrado llegar a un nivel de seguridad realmente
impresionante.

  A costa de sacrificar la “libertad” del usuario

  Apple es el moderno sysadmin

  Ha demostrado no abandonar los modelos antiguos

  No obstante, seguirán saliendo nuevas vulnerabilidades
El modelo de seguridad de iOS

Contenu connexe

En vedette

Overflowing attack potential, scoring defence in-depth
Overflowing attack potential, scoring defence in-depthOverflowing attack potential, scoring defence in-depth
Overflowing attack potential, scoring defence in-depthJavier Tallón
 
Introducción a la certificación Common Criteria
Introducción a la certificación Common CriteriaIntroducción a la certificación Common Criteria
Introducción a la certificación Common CriteriaJavier Tallón
 
Vulnerability Analysis Taxonomy Achieving Completeness In A Systematic Way
Vulnerability Analysis Taxonomy Achieving Completeness In A Systematic Way Vulnerability Analysis Taxonomy Achieving Completeness In A Systematic Way
Vulnerability Analysis Taxonomy Achieving Completeness In A Systematic Way Javier Tallón
 
能源發展
能源發展能源發展
能源發展wrzakka
 
NetSquared organizer reactivation webinar: October 19 2016
NetSquared organizer reactivation webinar: October 19 2016NetSquared organizer reactivation webinar: October 19 2016
NetSquared organizer reactivation webinar: October 19 2016NetSquared
 
6. do'a imam as pada pagi dan sore
6. do'a imam as pada pagi dan sore6. do'a imam as pada pagi dan sore
6. do'a imam as pada pagi dan soreSMA Negeri 9 KERINCI
 
How do i get more pinterest followers
How do i get more pinterest followersHow do i get more pinterest followers
How do i get more pinterest followersmaria784
 
Resep kue apem kukus
Resep kue apem kukusResep kue apem kukus
Resep kue apem kukusmtrko
 
環境正義在台灣實踐的挑戰
環境正義在台灣實踐的挑戰環境正義在台灣實踐的挑戰
環境正義在台灣實踐的挑戰恩恩 許
 
Ieee 2013 sales presentation
Ieee 2013 sales presentationIeee 2013 sales presentation
Ieee 2013 sales presentationralphmonti
 
Smarter Cruise Control System For Vehicle
Smarter Cruise Control System For VehicleSmarter Cruise Control System For Vehicle
Smarter Cruise Control System For VehicleBay Diagnostic
 
Seminario iOS SIETCG (feb 2014)
Seminario iOS SIETCG (feb 2014)Seminario iOS SIETCG (feb 2014)
Seminario iOS SIETCG (feb 2014)Albert Marques
 
iOS d'estar per casa - Jornades Apple 2011 Ulldecona
iOS d'estar per casa - Jornades Apple 2011 UlldeconaiOS d'estar per casa - Jornades Apple 2011 Ulldecona
iOS d'estar per casa - Jornades Apple 2011 UlldeconaRaimon Lapuente
 

En vedette (20)

Overflowing attack potential, scoring defence in-depth
Overflowing attack potential, scoring defence in-depthOverflowing attack potential, scoring defence in-depth
Overflowing attack potential, scoring defence in-depth
 
Introducción a la certificación Common Criteria
Introducción a la certificación Common CriteriaIntroducción a la certificación Common Criteria
Introducción a la certificación Common Criteria
 
Vulnerability Analysis Taxonomy Achieving Completeness In A Systematic Way
Vulnerability Analysis Taxonomy Achieving Completeness In A Systematic Way Vulnerability Analysis Taxonomy Achieving Completeness In A Systematic Way
Vulnerability Analysis Taxonomy Achieving Completeness In A Systematic Way
 
pr1
pr1pr1
pr1
 
能源發展
能源發展能源發展
能源發展
 
NetSquared organizer reactivation webinar: October 19 2016
NetSquared organizer reactivation webinar: October 19 2016NetSquared organizer reactivation webinar: October 19 2016
NetSquared organizer reactivation webinar: October 19 2016
 
6. do'a imam as pada pagi dan sore
6. do'a imam as pada pagi dan sore6. do'a imam as pada pagi dan sore
6. do'a imam as pada pagi dan sore
 
How do i get more pinterest followers
How do i get more pinterest followersHow do i get more pinterest followers
How do i get more pinterest followers
 
Resep kue apem kukus
Resep kue apem kukusResep kue apem kukus
Resep kue apem kukus
 
環境正義在台灣實踐的挑戰
環境正義在台灣實踐的挑戰環境正義在台灣實踐的挑戰
環境正義在台灣實踐的挑戰
 
Ieee 2013 sales presentation
Ieee 2013 sales presentationIeee 2013 sales presentation
Ieee 2013 sales presentation
 
Smarter Cruise Control System For Vehicle
Smarter Cruise Control System For VehicleSmarter Cruise Control System For Vehicle
Smarter Cruise Control System For Vehicle
 
Sistema Opreativo IOS
Sistema Opreativo IOSSistema Opreativo IOS
Sistema Opreativo IOS
 
iOS
iOSiOS
iOS
 
Seminario iOS SIETCG (feb 2014)
Seminario iOS SIETCG (feb 2014)Seminario iOS SIETCG (feb 2014)
Seminario iOS SIETCG (feb 2014)
 
Training apple
Training appleTraining apple
Training apple
 
LINE. Android e iOS - Presentación Ciberseg15
LINE. Android e iOS - Presentación Ciberseg15LINE. Android e iOS - Presentación Ciberseg15
LINE. Android e iOS - Presentación Ciberseg15
 
Hardening murcia lan party 2013
Hardening   murcia lan party 2013Hardening   murcia lan party 2013
Hardening murcia lan party 2013
 
Presentación ios
Presentación iosPresentación ios
Presentación ios
 
iOS d'estar per casa - Jornades Apple 2011 Ulldecona
iOS d'estar per casa - Jornades Apple 2011 UlldeconaiOS d'estar per casa - Jornades Apple 2011 Ulldecona
iOS d'estar per casa - Jornades Apple 2011 Ulldecona
 

Similaire à El modelo de seguridad de iOS

Como hacer un forense a un iphone sin iphone
Como hacer un forense a un iphone sin iphoneComo hacer un forense a un iphone sin iphone
Como hacer un forense a un iphone sin iphoneEventos Creativos
 
Karla Itzel López Rodríguez DN13
Karla Itzel López Rodríguez DN13Karla Itzel López Rodríguez DN13
Karla Itzel López Rodríguez DN13Karla López
 
Presentacion re y_des_09072003
Presentacion re y_des_09072003Presentacion re y_des_09072003
Presentacion re y_des_09072003Alonso Caballero
 
Hacking a i os ipad iphone
Hacking a i os ipad iphoneHacking a i os ipad iphone
Hacking a i os ipad iphoneRafael Pineda
 
Análisis técnico de Flashback, el troyano para Mac que ya ha infectado a más ...
Análisis técnico de Flashback, el troyano para Mac que ya ha infectado a más ...Análisis técnico de Flashback, el troyano para Mac que ya ha infectado a más ...
Análisis técnico de Flashback, el troyano para Mac que ya ha infectado a más ...Yolanda Ruiz Hervás
 
Tema 1. Los Sistemas Operatios. Ainhoa belmonte mula
Tema 1. Los Sistemas Operatios. Ainhoa belmonte mulaTema 1. Los Sistemas Operatios. Ainhoa belmonte mula
Tema 1. Los Sistemas Operatios. Ainhoa belmonte mulaainhoabm22
 
Webinar Gratuito: Analizar una Imagen RAM con Volatility Framework
Webinar Gratuito: Analizar una Imagen RAM con Volatility FrameworkWebinar Gratuito: Analizar una Imagen RAM con Volatility Framework
Webinar Gratuito: Analizar una Imagen RAM con Volatility FrameworkAlonso Caballero
 
Arán Lora - Análisis dinámico de aplicaciones en iOS sin Jailbreak [rooted2019]
Arán Lora - Análisis dinámico de aplicaciones en iOS sin Jailbreak [rooted2019]Arán Lora - Análisis dinámico de aplicaciones en iOS sin Jailbreak [rooted2019]
Arán Lora - Análisis dinámico de aplicaciones en iOS sin Jailbreak [rooted2019]RootedCON
 
Como se instala java y turbo c 3.0
Como se instala java y turbo c 3.0Como se instala java y turbo c 3.0
Como se instala java y turbo c 3.0tacubomx
 
David Barroso - iPhone + Botnets = FUN! [RootedCON 2010]
David Barroso - iPhone + Botnets = FUN! [RootedCON 2010]David Barroso - iPhone + Botnets = FUN! [RootedCON 2010]
David Barroso - iPhone + Botnets = FUN! [RootedCON 2010]RootedCON
 
Memoria Pruebas de intrusion mediante Metasploit Framework
Memoria Pruebas de intrusion mediante Metasploit FrameworkMemoria Pruebas de intrusion mediante Metasploit Framework
Memoria Pruebas de intrusion mediante Metasploit FrameworkErlaitzParreoMuoz
 
Redes sociales y seguridad
Redes sociales y seguridadRedes sociales y seguridad
Redes sociales y seguridadTonny Lopez
 
Ejemplos de seguridad en aplicaciones moviles (IOS)
Ejemplos de seguridad en aplicaciones moviles (IOS) Ejemplos de seguridad en aplicaciones moviles (IOS)
Ejemplos de seguridad en aplicaciones moviles (IOS) Alejandro Ramos
 
Revista de karen
Revista de karenRevista de karen
Revista de karenNava203
 

Similaire à El modelo de seguridad de iOS (20)

tehnik mobile hacking
tehnik mobile hackingtehnik mobile hacking
tehnik mobile hacking
 
Como hacer un forense a un iphone sin iphone
Como hacer un forense a un iphone sin iphoneComo hacer un forense a un iphone sin iphone
Como hacer un forense a un iphone sin iphone
 
Presentacion bitup alicante 2018
Presentacion bitup alicante 2018Presentacion bitup alicante 2018
Presentacion bitup alicante 2018
 
Karla Itzel López Rodríguez DN13
Karla Itzel López Rodríguez DN13Karla Itzel López Rodríguez DN13
Karla Itzel López Rodríguez DN13
 
Presentacion re y_des_09072003
Presentacion re y_des_09072003Presentacion re y_des_09072003
Presentacion re y_des_09072003
 
Hacking a i os ipad iphone
Hacking a i os ipad iphoneHacking a i os ipad iphone
Hacking a i os ipad iphone
 
Análisis técnico de Flashback, el troyano para Mac que ya ha infectado a más ...
Análisis técnico de Flashback, el troyano para Mac que ya ha infectado a más ...Análisis técnico de Flashback, el troyano para Mac que ya ha infectado a más ...
Análisis técnico de Flashback, el troyano para Mac que ya ha infectado a más ...
 
Tema 1. Los Sistemas Operatios. Ainhoa belmonte mula
Tema 1. Los Sistemas Operatios. Ainhoa belmonte mulaTema 1. Los Sistemas Operatios. Ainhoa belmonte mula
Tema 1. Los Sistemas Operatios. Ainhoa belmonte mula
 
Jerry
JerryJerry
Jerry
 
Webinar Gratuito: Analizar una Imagen RAM con Volatility Framework
Webinar Gratuito: Analizar una Imagen RAM con Volatility FrameworkWebinar Gratuito: Analizar una Imagen RAM con Volatility Framework
Webinar Gratuito: Analizar una Imagen RAM con Volatility Framework
 
Cuadro Comparativo
Cuadro ComparativoCuadro Comparativo
Cuadro Comparativo
 
Arán Lora - Análisis dinámico de aplicaciones en iOS sin Jailbreak [rooted2019]
Arán Lora - Análisis dinámico de aplicaciones en iOS sin Jailbreak [rooted2019]Arán Lora - Análisis dinámico de aplicaciones en iOS sin Jailbreak [rooted2019]
Arán Lora - Análisis dinámico de aplicaciones en iOS sin Jailbreak [rooted2019]
 
Como se instala java y turbo c 3.0
Como se instala java y turbo c 3.0Como se instala java y turbo c 3.0
Como se instala java y turbo c 3.0
 
David Barroso - iPhone + Botnets = FUN! [RootedCON 2010]
David Barroso - iPhone + Botnets = FUN! [RootedCON 2010]David Barroso - iPhone + Botnets = FUN! [RootedCON 2010]
David Barroso - iPhone + Botnets = FUN! [RootedCON 2010]
 
Memoria Pruebas de intrusion mediante Metasploit Framework
Memoria Pruebas de intrusion mediante Metasploit FrameworkMemoria Pruebas de intrusion mediante Metasploit Framework
Memoria Pruebas de intrusion mediante Metasploit Framework
 
Redes sociales y seguridad
Redes sociales y seguridadRedes sociales y seguridad
Redes sociales y seguridad
 
Gestión Remota de Equipos con Python
Gestión Remota de Equipos con PythonGestión Remota de Equipos con Python
Gestión Remota de Equipos con Python
 
IOS informatica
IOS informaticaIOS informatica
IOS informatica
 
Ejemplos de seguridad en aplicaciones moviles (IOS)
Ejemplos de seguridad en aplicaciones moviles (IOS) Ejemplos de seguridad en aplicaciones moviles (IOS)
Ejemplos de seguridad en aplicaciones moviles (IOS)
 
Revista de karen
Revista de karenRevista de karen
Revista de karen
 

Plus de Javier Tallón

Evolucionando la evaluación criptográfica - Episodio II
Evolucionando la evaluación criptográfica - Episodio IIEvolucionando la evaluación criptográfica - Episodio II
Evolucionando la evaluación criptográfica - Episodio IIJavier Tallón
 
Cómo evaluar soluciones biométricas para incluir productos de videoidentifica...
Cómo evaluar soluciones biométricas para incluir productos de videoidentifica...Cómo evaluar soluciones biométricas para incluir productos de videoidentifica...
Cómo evaluar soluciones biométricas para incluir productos de videoidentifica...Javier Tallón
 
ICCC2023 Statistics Report, has Common Criteria reached its peak?
ICCC2023 Statistics Report, has Common Criteria reached its peak?ICCC2023 Statistics Report, has Common Criteria reached its peak?
ICCC2023 Statistics Report, has Common Criteria reached its peak?Javier Tallón
 
ICCC23 -The new cryptographic evaluation methodology created by CCN
ICCC23 -The new cryptographic evaluation methodology created by CCNICCC23 -The new cryptographic evaluation methodology created by CCN
ICCC23 -The new cryptographic evaluation methodology created by CCNJavier Tallón
 
Experiences evaluating cloud services and products
Experiences evaluating cloud services and productsExperiences evaluating cloud services and products
Experiences evaluating cloud services and productsJavier Tallón
 
TAICS - Cybersecurity Certification for European Market.pptx
TAICS - Cybersecurity Certification for European Market.pptxTAICS - Cybersecurity Certification for European Market.pptx
TAICS - Cybersecurity Certification for European Market.pptxJavier Tallón
 
La ventaja de implementar una solución de ciberseguridad certificada por el C...
La ventaja de implementar una solución de ciberseguridad certificada por el C...La ventaja de implementar una solución de ciberseguridad certificada por el C...
La ventaja de implementar una solución de ciberseguridad certificada por el C...Javier Tallón
 
EUCA23 - Evolution of cryptographic evaluation in Europe.pdf
EUCA23 - Evolution of cryptographic evaluation in Europe.pdfEUCA23 - Evolution of cryptographic evaluation in Europe.pdf
EUCA23 - Evolution of cryptographic evaluation in Europe.pdfJavier Tallón
 
Evolucionado la evaluación Criptográfica
Evolucionado la evaluación CriptográficaEvolucionado la evaluación Criptográfica
Evolucionado la evaluación CriptográficaJavier Tallón
 
España y CCN como referentes en la evaluación de ciberseguridad de soluciones...
España y CCN como referentes en la evaluación de ciberseguridad de soluciones...España y CCN como referentes en la evaluación de ciberseguridad de soluciones...
España y CCN como referentes en la evaluación de ciberseguridad de soluciones...Javier Tallón
 
EUCA 22 - Let's harmonize labs competence ISO 19896
EUCA 22 - Let's harmonize labs competence ISO 19896EUCA 22 - Let's harmonize labs competence ISO 19896
EUCA 22 - Let's harmonize labs competence ISO 19896Javier Tallón
 
EUCA22 Panel Discussion: Differences between lightweight certification schemes
EUCA22 Panel Discussion: Differences between lightweight certification schemesEUCA22 Panel Discussion: Differences between lightweight certification schemes
EUCA22 Panel Discussion: Differences between lightweight certification schemesJavier Tallón
 
EUCA22 - Patch Management ISO_IEC 15408 & 18045
EUCA22 - Patch Management ISO_IEC 15408 & 18045EUCA22 - Patch Management ISO_IEC 15408 & 18045
EUCA22 - Patch Management ISO_IEC 15408 & 18045Javier Tallón
 
Cross standard and scheme composition - A needed cornerstone for the European...
Cross standard and scheme composition - A needed cornerstone for the European...Cross standard and scheme composition - A needed cornerstone for the European...
Cross standard and scheme composition - A needed cornerstone for the European...Javier Tallón
 
¿Cómo incluir productos y servicios en el catálogo CPSTIC (CCN-STIC 105)?
¿Cómo incluir productos y servicios en el catálogo CPSTIC (CCN-STIC 105)?¿Cómo incluir productos y servicios en el catálogo CPSTIC (CCN-STIC 105)?
¿Cómo incluir productos y servicios en el catálogo CPSTIC (CCN-STIC 105)?Javier Tallón
 
Is Automation Necessary for the CC Survival?
Is Automation Necessary for the CC Survival?Is Automation Necessary for the CC Survival?
Is Automation Necessary for the CC Survival?Javier Tallón
 
CCCAB tool - Making CABs life easy - Chapter 2
CCCAB tool - Making CABs life easy - Chapter 2CCCAB tool - Making CABs life easy - Chapter 2
CCCAB tool - Making CABs life easy - Chapter 2Javier Tallón
 
2022 CC Statistics report: will this year beat last year's record number of c...
2022 CC Statistics report: will this year beat last year's record number of c...2022 CC Statistics report: will this year beat last year's record number of c...
2022 CC Statistics report: will this year beat last year's record number of c...Javier Tallón
 
CCCAB, la apuesta europea por la automatización de los Organismos de Certific...
CCCAB, la apuesta europea por la automatización de los Organismos de Certific...CCCAB, la apuesta europea por la automatización de los Organismos de Certific...
CCCAB, la apuesta europea por la automatización de los Organismos de Certific...Javier Tallón
 

Plus de Javier Tallón (20)

Evolucionando la evaluación criptográfica - Episodio II
Evolucionando la evaluación criptográfica - Episodio IIEvolucionando la evaluación criptográfica - Episodio II
Evolucionando la evaluación criptográfica - Episodio II
 
Cómo evaluar soluciones biométricas para incluir productos de videoidentifica...
Cómo evaluar soluciones biométricas para incluir productos de videoidentifica...Cómo evaluar soluciones biométricas para incluir productos de videoidentifica...
Cómo evaluar soluciones biométricas para incluir productos de videoidentifica...
 
ICCC2023 Statistics Report, has Common Criteria reached its peak?
ICCC2023 Statistics Report, has Common Criteria reached its peak?ICCC2023 Statistics Report, has Common Criteria reached its peak?
ICCC2023 Statistics Report, has Common Criteria reached its peak?
 
ICCC23 -The new cryptographic evaluation methodology created by CCN
ICCC23 -The new cryptographic evaluation methodology created by CCNICCC23 -The new cryptographic evaluation methodology created by CCN
ICCC23 -The new cryptographic evaluation methodology created by CCN
 
Experiences evaluating cloud services and products
Experiences evaluating cloud services and productsExperiences evaluating cloud services and products
Experiences evaluating cloud services and products
 
TAICS - Cybersecurity Certification for European Market.pptx
TAICS - Cybersecurity Certification for European Market.pptxTAICS - Cybersecurity Certification for European Market.pptx
TAICS - Cybersecurity Certification for European Market.pptx
 
La ventaja de implementar una solución de ciberseguridad certificada por el C...
La ventaja de implementar una solución de ciberseguridad certificada por el C...La ventaja de implementar una solución de ciberseguridad certificada por el C...
La ventaja de implementar una solución de ciberseguridad certificada por el C...
 
EUCA23 - Evolution of cryptographic evaluation in Europe.pdf
EUCA23 - Evolution of cryptographic evaluation in Europe.pdfEUCA23 - Evolution of cryptographic evaluation in Europe.pdf
EUCA23 - Evolution of cryptographic evaluation in Europe.pdf
 
Hacking your jeta.pdf
Hacking your jeta.pdfHacking your jeta.pdf
Hacking your jeta.pdf
 
Evolucionado la evaluación Criptográfica
Evolucionado la evaluación CriptográficaEvolucionado la evaluación Criptográfica
Evolucionado la evaluación Criptográfica
 
España y CCN como referentes en la evaluación de ciberseguridad de soluciones...
España y CCN como referentes en la evaluación de ciberseguridad de soluciones...España y CCN como referentes en la evaluación de ciberseguridad de soluciones...
España y CCN como referentes en la evaluación de ciberseguridad de soluciones...
 
EUCA 22 - Let's harmonize labs competence ISO 19896
EUCA 22 - Let's harmonize labs competence ISO 19896EUCA 22 - Let's harmonize labs competence ISO 19896
EUCA 22 - Let's harmonize labs competence ISO 19896
 
EUCA22 Panel Discussion: Differences between lightweight certification schemes
EUCA22 Panel Discussion: Differences between lightweight certification schemesEUCA22 Panel Discussion: Differences between lightweight certification schemes
EUCA22 Panel Discussion: Differences between lightweight certification schemes
 
EUCA22 - Patch Management ISO_IEC 15408 & 18045
EUCA22 - Patch Management ISO_IEC 15408 & 18045EUCA22 - Patch Management ISO_IEC 15408 & 18045
EUCA22 - Patch Management ISO_IEC 15408 & 18045
 
Cross standard and scheme composition - A needed cornerstone for the European...
Cross standard and scheme composition - A needed cornerstone for the European...Cross standard and scheme composition - A needed cornerstone for the European...
Cross standard and scheme composition - A needed cornerstone for the European...
 
¿Cómo incluir productos y servicios en el catálogo CPSTIC (CCN-STIC 105)?
¿Cómo incluir productos y servicios en el catálogo CPSTIC (CCN-STIC 105)?¿Cómo incluir productos y servicios en el catálogo CPSTIC (CCN-STIC 105)?
¿Cómo incluir productos y servicios en el catálogo CPSTIC (CCN-STIC 105)?
 
Is Automation Necessary for the CC Survival?
Is Automation Necessary for the CC Survival?Is Automation Necessary for the CC Survival?
Is Automation Necessary for the CC Survival?
 
CCCAB tool - Making CABs life easy - Chapter 2
CCCAB tool - Making CABs life easy - Chapter 2CCCAB tool - Making CABs life easy - Chapter 2
CCCAB tool - Making CABs life easy - Chapter 2
 
2022 CC Statistics report: will this year beat last year's record number of c...
2022 CC Statistics report: will this year beat last year's record number of c...2022 CC Statistics report: will this year beat last year's record number of c...
2022 CC Statistics report: will this year beat last year's record number of c...
 
CCCAB, la apuesta europea por la automatización de los Organismos de Certific...
CCCAB, la apuesta europea por la automatización de los Organismos de Certific...CCCAB, la apuesta europea por la automatización de los Organismos de Certific...
CCCAB, la apuesta europea por la automatización de los Organismos de Certific...
 

Dernier

PROYECTO FINAL. Tutorial para publicar en SlideShare.pptx
PROYECTO FINAL. Tutorial para publicar en SlideShare.pptxPROYECTO FINAL. Tutorial para publicar en SlideShare.pptx
PROYECTO FINAL. Tutorial para publicar en SlideShare.pptxAlan779941
 
Innovaciones tecnologicas en el siglo 21
Innovaciones tecnologicas en el siglo 21Innovaciones tecnologicas en el siglo 21
Innovaciones tecnologicas en el siglo 21mariacbr99
 
Avances tecnológicos del siglo XXI y ejemplos de estos
Avances tecnológicos del siglo XXI y ejemplos de estosAvances tecnológicos del siglo XXI y ejemplos de estos
Avances tecnológicos del siglo XXI y ejemplos de estossgonzalezp1
 
How to use Redis with MuleSoft. A quick start presentation.
How to use Redis with MuleSoft. A quick start presentation.How to use Redis with MuleSoft. A quick start presentation.
How to use Redis with MuleSoft. A quick start presentation.FlorenciaCattelani
 
redes informaticas en una oficina administrativa
redes informaticas en una oficina administrativaredes informaticas en una oficina administrativa
redes informaticas en una oficina administrativanicho110
 
pruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNITpruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNITMaricarmen Sánchez Ruiz
 
EVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptx
EVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptxEVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptx
EVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptxJorgeParada26
 
investigación de los Avances tecnológicos del siglo XXI
investigación de los Avances tecnológicos del siglo XXIinvestigación de los Avances tecnológicos del siglo XXI
investigación de los Avances tecnológicos del siglo XXIhmpuellon
 
Buenos_Aires_Meetup_Redis_20240430_.pptx
Buenos_Aires_Meetup_Redis_20240430_.pptxBuenos_Aires_Meetup_Redis_20240430_.pptx
Buenos_Aires_Meetup_Redis_20240430_.pptxFederico Castellari
 
Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...
Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...
Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...JohnRamos830530
 
Avances tecnológicos del siglo XXI 10-07 eyvana
Avances tecnológicos del siglo XXI 10-07 eyvanaAvances tecnológicos del siglo XXI 10-07 eyvana
Avances tecnológicos del siglo XXI 10-07 eyvanamcerpam
 
EL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptx
EL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptxEL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptx
EL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptxMiguelAtencio10
 

Dernier (12)

PROYECTO FINAL. Tutorial para publicar en SlideShare.pptx
PROYECTO FINAL. Tutorial para publicar en SlideShare.pptxPROYECTO FINAL. Tutorial para publicar en SlideShare.pptx
PROYECTO FINAL. Tutorial para publicar en SlideShare.pptx
 
Innovaciones tecnologicas en el siglo 21
Innovaciones tecnologicas en el siglo 21Innovaciones tecnologicas en el siglo 21
Innovaciones tecnologicas en el siglo 21
 
Avances tecnológicos del siglo XXI y ejemplos de estos
Avances tecnológicos del siglo XXI y ejemplos de estosAvances tecnológicos del siglo XXI y ejemplos de estos
Avances tecnológicos del siglo XXI y ejemplos de estos
 
How to use Redis with MuleSoft. A quick start presentation.
How to use Redis with MuleSoft. A quick start presentation.How to use Redis with MuleSoft. A quick start presentation.
How to use Redis with MuleSoft. A quick start presentation.
 
redes informaticas en una oficina administrativa
redes informaticas en una oficina administrativaredes informaticas en una oficina administrativa
redes informaticas en una oficina administrativa
 
pruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNITpruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNIT
 
EVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptx
EVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptxEVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptx
EVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptx
 
investigación de los Avances tecnológicos del siglo XXI
investigación de los Avances tecnológicos del siglo XXIinvestigación de los Avances tecnológicos del siglo XXI
investigación de los Avances tecnológicos del siglo XXI
 
Buenos_Aires_Meetup_Redis_20240430_.pptx
Buenos_Aires_Meetup_Redis_20240430_.pptxBuenos_Aires_Meetup_Redis_20240430_.pptx
Buenos_Aires_Meetup_Redis_20240430_.pptx
 
Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...
Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...
Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...
 
Avances tecnológicos del siglo XXI 10-07 eyvana
Avances tecnológicos del siglo XXI 10-07 eyvanaAvances tecnológicos del siglo XXI 10-07 eyvana
Avances tecnológicos del siglo XXI 10-07 eyvana
 
EL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptx
EL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptxEL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptx
EL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptx
 

El modelo de seguridad de iOS

  • 1.
  • 2. Trabajando en seguridad desde hace 6 años Apasionado por la seguridad de toda la vida
  • 3.
  • 4.
  • 5.
  • 6. ¿En serio vamos a diseccionar un sistema operativo? ¿Y además hablando también de hardware? ¿Estamos locos?
  • 8. Especialmente interesante a partir de 3GS Cifrado total del almacenamiento Procesador criptográfico Claves que nunca salen del mismo y ‘fuseadas’ para cada unidad (UID & GID)
  • 9.
  • 10.
  • 11.
  • 12. Combinan CPU (ARM Cortex) + GPU + RAM S5L8920 iPhone 3GS S5L8930 (Apple A4) iPad / iPhone 4 / ATV 2G S5L8940 (Apple A5) iPad 2 / iPhone 4S S5L8945 (Apple A5X) iPad3 S5L8950 (Apple A6) iPhone 5 Familia ARMv7 Juegos de instrucciones ARM, THUMB y THUMB-2
  • 13. Originalmente desarrollado para el primer iPhone (2007)
  • 14. Sin duda uno de los sistemas operativos más seguros Primera versión: iPhoneOS 1.0 Además cada vez más seguro Basado en Mac OS X
  • 15. iPhone OS 1.0 Sin sandboxing Todo corría como root Sin firma de código ni DEP ni ASLR ¡Sin apps! iPhone OS 1.0 libTiff Exploit (Tavis Ormandy)
  • 16. iOS 2 implementa la mayor parte de la actual arquitectura App Store Sin ASLR… Casi todos los procesos corren sin privilegios SMS exploit (Charlie Miller) La sandbox era igual de permisiva para todas las apps. Jailbreak Ikee Worm
  • 17.
  • 18. iOS 3 Sin ASLR Introducen code signing. MobileSafari Pwn2Own 2010 Payload full ROP No rompieron la sandbox
  • 19. iOS 4 Se introduce el sistema de cifrado actual En realidad con alguna pequeña modificación jailbreakme.com (v2) (by comex) Stack Overflow (Safari) + Integer Overflow (IOKit) iOS 4.3 Aplicaciones compiladas con PIE Introduce ASLR main 256 posibles ubicaciones (si PIE) dyld 256 posibles ubicaciones (si PIE) dynamic library cache 4200 posibles ubicaciones
  • 20. iOS 4.3.3 jailbreakme.com (v3 Saffron) (by comex again) Leaking Integer Overflow (Safari) + Problema de tipado (IOMobileFrameBuffer) + Incomplete Codesign
  • 22. iOS 5 Introduce Stack Canaries Introduce Automatic Reference Counting dyld siempre se mueve sea o no PIE el binario. Exploit Corona (5.1.1) Racoon Format String Overflow + HFS Heap Overflow Se cierra vulnerabilidad que permitía downgrades Se acaba con el incomplete code signing iOS 6 Sin novedades conocidas en la arquitectura de seguridad Parcheo continuado de bugs (197)
  • 23. Una clave para cada archivo File System Key Se genera durante la instalación Está cifrada con UID Si se borra se pierde todo Effaceable Storage! Diferentes Class Keys
  • 24. Wipe muy rápido y efectivo Posible cambiar fácilmente la “Clase” de un fichero Es posible cambiar el Passcode sin recifrar todo. Acceso a los ficheros en función de la clase del mismo AES256-CBC
  • 25. Los datos se almacenan según cuando deben estar accesibles Dispositivo desbloqueado Dispositivo alguna vez desbloqueado (arrancado) Siempre Cada clase tiene una clave maestra… … cifrada con una combinación de passcode y UID Estas claves se almacenan en la “keybag” del sistema
  • 26. Región especial de las flash Almacena tres claves FileSystem Key Clave de la clase NSProtectionNone Clave del keybag del sistema
  • 27. NSFileProtectionComplete Passcode + UID Se borra al bloquear NSFileProtectionCompleteUntilFirstUserAuthentication Passcode + UID No se borra al bloquear NSFileProtectionNone UID Clave de la clase guardada en Effaceable Storage
  • 28. NSFileProtectionCompleteUnlessOpen Ficheros que necesitan escribirse con el dispositivo bloqueado Se genera un par efímero Con ECDH se crea un secreto compartido con la privada efímera y la pública de la clase. Los metadatos del fichero almacenan: La clave del fichero cifrada con el hash del secreto La parte pública efímera Se borra la parte privada Cuando se cierra el fichero su clave se borra Para abrirlo: Recrear el secreto compartido con la parte privada de la clase y la pública efímera Descifrar la clave del fichero con el hash del secreto
  • 29.
  • 30.
  • 31. Base de datos SQLite Permiten guardar información de forma fácil a las Apps NSFileProtectionNone Acceso a través de API provista por Apple Acceso permitido o no en función de keychain-access-groups application-identifier Clases análogas a las de los ficheros Sin NSFileProtectionCompleteUnlessOpen AES128-GCM
  • 32.
  • 33. Contienen las claves de las clases. Ficheros & Keychain System keybag: donde están normalmente en el sistema Se accede a través de AppleKeyStore.kext Triple cifrado Filesystem key System keybag key Cada clave de clase cifrada con UID / passcode Backup keybag: usada en los backups cifrados de iTunes PKBDF2(password iTunes) * 10000
  • 34. iCloud keybag: similar a la de Backup Usa criptografía asimétrica como en “Protected Unless Open” para hacer el backup en el background. Escrow keybag: iOS la crea al conectar con iTunes por primera vez y se envía cifrada al PC con una clave. La clave queda guardada en el dispositivo El PC almacena la keybag cifrada con la clave. La clave se envía cuando se conecta a iTunes y permite sincronizar aunque el dispositivo esté bloqueado. Utilizada también para MDM.
  • 35.
  • 36. La Passcode Key se calcula utilizando el UID Proceso deliberadamente lento No es posible crack offline! En iPhone 4 con iOS 5:
  • 37. Es un dispositivo embebido Extraer la UID del procesador está normalmente fuera de ámbito (¿microscopios electrónicos de barrido? ¿FIB? La otra posibilidad: hacerlo ‘a la Live CD’
  • 38.
  • 39. Bootrom Bootloader Firmware
  • 40. Lo primero que se ejecuta Sólo lectura Origen de la cadena de confianza Si es vulnerado la seguridad del sistema se viene abajo Y no tiene arreglo…
  • 41. Modelo / 0x24000 usb_control_ Limera1n SHA-1 Image Exploit Segment msg(0xA1,1) Segment Overflow Overflow iPhone 3GS A X iPhone 3GS B X iPod 2G X iPod 4G X X iPad 1G X X iPhone 4 X X Apple TV 2G X X
  • 42. Fallo a nivel de aplicación / kernel Vulnerabilidad en BootROM
  • 43. Permitir ejecución de aplicaciones no firmadas por Apple Instala la tienda alternativa de aplicaciones: Cydia Permite instalar aplicaciones “piratas” Y otras muchas utilidades por supuesto Reduce la seguridad del sistema a la de Android
  • 45.
  • 46. BootROM exploit == tethered jailbreak BootROM exploit + Incomplete Code Signing + Kernel Exploit = untethered jailbreak Safari + Kernel exploit = Remote jailbreak Safari + Kernel + Incomplete Code Signing exploit = remote untethered jailbreak
  • 47. Aplica a todas las aplicaciones de terceros (y a la mayoría de las propias) Impide Acceder a ficheros de otra aplicación Acceder a ficheros del sistema El acceso a la funcionalidad de la API está limitado por los entitlements.
  • 48. Cada aplicación declara a qué funcionalidad desea tener acceso No se permite el acceso a la API sin el entitlement correspondiente Unido a la firma de código es un mecanismo muy potente
  • 49. Todas las aplicaciones deben estar firmadas Las de terceros son firmadas con la clave privada que identifica al desarrollador (firmada por Apple) La identidad del desarrollador es verificada por Apple La calidad del código es revisada por Apple Se permite cargar nuevas entidades de confianza Para desarrollo Para empresas Ciertamente peligroso Es responsabilidad del kernel verificarlo
  • 50. También en tiempo de ejecución (para cada página) Mucho más allá de W^X Una de las razones para que no haya Flash o Java La cadena de confianza se mantiene hasta el último momento
  • 51. La excepción que confirma la regla (iOS 4.3) dynamic code signing entitlement Permite a Safari ejecutar JIT Requiere una zona de memoria RWX (que también es marcada como JIT) Puede permitir exploits más sencillos en Safari
  • 52. Hasta iOS 5.0.1 sólo se comprobaba el entitlement de dynamic code signing si se pasaba la flag MAP_ANON ¡Cualquiera podía reservar memoria RWX! Charlie Miller lo descubre y cuela aplicación en App Store que ejecuta payloads remotas. EPIC FAIL
  • 54. Apple ha logrado llegar a un nivel de seguridad realmente impresionante. A costa de sacrificar la “libertad” del usuario Apple es el moderno sysadmin Ha demostrado no abandonar los modelos antiguos No obstante, seguirán saliendo nuevas vulnerabilidades