pentesting de aplicaciones ios miguel Á. arroyo · 53 análisis de tráfico de red diferenciar...
TRANSCRIPT
![Page 1: Pentesting de Aplicaciones iOS Miguel Á. Arroyo · 53 Análisis de tráfico de red Diferenciar entre tráfico generado durante la instalación y el tráfico que se genera mientras](https://reader035.vdocuments.mx/reader035/viewer/2022070719/5edf4d1bad6a402d666aa6cb/html5/thumbnails/1.jpg)
cccccccccccccccccc
CyberCamp.es
Pentesting de
Aplicaciones iOS
Miguel Á. Arroyo
![Page 2: Pentesting de Aplicaciones iOS Miguel Á. Arroyo · 53 Análisis de tráfico de red Diferenciar entre tráfico generado durante la instalación y el tráfico que se genera mientras](https://reader035.vdocuments.mx/reader035/viewer/2022070719/5edf4d1bad6a402d666aa6cb/html5/thumbnails/2.jpg)
# whoami
2
# IS Auditor – SVT Cloud&Security Services
# Hack&Beers founder
# Hacking Solidario co-founder
# Twitter: @miguel_arroyo76
# Blog: www.hacking-etico.com
![Page 3: Pentesting de Aplicaciones iOS Miguel Á. Arroyo · 53 Análisis de tráfico de red Diferenciar entre tráfico generado durante la instalación y el tráfico que se genera mientras](https://reader035.vdocuments.mx/reader035/viewer/2022070719/5edf4d1bad6a402d666aa6cb/html5/thumbnails/3.jpg)
3
# echo /etc/crontab
# Introducción a la seguridad en iOS
# OWASP Mobile Security Project
# Top 10 Mobile Risks & Top 10 Mobile Controls
# Guías para desarrolladores y auditores
# Arsenal de herramientas para auditores
# Preparación de entorno de trabajo
# A tener en cuenta antes de empezar
# Application Mapping
# Client Attacks
# Network Attacks
# Server Attacks
![Page 4: Pentesting de Aplicaciones iOS Miguel Á. Arroyo · 53 Análisis de tráfico de red Diferenciar entre tráfico generado durante la instalación y el tráfico que se genera mientras](https://reader035.vdocuments.mx/reader035/viewer/2022070719/5edf4d1bad6a402d666aa6cb/html5/thumbnails/4.jpg)
4
Introducción a la seguridad en iOS
![Page 5: Pentesting de Aplicaciones iOS Miguel Á. Arroyo · 53 Análisis de tráfico de red Diferenciar entre tráfico generado durante la instalación y el tráfico que se genera mientras](https://reader035.vdocuments.mx/reader035/viewer/2022070719/5edf4d1bad6a402d666aa6cb/html5/thumbnails/5.jpg)
5
iOS Security Guide de Apple
![Page 6: Pentesting de Aplicaciones iOS Miguel Á. Arroyo · 53 Análisis de tráfico de red Diferenciar entre tráfico generado durante la instalación y el tráfico que se genera mientras](https://reader035.vdocuments.mx/reader035/viewer/2022070719/5edf4d1bad6a402d666aa6cb/html5/thumbnails/6.jpg)
6
Diagrama de arquitectura de seguridad en iOS
![Page 7: Pentesting de Aplicaciones iOS Miguel Á. Arroyo · 53 Análisis de tráfico de red Diferenciar entre tráfico generado durante la instalación y el tráfico que se genera mientras](https://reader035.vdocuments.mx/reader035/viewer/2022070719/5edf4d1bad6a402d666aa6cb/html5/thumbnails/7.jpg)
7
Secure Boot Chain
Procesos de arranque en iOS
BootROM
LLB iBootiOS
Kernel
![Page 8: Pentesting de Aplicaciones iOS Miguel Á. Arroyo · 53 Análisis de tráfico de red Diferenciar entre tráfico generado durante la instalación y el tráfico que se genera mientras](https://reader035.vdocuments.mx/reader035/viewer/2022070719/5edf4d1bad6a402d666aa6cb/html5/thumbnails/8.jpg)
8
Autorización de software de sistema
Prevención de “downgrade”
![Page 9: Pentesting de Aplicaciones iOS Miguel Á. Arroyo · 53 Análisis de tráfico de red Diferenciar entre tráfico generado durante la instalación y el tráfico que se genera mientras](https://reader035.vdocuments.mx/reader035/viewer/2022070719/5edf4d1bad6a402d666aa6cb/html5/thumbnails/9.jpg)
9
Secure update process
Seguridad en el proceso de actualización
• Boot info
• Kernel info
• Unique ID (ECID)
• Nonce
Device > Apple Server
• Actualizaciones disponibles
• Devuelve datos firmados
Apple Server > Device • Cadena de
arranque comprueba firma de software
Device
![Page 10: Pentesting de Aplicaciones iOS Miguel Á. Arroyo · 53 Análisis de tráfico de red Diferenciar entre tráfico generado durante la instalación y el tráfico que se genera mientras](https://reader035.vdocuments.mx/reader035/viewer/2022070719/5edf4d1bad6a402d666aa6cb/html5/thumbnails/10.jpg)
10
Secure Enclave
Co-procesador de cifrado: Gestión Touch ID y Credenciales
![Page 11: Pentesting de Aplicaciones iOS Miguel Á. Arroyo · 53 Análisis de tráfico de red Diferenciar entre tráfico generado durante la instalación y el tráfico que se genera mientras](https://reader035.vdocuments.mx/reader035/viewer/2022070719/5edf4d1bad6a402d666aa6cb/html5/thumbnails/11.jpg)
11
Touch ID
Autenticación biométrica con huella dactilar
![Page 12: Pentesting de Aplicaciones iOS Miguel Á. Arroyo · 53 Análisis de tráfico de red Diferenciar entre tráfico generado durante la instalación y el tráfico que se genera mientras](https://reader035.vdocuments.mx/reader035/viewer/2022070719/5edf4d1bad6a402d666aa6cb/html5/thumbnails/12.jpg)
12
App Code Signing
Firma de aplicaciones: Autenticidad e integridad de una App
![Page 13: Pentesting de Aplicaciones iOS Miguel Á. Arroyo · 53 Análisis de tráfico de red Diferenciar entre tráfico generado durante la instalación y el tráfico que se genera mientras](https://reader035.vdocuments.mx/reader035/viewer/2022070719/5edf4d1bad6a402d666aa6cb/html5/thumbnails/13.jpg)
13
Runtime process security
Seguridad en tiempo de ejecución: sandboxing
![Page 14: Pentesting de Aplicaciones iOS Miguel Á. Arroyo · 53 Análisis de tráfico de red Diferenciar entre tráfico generado durante la instalación y el tráfico que se genera mientras](https://reader035.vdocuments.mx/reader035/viewer/2022070719/5edf4d1bad6a402d666aa6cb/html5/thumbnails/14.jpg)
14
Runtime process security
ASLR – DEP – Stack Canaries
![Page 15: Pentesting de Aplicaciones iOS Miguel Á. Arroyo · 53 Análisis de tráfico de red Diferenciar entre tráfico generado durante la instalación y el tráfico que se genera mientras](https://reader035.vdocuments.mx/reader035/viewer/2022070719/5edf4d1bad6a402d666aa6cb/html5/thumbnails/15.jpg)
15
Network security
Seguridad en las comunicaciones
• Soporte de TLS (1.0, 1.1 y 1.2).
• SSL desactivado por defecto.
• Ni siquiera se permiten comunicaciones SSLv3 en Apps basadas
en WebKit (Safari).
• A partir de iOS 9, todas las Apps desarrolladas se integran con
estas políticas de seguridad.
• Un fallo en el certificado del servidor, derivará en un fallo de
conexión.
![Page 16: Pentesting de Aplicaciones iOS Miguel Á. Arroyo · 53 Análisis de tráfico de red Diferenciar entre tráfico generado durante la instalación y el tráfico que se genera mientras](https://reader035.vdocuments.mx/reader035/viewer/2022070719/5edf4d1bad6a402d666aa6cb/html5/thumbnails/16.jpg)
16
OWASP Mobile Security Project
![Page 17: Pentesting de Aplicaciones iOS Miguel Á. Arroyo · 53 Análisis de tráfico de red Diferenciar entre tráfico generado durante la instalación y el tráfico que se genera mientras](https://reader035.vdocuments.mx/reader035/viewer/2022070719/5edf4d1bad6a402d666aa6cb/html5/thumbnails/17.jpg)
17
OWASP – Open Web Application Security Project
Proyecto abierto dedicado a determinar y combatir
las causas que hacen que el software sea inseguro.
![Page 18: Pentesting de Aplicaciones iOS Miguel Á. Arroyo · 53 Análisis de tráfico de red Diferenciar entre tráfico generado durante la instalación y el tráfico que se genera mientras](https://reader035.vdocuments.mx/reader035/viewer/2022070719/5edf4d1bad6a402d666aa6cb/html5/thumbnails/18.jpg)
18
OWASP
¿A quién va dirigido?
Objetivos
Aplicable en…
Desarrollo Seguridad
Ayuda a…
Desarrollo seguro de Apps
Evaluar la seguridad de
Apps
![Page 19: Pentesting de Aplicaciones iOS Miguel Á. Arroyo · 53 Análisis de tráfico de red Diferenciar entre tráfico generado durante la instalación y el tráfico que se genera mientras](https://reader035.vdocuments.mx/reader035/viewer/2022070719/5edf4d1bad6a402d666aa6cb/html5/thumbnails/19.jpg)
19
OWASP
Seguridad desde el diseño
![Page 20: Pentesting de Aplicaciones iOS Miguel Á. Arroyo · 53 Análisis de tráfico de red Diferenciar entre tráfico generado durante la instalación y el tráfico que se genera mientras](https://reader035.vdocuments.mx/reader035/viewer/2022070719/5edf4d1bad6a402d666aa6cb/html5/thumbnails/20.jpg)
20
OWASP
Mobile Security Project
![Page 21: Pentesting de Aplicaciones iOS Miguel Á. Arroyo · 53 Análisis de tráfico de red Diferenciar entre tráfico generado durante la instalación y el tráfico que se genera mientras](https://reader035.vdocuments.mx/reader035/viewer/2022070719/5edf4d1bad6a402d666aa6cb/html5/thumbnails/21.jpg)
21
Top 10 Mobile Risks & Controls
![Page 22: Pentesting de Aplicaciones iOS Miguel Á. Arroyo · 53 Análisis de tráfico de red Diferenciar entre tráfico generado durante la instalación y el tráfico que se genera mientras](https://reader035.vdocuments.mx/reader035/viewer/2022070719/5edf4d1bad6a402d666aa6cb/html5/thumbnails/22.jpg)
22
OWASP Mobile Security Project
Top 10 Mobile Risks
![Page 23: Pentesting de Aplicaciones iOS Miguel Á. Arroyo · 53 Análisis de tráfico de red Diferenciar entre tráfico generado durante la instalación y el tráfico que se genera mientras](https://reader035.vdocuments.mx/reader035/viewer/2022070719/5edf4d1bad6a402d666aa6cb/html5/thumbnails/23.jpg)
23
OWASP Mobile Security Project
Definición de controles: OWASP + enisa
![Page 24: Pentesting de Aplicaciones iOS Miguel Á. Arroyo · 53 Análisis de tráfico de red Diferenciar entre tráfico generado durante la instalación y el tráfico que se genera mientras](https://reader035.vdocuments.mx/reader035/viewer/2022070719/5edf4d1bad6a402d666aa6cb/html5/thumbnails/24.jpg)
24
OWASP Mobile Security Project
Top 10 Mobile Controls
![Page 25: Pentesting de Aplicaciones iOS Miguel Á. Arroyo · 53 Análisis de tráfico de red Diferenciar entre tráfico generado durante la instalación y el tráfico que se genera mientras](https://reader035.vdocuments.mx/reader035/viewer/2022070719/5edf4d1bad6a402d666aa6cb/html5/thumbnails/25.jpg)
25
Guías para desarrolladores y auditores
![Page 26: Pentesting de Aplicaciones iOS Miguel Á. Arroyo · 53 Análisis de tráfico de red Diferenciar entre tráfico generado durante la instalación y el tráfico que se genera mientras](https://reader035.vdocuments.mx/reader035/viewer/2022070719/5edf4d1bad6a402d666aa6cb/html5/thumbnails/26.jpg)
26
OWASP Mobile Security Project
Guías
Developer Cheat Sheet
Secure Mobile Development
App Security Testing Cheat Sheet
Security Testing Guide
![Page 27: Pentesting de Aplicaciones iOS Miguel Á. Arroyo · 53 Análisis de tráfico de red Diferenciar entre tráfico generado durante la instalación y el tráfico que se genera mientras](https://reader035.vdocuments.mx/reader035/viewer/2022070719/5edf4d1bad6a402d666aa6cb/html5/thumbnails/27.jpg)
27
OWASP Mobile Security Project
Developer Cheat Sheet
![Page 28: Pentesting de Aplicaciones iOS Miguel Á. Arroyo · 53 Análisis de tráfico de red Diferenciar entre tráfico generado durante la instalación y el tráfico que se genera mientras](https://reader035.vdocuments.mx/reader035/viewer/2022070719/5edf4d1bad6a402d666aa6cb/html5/thumbnails/28.jpg)
28
OWASP Mobile Security Project
Security Testing Guide
![Page 29: Pentesting de Aplicaciones iOS Miguel Á. Arroyo · 53 Análisis de tráfico de red Diferenciar entre tráfico generado durante la instalación y el tráfico que se genera mientras](https://reader035.vdocuments.mx/reader035/viewer/2022070719/5edf4d1bad6a402d666aa6cb/html5/thumbnails/29.jpg)
29
OWASP Mobile Security Project
Centrándonos en iOS…
![Page 30: Pentesting de Aplicaciones iOS Miguel Á. Arroyo · 53 Análisis de tráfico de red Diferenciar entre tráfico generado durante la instalación y el tráfico que se genera mientras](https://reader035.vdocuments.mx/reader035/viewer/2022070719/5edf4d1bad6a402d666aa6cb/html5/thumbnails/30.jpg)
30
OWASP Mobile Security Project
Auditor Cheat Sheet
![Page 31: Pentesting de Aplicaciones iOS Miguel Á. Arroyo · 53 Análisis de tráfico de red Diferenciar entre tráfico generado durante la instalación y el tráfico que se genera mientras](https://reader035.vdocuments.mx/reader035/viewer/2022070719/5edf4d1bad6a402d666aa6cb/html5/thumbnails/31.jpg)
31
Arsenal de herramientas para auditores
![Page 32: Pentesting de Aplicaciones iOS Miguel Á. Arroyo · 53 Análisis de tráfico de red Diferenciar entre tráfico generado durante la instalación y el tráfico que se genera mientras](https://reader035.vdocuments.mx/reader035/viewer/2022070719/5edf4d1bad6a402d666aa6cb/html5/thumbnails/32.jpg)
32
OWASP Mobile Security Project
Herramientas
![Page 33: Pentesting de Aplicaciones iOS Miguel Á. Arroyo · 53 Análisis de tráfico de red Diferenciar entre tráfico generado durante la instalación y el tráfico que se genera mientras](https://reader035.vdocuments.mx/reader035/viewer/2022070719/5edf4d1bad6a402d666aa6cb/html5/thumbnails/33.jpg)
33
OWASP Mobile Security Project
Radare2 – www.radare.org
![Page 34: Pentesting de Aplicaciones iOS Miguel Á. Arroyo · 53 Análisis de tráfico de red Diferenciar entre tráfico generado durante la instalación y el tráfico que se genera mientras](https://reader035.vdocuments.mx/reader035/viewer/2022070719/5edf4d1bad6a402d666aa6cb/html5/thumbnails/34.jpg)
34
Preparación del entorno de trabajo
![Page 35: Pentesting de Aplicaciones iOS Miguel Á. Arroyo · 53 Análisis de tráfico de red Diferenciar entre tráfico generado durante la instalación y el tráfico que se genera mientras](https://reader035.vdocuments.mx/reader035/viewer/2022070719/5edf4d1bad6a402d666aa6cb/html5/thumbnails/35.jpg)
35
Entorno de trabajo
Romper la cadena de seguridad: Jailbreak
![Page 36: Pentesting de Aplicaciones iOS Miguel Á. Arroyo · 53 Análisis de tráfico de red Diferenciar entre tráfico generado durante la instalación y el tráfico que se genera mientras](https://reader035.vdocuments.mx/reader035/viewer/2022070719/5edf4d1bad6a402d666aa6cb/html5/thumbnails/36.jpg)
36
Ejemplo de herramienta para Jailbreak
Pangu Team
![Page 37: Pentesting de Aplicaciones iOS Miguel Á. Arroyo · 53 Análisis de tráfico de red Diferenciar entre tráfico generado durante la instalación y el tráfico que se genera mientras](https://reader035.vdocuments.mx/reader035/viewer/2022070719/5edf4d1bad6a402d666aa6cb/html5/thumbnails/37.jpg)
37
Cydia
El AppStore “alternativo”
![Page 38: Pentesting de Aplicaciones iOS Miguel Á. Arroyo · 53 Análisis de tráfico de red Diferenciar entre tráfico generado durante la instalación y el tráfico que se genera mientras](https://reader035.vdocuments.mx/reader035/viewer/2022070719/5edf4d1bad6a402d666aa6cb/html5/thumbnails/38.jpg)
38
Acceso por SSH al dispositivo iOS
¡Ojo! Credenciales por defecto: root / alpine
![Page 39: Pentesting de Aplicaciones iOS Miguel Á. Arroyo · 53 Análisis de tráfico de red Diferenciar entre tráfico generado durante la instalación y el tráfico que se genera mientras](https://reader035.vdocuments.mx/reader035/viewer/2022070719/5edf4d1bad6a402d666aa6cb/html5/thumbnails/39.jpg)
39
Gestión de paquetes con APT
APT 0.7 Strict
![Page 40: Pentesting de Aplicaciones iOS Miguel Á. Arroyo · 53 Análisis de tráfico de red Diferenciar entre tráfico generado durante la instalación y el tráfico que se genera mientras](https://reader035.vdocuments.mx/reader035/viewer/2022070719/5edf4d1bad6a402d666aa6cb/html5/thumbnails/40.jpg)
40
Otras herramientas
Herramientas necesarias
• nmap
• sqlite3
• plutil
• clutch
• wget
• netstat
• file
• top
• ps
• unzip
• curl
• find
• tcpdump
• nano
• …
![Page 41: Pentesting de Aplicaciones iOS Miguel Á. Arroyo · 53 Análisis de tráfico de red Diferenciar entre tráfico generado durante la instalación y el tráfico que se genera mientras](https://reader035.vdocuments.mx/reader035/viewer/2022070719/5edf4d1bad6a402d666aa6cb/html5/thumbnails/41.jpg)
41
Aplicaciones vulnerables para probar
Damn Vulnerable Web Application
![Page 42: Pentesting de Aplicaciones iOS Miguel Á. Arroyo · 53 Análisis de tráfico de red Diferenciar entre tráfico generado durante la instalación y el tráfico que se genera mientras](https://reader035.vdocuments.mx/reader035/viewer/2022070719/5edf4d1bad6a402d666aa6cb/html5/thumbnails/42.jpg)
42
Aplicación vulnerable para probar
Damn Vulnerable iOS Application
damnvulnerableiosapp.com
![Page 43: Pentesting de Aplicaciones iOS Miguel Á. Arroyo · 53 Análisis de tráfico de red Diferenciar entre tráfico generado durante la instalación y el tráfico que se genera mientras](https://reader035.vdocuments.mx/reader035/viewer/2022070719/5edf4d1bad6a402d666aa6cb/html5/thumbnails/43.jpg)
43
A tener en cuenta antes de empezar
![Page 44: Pentesting de Aplicaciones iOS Miguel Á. Arroyo · 53 Análisis de tráfico de red Diferenciar entre tráfico generado durante la instalación y el tráfico que se genera mientras](https://reader035.vdocuments.mx/reader035/viewer/2022070719/5edf4d1bad6a402d666aa6cb/html5/thumbnails/44.jpg)
44
Metodología
La importancia de seguir una metodología
Hace referencia al camino o al conjunto de
procedimientos racionales utilizados para alcanzar
el objetivo o la gama de objetivos que rige una
investigación científica, una exposición doctrinal o
tareas que requieran habilidades, conocimientos o
cuidados específicos.
![Page 45: Pentesting de Aplicaciones iOS Miguel Á. Arroyo · 53 Análisis de tráfico de red Diferenciar entre tráfico generado durante la instalación y el tráfico que se genera mientras](https://reader035.vdocuments.mx/reader035/viewer/2022070719/5edf4d1bad6a402d666aa6cb/html5/thumbnails/45.jpg)
45
Controles de seguridad
Objetivo: evaluar su presencia, eficacia y eficiencia
91 controles en total
Por dónde empezar: iOS App Security Testing Cheat Sheet
¿Hay que evaluarlos todos? ~70 comunes a todas plataformas
![Page 46: Pentesting de Aplicaciones iOS Miguel Á. Arroyo · 53 Análisis de tráfico de red Diferenciar entre tráfico generado durante la instalación y el tráfico que se genera mientras](https://reader035.vdocuments.mx/reader035/viewer/2022070719/5edf4d1bad6a402d666aa6cb/html5/thumbnails/46.jpg)
46
Top 10 de riesgos y controles
Siempre tenerlos muy presentes
![Page 47: Pentesting de Aplicaciones iOS Miguel Á. Arroyo · 53 Análisis de tráfico de red Diferenciar entre tráfico generado durante la instalación y el tráfico que se genera mientras](https://reader035.vdocuments.mx/reader035/viewer/2022070719/5edf4d1bad6a402d666aa6cb/html5/thumbnails/47.jpg)
47
Por dónde empezar
Echamos manos a nuestra “chuleta”
![Page 48: Pentesting de Aplicaciones iOS Miguel Á. Arroyo · 53 Análisis de tráfico de red Diferenciar entre tráfico generado durante la instalación y el tráfico que se genera mientras](https://reader035.vdocuments.mx/reader035/viewer/2022070719/5edf4d1bad6a402d666aa6cb/html5/thumbnails/48.jpg)
48
Mapeo de la aplicación
![Page 49: Pentesting de Aplicaciones iOS Miguel Á. Arroyo · 53 Análisis de tráfico de red Diferenciar entre tráfico generado durante la instalación y el tráfico que se genera mientras](https://reader035.vdocuments.mx/reader035/viewer/2022070719/5edf4d1bad6a402d666aa6cb/html5/thumbnails/49.jpg)
49
Mapeo de la aplicación
Mapeo de plataforma y arquitectura de la aplicación
![Page 50: Pentesting de Aplicaciones iOS Miguel Á. Arroyo · 53 Análisis de tráfico de red Diferenciar entre tráfico generado durante la instalación y el tráfico que se genera mientras](https://reader035.vdocuments.mx/reader035/viewer/2022070719/5edf4d1bad6a402d666aa6cb/html5/thumbnails/50.jpg)
50
Mapeando la aplicación
Objetivos de esta fase# Entender funcionamiento de la app a nivel usuario
# Entender su lógica, usuarios y privilegios
# Cuál es el flujo de la comunicación entre objetos
# Cuándo se produce una comunicación con el servidor
# Atención especial a eventos de la aplicación
# Infraestructura de la aplicación
![Page 51: Pentesting de Aplicaciones iOS Miguel Á. Arroyo · 53 Análisis de tráfico de red Diferenciar entre tráfico generado durante la instalación y el tráfico que se genera mientras](https://reader035.vdocuments.mx/reader035/viewer/2022070719/5edf4d1bad6a402d666aa6cb/html5/thumbnails/51.jpg)
51
Ataques de red
![Page 52: Pentesting de Aplicaciones iOS Miguel Á. Arroyo · 53 Análisis de tráfico de red Diferenciar entre tráfico generado durante la instalación y el tráfico que se genera mientras](https://reader035.vdocuments.mx/reader035/viewer/2022070719/5edf4d1bad6a402d666aa6cb/html5/thumbnails/52.jpg)
52
Análisis de tráfico de red
Objetivo: capturar información sensible y detectar
posibles vulnerabilidades en las comunicaciones
![Page 53: Pentesting de Aplicaciones iOS Miguel Á. Arroyo · 53 Análisis de tráfico de red Diferenciar entre tráfico generado durante la instalación y el tráfico que se genera mientras](https://reader035.vdocuments.mx/reader035/viewer/2022070719/5edf4d1bad6a402d666aa6cb/html5/thumbnails/53.jpg)
53
Análisis de tráfico de red
Diferenciar entre tráfico generado durante la instalación
y el tráfico que se genera mientras se usa.
Importante no limitarlo solo a http y https
Uso de proxy web local para captura de tráfico web
Certificado self-signed – Perfil de confianza
Para la captura de tráfico https
Uso de tcpdump para capturar todo el tráfico
Análisis posterior de la captura con Wireshark
Detección de nuevos servidores / servicios
Ampliación de la superficie de ataque
![Page 54: Pentesting de Aplicaciones iOS Miguel Á. Arroyo · 53 Análisis de tráfico de red Diferenciar entre tráfico generado durante la instalación y el tráfico que se genera mientras](https://reader035.vdocuments.mx/reader035/viewer/2022070719/5edf4d1bad6a402d666aa6cb/html5/thumbnails/54.jpg)
54
Análisis de tráfico con proxy web
OWASP Zap / Burp Suite / Webscarab
![Page 55: Pentesting de Aplicaciones iOS Miguel Á. Arroyo · 53 Análisis de tráfico de red Diferenciar entre tráfico generado durante la instalación y el tráfico que se genera mientras](https://reader035.vdocuments.mx/reader035/viewer/2022070719/5edf4d1bad6a402d666aa6cb/html5/thumbnails/55.jpg)
55
Análisis de tráfico con proxy web
https: Certificado SSL + Perfil de confianza
![Page 56: Pentesting de Aplicaciones iOS Miguel Á. Arroyo · 53 Análisis de tráfico de red Diferenciar entre tráfico generado durante la instalación y el tráfico que se genera mientras](https://reader035.vdocuments.mx/reader035/viewer/2022070719/5edf4d1bad6a402d666aa6cb/html5/thumbnails/56.jpg)
56
Ataques del lado servidor
![Page 57: Pentesting de Aplicaciones iOS Miguel Á. Arroyo · 53 Análisis de tráfico de red Diferenciar entre tráfico generado durante la instalación y el tráfico que se genera mientras](https://reader035.vdocuments.mx/reader035/viewer/2022070719/5edf4d1bad6a402d666aa6cb/html5/thumbnails/57.jpg)
57
Ataques del lado servidor
Objetivo: analizar puertos abiertos y servicios
publicados así como posibles vulnerabilidades tipo web
![Page 58: Pentesting de Aplicaciones iOS Miguel Á. Arroyo · 53 Análisis de tráfico de red Diferenciar entre tráfico generado durante la instalación y el tráfico que se genera mientras](https://reader035.vdocuments.mx/reader035/viewer/2022070719/5edf4d1bad6a402d666aa6cb/html5/thumbnails/58.jpg)
58
Ataques del lado servidor
Basada en la información obtenida durante el mapeo
de la aplicación y la captura de tráfico.
Análisis de puertos abiertos y servicios publicados
TCP
UDP
Análisis de posibles vulnerabilidades existentes
Análisis de existencia de IDS/IPS/WAF
Uso de proxy web para análisis de tráfico web en
busca de posibles vulnerabilidades (SQLi, XSS,
CSRF, …)
![Page 59: Pentesting de Aplicaciones iOS Miguel Á. Arroyo · 53 Análisis de tráfico de red Diferenciar entre tráfico generado durante la instalación y el tráfico que se genera mientras](https://reader035.vdocuments.mx/reader035/viewer/2022070719/5edf4d1bad6a402d666aa6cb/html5/thumbnails/59.jpg)
59
Análisis de tráfico con proxy web
Ejemplo: Vulnerabilidad Cross Site Request Forgery
![Page 60: Pentesting de Aplicaciones iOS Miguel Á. Arroyo · 53 Análisis de tráfico de red Diferenciar entre tráfico generado durante la instalación y el tráfico que se genera mientras](https://reader035.vdocuments.mx/reader035/viewer/2022070719/5edf4d1bad6a402d666aa6cb/html5/thumbnails/60.jpg)
60
Ataques de lado cliente
![Page 61: Pentesting de Aplicaciones iOS Miguel Á. Arroyo · 53 Análisis de tráfico de red Diferenciar entre tráfico generado durante la instalación y el tráfico que se genera mientras](https://reader035.vdocuments.mx/reader035/viewer/2022070719/5edf4d1bad6a402d666aa6cb/html5/thumbnails/61.jpg)
61
Ataques de lado cliente
Análisis de binario, sistema de ficheros y runtime
![Page 62: Pentesting de Aplicaciones iOS Miguel Á. Arroyo · 53 Análisis de tráfico de red Diferenciar entre tráfico generado durante la instalación y el tráfico que se genera mientras](https://reader035.vdocuments.mx/reader035/viewer/2022070719/5edf4d1bad6a402d666aa6cb/html5/thumbnails/62.jpg)
62
Análisis del sistema de ficheros
Usuarios: root y mobile
![Page 63: Pentesting de Aplicaciones iOS Miguel Á. Arroyo · 53 Análisis de tráfico de red Diferenciar entre tráfico generado durante la instalación y el tráfico que se genera mientras](https://reader035.vdocuments.mx/reader035/viewer/2022070719/5edf4d1bad6a402d666aa6cb/html5/thumbnails/63.jpg)
63
Jerarquía de sistema de ficheros
Estándar FHS (Filesystem Hierarchy Standard)
![Page 64: Pentesting de Aplicaciones iOS Miguel Á. Arroyo · 53 Análisis de tráfico de red Diferenciar entre tráfico generado durante la instalación y el tráfico que se genera mientras](https://reader035.vdocuments.mx/reader035/viewer/2022070719/5edf4d1bad6a402d666aa6cb/html5/thumbnails/64.jpg)
64
Directorio /Applications
Todas las aplicaciones pre-instaladas (y Cydia)
![Page 65: Pentesting de Aplicaciones iOS Miguel Á. Arroyo · 53 Análisis de tráfico de red Diferenciar entre tráfico generado durante la instalación y el tráfico que se genera mientras](https://reader035.vdocuments.mx/reader035/viewer/2022070719/5edf4d1bad6a402d666aa6cb/html5/thumbnails/65.jpg)
65
Directorio /var/containers/Bundle/Applications
Apps instaladas con App Store, Cydia e IPA Installer
![Page 66: Pentesting de Aplicaciones iOS Miguel Á. Arroyo · 53 Análisis de tráfico de red Diferenciar entre tráfico generado durante la instalación y el tráfico que se genera mientras](https://reader035.vdocuments.mx/reader035/viewer/2022070719/5edf4d1bad6a402d666aa6cb/html5/thumbnails/66.jpg)
66
Estructura común de directorios de una App
/AppName.app iTunesArtwork iTunesMetadata.plist
Dentro de /AppName.app
Binario, ficheros de propiedades, bases de datos…
![Page 67: Pentesting de Aplicaciones iOS Miguel Á. Arroyo · 53 Análisis de tráfico de red Diferenciar entre tráfico generado durante la instalación y el tráfico que se genera mientras](https://reader035.vdocuments.mx/reader035/viewer/2022070719/5edf4d1bad6a402d666aa6cb/html5/thumbnails/67.jpg)
67
Bases de datos en aplicaciones
Posible existencia de bases de datos locales
Posibles extensiones: .db .sqlite .sql
Uso de find para localización
![Page 68: Pentesting de Aplicaciones iOS Miguel Á. Arroyo · 53 Análisis de tráfico de red Diferenciar entre tráfico generado durante la instalación y el tráfico que se genera mientras](https://reader035.vdocuments.mx/reader035/viewer/2022070719/5edf4d1bad6a402d666aa6cb/html5/thumbnails/68.jpg)
68
Acceso a base de datos de MobileNotes
App pre-instalada para escribir notas en iOS
Ejemplo de acceso a las notas del dispositivo
![Page 69: Pentesting de Aplicaciones iOS Miguel Á. Arroyo · 53 Análisis de tráfico de red Diferenciar entre tráfico generado durante la instalación y el tráfico que se genera mientras](https://reader035.vdocuments.mx/reader035/viewer/2022070719/5edf4d1bad6a402d666aa6cb/html5/thumbnails/69.jpg)
69
Ficheros plist: Lista de propiedades
Tipo de fichero: Apple binary property list• Los ficheros plist son binarios y no pueden ser leídos como texto.
• La utilidad plutil nos permite leer estos ficheros con formato xml.
• Los ficheros plist pueden ser extraídos de dispositivos sin jailbreak.
• Con iExplorer o extrayendo del backup de iTunes.
![Page 70: Pentesting de Aplicaciones iOS Miguel Á. Arroyo · 53 Análisis de tráfico de red Diferenciar entre tráfico generado durante la instalación y el tráfico que se genera mientras](https://reader035.vdocuments.mx/reader035/viewer/2022070719/5edf4d1bad6a402d666aa6cb/html5/thumbnails/70.jpg)
70
Ficheros plist: Lista de propiedades
Tipo de fichero: Apple binary property list
![Page 71: Pentesting de Aplicaciones iOS Miguel Á. Arroyo · 53 Análisis de tráfico de red Diferenciar entre tráfico generado durante la instalación y el tráfico que se genera mientras](https://reader035.vdocuments.mx/reader035/viewer/2022070719/5edf4d1bad6a402d666aa6cb/html5/thumbnails/71.jpg)
71
Ataques de lado cliente
Análisis de binario, sistema de ficheros y runtime
![Page 72: Pentesting de Aplicaciones iOS Miguel Á. Arroyo · 53 Análisis de tráfico de red Diferenciar entre tráfico generado durante la instalación y el tráfico que se genera mientras](https://reader035.vdocuments.mx/reader035/viewer/2022070719/5edf4d1bad6a402d666aa6cb/html5/thumbnails/72.jpg)
72
Análisis del binario
Información genérica del binario
Información de sub-binarios y arquitecturas
Volcado de clases
Análisis de símbolos
Análisis de dependencias
Análisis de strings
Comprobación de cifrado de la aplicación
Comprobación de activación de ASLR (PIE)
Desensamblado
Depuración
![Page 73: Pentesting de Aplicaciones iOS Miguel Á. Arroyo · 53 Análisis de tráfico de red Diferenciar entre tráfico generado durante la instalación y el tráfico que se genera mientras](https://reader035.vdocuments.mx/reader035/viewer/2022070719/5edf4d1bad6a402d666aa6cb/html5/thumbnails/73.jpg)
73
Información genérica del binario
Herramienta: rabin2 (Radare2 Framework)
![Page 74: Pentesting de Aplicaciones iOS Miguel Á. Arroyo · 53 Análisis de tráfico de red Diferenciar entre tráfico generado durante la instalación y el tráfico que se genera mientras](https://reader035.vdocuments.mx/reader035/viewer/2022070719/5edf4d1bad6a402d666aa6cb/html5/thumbnails/74.jpg)
74
Información de sub-binarios y arquitecturas
Herramienta: otool
![Page 75: Pentesting de Aplicaciones iOS Miguel Á. Arroyo · 53 Análisis de tráfico de red Diferenciar entre tráfico generado durante la instalación y el tráfico que se genera mientras](https://reader035.vdocuments.mx/reader035/viewer/2022070719/5edf4d1bad6a402d666aa6cb/html5/thumbnails/75.jpg)
75
Listado de símbolos del binario
Herramienta: Rabin2 (Radare2 Framework)
# rabin2 –s AppBinary
![Page 76: Pentesting de Aplicaciones iOS Miguel Á. Arroyo · 53 Análisis de tráfico de red Diferenciar entre tráfico generado durante la instalación y el tráfico que se genera mientras](https://reader035.vdocuments.mx/reader035/viewer/2022070719/5edf4d1bad6a402d666aa6cb/html5/thumbnails/76.jpg)
76
Listado de strings del binario
Herramienta: Rabin2 (Radare2 Framework)
# rabin2 –z AppBinary
![Page 77: Pentesting de Aplicaciones iOS Miguel Á. Arroyo · 53 Análisis de tráfico de red Diferenciar entre tráfico generado durante la instalación y el tráfico que se genera mientras](https://reader035.vdocuments.mx/reader035/viewer/2022070719/5edf4d1bad6a402d666aa6cb/html5/thumbnails/77.jpg)
77
Depuración, desensamblado y parcheo
Herramientas: Hopper y Radare2
![Page 78: Pentesting de Aplicaciones iOS Miguel Á. Arroyo · 53 Análisis de tráfico de red Diferenciar entre tráfico generado durante la instalación y el tráfico que se genera mientras](https://reader035.vdocuments.mx/reader035/viewer/2022070719/5edf4d1bad6a402d666aa6cb/html5/thumbnails/78.jpg)
78
Ataques de lado cliente
Análisis de binario, sistema de ficheros y runtime
![Page 79: Pentesting de Aplicaciones iOS Miguel Á. Arroyo · 53 Análisis de tráfico de red Diferenciar entre tráfico generado durante la instalación y el tráfico que se genera mientras](https://reader035.vdocuments.mx/reader035/viewer/2022070719/5edf4d1bad6a402d666aa6cb/html5/thumbnails/79.jpg)
79
Runtime: Análisis en tiempo de ejecución
Aprovechar información obtenida de símbolos
Aprovechar información obtenida de strings
Realizar volcado de clases
Analizar métodos, funciones, argumentos…
Ejecutar la aplicación en dispositivo
Hacer un “hook” (engancharnos) al proceso
Invocar métodos en tiempo de ejecución
Method Swizzle: cambiar comportamiento de un
método / función en tiempo de ejecución
![Page 80: Pentesting de Aplicaciones iOS Miguel Á. Arroyo · 53 Análisis de tráfico de red Diferenciar entre tráfico generado durante la instalación y el tráfico que se genera mientras](https://reader035.vdocuments.mx/reader035/viewer/2022070719/5edf4d1bad6a402d666aa6cb/html5/thumbnails/80.jpg)
80
Volcado de clases de una aplicación
Importante: Apps Pre-Instaladas vs Otras Apps
Otras Apps: App Store / Cydia / IPA Installer
Apps Pre-Instaladas: no están cifradas
No precisan de descifrado previo para volcado de clases
Otras Apps: pueden estar cifradas
Precisan de descifrado previo para volcado de clases
Herramienta para descifrado: Clutch
Herramienta para volcado: class-dump
![Page 81: Pentesting de Aplicaciones iOS Miguel Á. Arroyo · 53 Análisis de tráfico de red Diferenciar entre tráfico generado durante la instalación y el tráfico que se genera mientras](https://reader035.vdocuments.mx/reader035/viewer/2022070719/5edf4d1bad6a402d666aa6cb/html5/thumbnails/81.jpg)
81
Volcado de clases con class-dump
Con aplicaciones pre-instaladas (sin cifrar)
Volcado instantáneo
![Page 82: Pentesting de Aplicaciones iOS Miguel Á. Arroyo · 53 Análisis de tráfico de red Diferenciar entre tráfico generado durante la instalación y el tráfico que se genera mientras](https://reader035.vdocuments.mx/reader035/viewer/2022070719/5edf4d1bad6a402d666aa6cb/html5/thumbnails/82.jpg)
82
Volcado de clases con class-dump
Con aplicaciones no pre-instaladas
Las aplicaciones del AppStore se firman y se cifran
Con class-dump obtendríamos volcado ilegible
Necesidad de descifrar previamente el binario
Opción 1: Descifrar aplicación completa
Obtener un fichero .ipa (aplicación empaquetada)
Descomprimir el fichero .ipa con binario descifrado
Opción 2: Descifrar solo el binario
Hacer volcado con class-dump
![Page 83: Pentesting de Aplicaciones iOS Miguel Á. Arroyo · 53 Análisis de tráfico de red Diferenciar entre tráfico generado durante la instalación y el tráfico que se genera mientras](https://reader035.vdocuments.mx/reader035/viewer/2022070719/5edf4d1bad6a402d666aa6cb/html5/thumbnails/83.jpg)
83
Volcado de clases con class-dump
Ejemplo de volcado de aplicación cifrada
![Page 84: Pentesting de Aplicaciones iOS Miguel Á. Arroyo · 53 Análisis de tráfico de red Diferenciar entre tráfico generado durante la instalación y el tráfico que se genera mientras](https://reader035.vdocuments.mx/reader035/viewer/2022070719/5edf4d1bad6a402d666aa6cb/html5/thumbnails/84.jpg)
84
Descifrado de una aplicación
Herramienta: Clutch
Lista de apps y descifrado de binario
![Page 85: Pentesting de Aplicaciones iOS Miguel Á. Arroyo · 53 Análisis de tráfico de red Diferenciar entre tráfico generado durante la instalación y el tráfico que se genera mientras](https://reader035.vdocuments.mx/reader035/viewer/2022070719/5edf4d1bad6a402d666aa6cb/html5/thumbnails/85.jpg)
85
¡Binario descifrado!
Ahora ya podemos hacer el volcado…
¿O no?
![Page 86: Pentesting de Aplicaciones iOS Miguel Á. Arroyo · 53 Análisis de tráfico de red Diferenciar entre tráfico generado durante la instalación y el tráfico que se genera mientras](https://reader035.vdocuments.mx/reader035/viewer/2022070719/5edf4d1bad6a402d666aa6cb/html5/thumbnails/86.jpg)
86
Class-dump: Problema con fat binaries
Binarios “gordos” que incluyen varios sub-binarios de
distintas arquitecturas para mantener la
compatibilidad (por ejemplo: ARMv7 y ARM64)
![Page 87: Pentesting de Aplicaciones iOS Miguel Á. Arroyo · 53 Análisis de tráfico de red Diferenciar entre tráfico generado durante la instalación y el tráfico que se genera mientras](https://reader035.vdocuments.mx/reader035/viewer/2022070719/5edf4d1bad6a402d666aa6cb/html5/thumbnails/87.jpg)
87
Lipo[succión] a un fat binary
Herramienta: Lipo
Objetivo: Extraer un sub-binario
![Page 88: Pentesting de Aplicaciones iOS Miguel Á. Arroyo · 53 Análisis de tráfico de red Diferenciar entre tráfico generado durante la instalación y el tráfico que se genera mientras](https://reader035.vdocuments.mx/reader035/viewer/2022070719/5edf4d1bad6a402d666aa6cb/html5/thumbnails/88.jpg)
88
Ahora sí, ya tenemos el volcado.
Ahora vamos a “jugar” ;-)
![Page 89: Pentesting de Aplicaciones iOS Miguel Á. Arroyo · 53 Análisis de tráfico de red Diferenciar entre tráfico generado durante la instalación y el tráfico que se genera mientras](https://reader035.vdocuments.mx/reader035/viewer/2022070719/5edf4d1bad6a402d666aa6cb/html5/thumbnails/89.jpg)
89
Soccer Stars
¿Qué es?
![Page 90: Pentesting de Aplicaciones iOS Miguel Á. Arroyo · 53 Análisis de tráfico de red Diferenciar entre tráfico generado durante la instalación y el tráfico que se genera mientras](https://reader035.vdocuments.mx/reader035/viewer/2022070719/5edf4d1bad6a402d666aa6cb/html5/thumbnails/90.jpg)
90
Soccer Stars
¿Qué nos interesa?
![Page 91: Pentesting de Aplicaciones iOS Miguel Á. Arroyo · 53 Análisis de tráfico de red Diferenciar entre tráfico generado durante la instalación y el tráfico que se genera mientras](https://reader035.vdocuments.mx/reader035/viewer/2022070719/5edf4d1bad6a402d666aa6cb/html5/thumbnails/91.jpg)
91
Soccer Stars: Clases interesantes
UserInfo.h
![Page 92: Pentesting de Aplicaciones iOS Miguel Á. Arroyo · 53 Análisis de tráfico de red Diferenciar entre tráfico generado durante la instalación y el tráfico que se genera mientras](https://reader035.vdocuments.mx/reader035/viewer/2022070719/5edf4d1bad6a402d666aa6cb/html5/thumbnails/92.jpg)
92
Soccer Stars: Métodos interesantes
setCoins y setCash
![Page 93: Pentesting de Aplicaciones iOS Miguel Á. Arroyo · 53 Análisis de tráfico de red Diferenciar entre tráfico generado durante la instalación y el tráfico que se genera mientras](https://reader035.vdocuments.mx/reader035/viewer/2022070719/5edf4d1bad6a402d666aa6cb/html5/thumbnails/93.jpg)
93
Soccer Stars: Hook y ¡a jugar con métodos!
Herramienta: Cycript
![Page 94: Pentesting de Aplicaciones iOS Miguel Á. Arroyo · 53 Análisis de tráfico de red Diferenciar entre tráfico generado durante la instalación y el tráfico que se genera mientras](https://reader035.vdocuments.mx/reader035/viewer/2022070719/5edf4d1bad6a402d666aa6cb/html5/thumbnails/94.jpg)
94
Soccer Stars: Hook y ¡a jugar con métodos!
Herramienta: Cycript
![Page 95: Pentesting de Aplicaciones iOS Miguel Á. Arroyo · 53 Análisis de tráfico de red Diferenciar entre tráfico generado durante la instalación y el tráfico que se genera mientras](https://reader035.vdocuments.mx/reader035/viewer/2022070719/5edf4d1bad6a402d666aa6cb/html5/thumbnails/95.jpg)
95
Soccer Stars: Hook y ¡a jugar con métodos!
Herramienta: Cycript
![Page 96: Pentesting de Aplicaciones iOS Miguel Á. Arroyo · 53 Análisis de tráfico de red Diferenciar entre tráfico generado durante la instalación y el tráfico que se genera mientras](https://reader035.vdocuments.mx/reader035/viewer/2022070719/5edf4d1bad6a402d666aa6cb/html5/thumbnails/96.jpg)
96
Soccer Stars: Hook y ¡a jugar con métodos!
Herramienta: Cycript
![Page 97: Pentesting de Aplicaciones iOS Miguel Á. Arroyo · 53 Análisis de tráfico de red Diferenciar entre tráfico generado durante la instalación y el tráfico que se genera mientras](https://reader035.vdocuments.mx/reader035/viewer/2022070719/5edf4d1bad6a402d666aa6cb/html5/thumbnails/97.jpg)
97
Gratitud: La mejor actitud
![Page 98: Pentesting de Aplicaciones iOS Miguel Á. Arroyo · 53 Análisis de tráfico de red Diferenciar entre tráfico generado durante la instalación y el tráfico que se genera mientras](https://reader035.vdocuments.mx/reader035/viewer/2022070719/5edf4d1bad6a402d666aa6cb/html5/thumbnails/98.jpg)
Gracias por
su atención