SlideShare una empresa de Scribd logo
Marco Avendaño
Android Security
Fundamentals
Contexto móvil
Smartphones everywhere..
El mundo le pertenece a los móviles
¿Cuándo desarrollar Apps?
Tipos de aplicaciones móviles
Características de una App
 Diseño
 Funcionalidad
 Rendimiento
 Seguridad
Seguridad en los
móviles
“Hackear” una App
Herramientas para hacking
Categoría HERRAMIENTAS DE EJEMPLO
App Decryption / Unpacking /
Conversion
Clutch
APKTool
Dex2jar
Static Binary Analysis,
Disassembly, Decompilation
IDA Pro & Hex Rays (Disassembler/Decompiler)
Hopper (Disassembler/Decompiler)
JD-GUI (Decompiler)
Baksmali (Disassembler)
Info dumping: class-dump-z (classes), nm (symbols), strings
Runtime Binary Analysis
GDB (Debugger)
ADB (Debugger)
Introspy (Tracer/Analyzer)
Snoop-It (Debugging/Tracing, Manipulation)
Sogeti Tools (Dump key chain or lesystem, Custom ramdisk boot, PIN Brute force)
Runtime Manipulation, Code
Injection, Method Swizzling,
Patching
Cydia Substrate (Code Modi‹cation Platform) (MobileHooker, MobileLoader)
Cycript / Cynject
DYLD
Theos suite
Hex editors
Jailbreak Detection Evasion
xCon
BreakThrough
tsProtector
Integrated Pen-Test Toolsets
AppUse (Custom "hostile" Android ROM loaded with hooks, ReFrameworker
runtime manipulator, Reversing tools)
Anatomía de un ataque móvil
https://www.nowsecure.com/resources/secure-mobile-development/primer/mobile-security/
Factores que afectan la seguridad
 Aparición de nuevas formas de ataques por la tecnologías
y nuevas funcionalidades del dispositivo.
 Restricciones económicas y de tiempo: muchas veces solo
les interesan el resultado y no su proceso de desarrollo.
 Desarrollo personalizado: los emprendedores y empresas
de desarrollo suelen utilizar librerías o código ya existente
que no necesariamente estén probados.
 Pro actividad del desarrollador, realizar pruebas y
encriptación de datos.
¿Quiénes se ocupan de la seguridad?
 Oficiales de seguridad
 Pentesters
 Auditores de seguridad
 Equipos de control de
calidad
 Administradores de
infraestructura
 Desarrolladores de
aplicaciones
 Usuarios
OWASP
 Open Web Application
Security Project.
 Organización mundial, sin
fines de lucro.
 Busca promover la
seguridad y generar
conciencia.
Proyectos OWASP
 Proyectos de documentación
 Guía OWASP
 OWASP Top 10
 Métricas
 ..
 Proyectos de desarrollo
 WebGoat
 GoadtDroid
 ..
https://www.owasp.org/index.php/Proyectos_OWASP
Top Ten Mobile Risk
OWASP Mobile Top 10 Risks
M2 – Insecure
Data Storage
M3 – Insufficient
Transport Layer
Protection
M1 – Weak Server
Side Controls
M4 – Unitended
Data Leakage
M6 – Broken
Cryptography
M7 – Client Side
Injection
M5 – Poor
Authorization and
Authentication
M8 – Security
Decisions Via
Untrusted Inputs
M9 – Improper
Session Handling
M10 – Lack of
Binary Protections
1. Weak Server Side Controls
Debilidad en los controles del lado del servidor de la
aplicación:
 La aplicación servidor a la cual se conecta el dispositivo
móvil de manera remota, no posee controles suficientes
de seguridad.
 La App podría enviar datos que el servidor no sepa
procesar y por ende crear una condición de vulnerabilidad
permitiendo inyectar y ejecutar código del lado del
servidor.
2. Insecure Data Storage
Almacenamiento de datos inseguro:
 La App no almacena los datos de manera segura.
 Si alguien pierde el dispositivo, los datos podrían verse
comprometidos (fuga de información).
 En caso que se guarden datos sensibles de la aplicación,
que el usuario no debiera conocer o alterar, es viable que
el usuario los pueda llegar a acceder o modificar sin
autorización.
3. Insufficient Transport Layer Protection
Protección insuficiente en la capa de transporte:
 Al momento en que una App se conecta al servidor para
transmitir información, esta conexión no se realiza de
manera segura.
 Los datos en tránsito se encuentran en riesgo de ser
interceptados, lo que deja los datos expuestos a fuga de
información o modificación no autorizada de la misma.
4. Unintended Data Leakage
Fuga de datos involuntaria:
 La App puede perderse/modificarse debido a las
actualizaciones del sistema operativo, de los frameworks
de software, o incluso del hardware (cuando es posible).
 Estas actualizaciones ponen en riesgo o cambian el
comportamiento de la aplicación.
5. Poor Authorization and Authentication
Autenticación y autorización pobres:
 La App no provee los niveles adecuados y necesarios de
autorización y autenticación.
 Los usuarios podría saltarse la autenticación de la
aplicación logrando acceso no autorizado y suplantación
de identidad, o modificar los niveles de autorización
logrando acceso no autorizado a información de la
aplicación.
6. Broken Cryptography
Criptografía rota:
 La App no realiza un cifrado adecuado a la información
almacenada o transmitida (desde o hacia el dispositivo).
 Se puede lograr acceso no autorizado a información de la
aplicación.
7. Client Side Injection
Inyección del lado del cliente:
 La App no posee controles suficientes de seguridad para la
entrada o envío de datos al servidor,.
 Se podrían enviar datos que el servidor no procese
adecuadamente y permita realizar acciones sobre los
datos contenidos en el servidor.
8. Security Decisions Via Untrusted Inputs
Decisiones de seguridad a través de entradas no confiables:
 La App podría recibir datos de entrada de varias fuentes.
 Si las entradas no son validadas previamente para ser
procesados por la aplicación, podrían poner en riesgo la
seguridad de la información.
9. Improper Session Handling
Manejo de sesiones inapropiado:
 La App no provee los niveles adecuados y necesarios, por
lo cual una sesión de usuario válida podría ser
interceptada y los datos transmitidos estarían en riesgo.
 Un usuario no autorizado podría clonar una sesión válida
de usuario, saltando con esto los controles de
autenticación y autorización.
10. Lack of Binary Protections
Falta de protección en binarios:
 Cuando una persona no autorizada realiza cambios a los
binarios de la aplicación y modifica el comportamiento de
esta.
 Puede variar los datos enviados al servidor, para
transmitirlos a un servidor alterno no autorizado, realizar
cualquier tipo de modificación a la información, modificar
la presentación de la aplicación e incluso llegar a permitir
la fuga de la información.
Categorización de los riesgos
Risk Client Network Server
M1 – Weak Server Side Control X
M2 - Insecure Data Storage X
M3 – Insufficient Transport Layer Protection X
M4 - Unintended Data Leakage X
M5 - Poor Authorization and Authentication X X
M6 - Broken Cryptography X X X
M7 - Client Side Injection X
M8 - Security Decisions via Untrusted Inputs X X
M9 - Improper Session Handling X X
M10 - Lack of Binary Protections X
Top Ten Mobile Controls
OWASP/ENISA Mobile Top 10 Controls
C2 – Protect
Authentication
Credentials
C3 – Protect Data
in Transit
C1 – ID & Protect
Sensitive Data
C4 – Strong
AuthN, Sess, Mgt,
AuthZ
C6 – Secure 3rd
Party Integration
C7 – Collect
Consent for Use of
User Data
C5 – Secure
Services and
Server
C8 – Protect For
Pay Services
C9 – Secure App
Distro / Update
C10 – Avoid /
Safety Use
Interpreters
European Network and Information Security Agency
https://www.owasp.org/index.php/Projects/OWASP_Mobile_Security_Project_-_Top_Ten_Mobile_Controls
Seguridad en
Android
Android: el mas popular
http://www.scientiamobile.com/page/movr-mobile-overview-report
Arquitectura de Android
Características del SO
 Android es un plataforma basada en Linux y multiusuario.
 Cada aplicación tiene su propio user ID (UID).
 Dado que el UID es único, cada App se ejecuta en un
proceso separado y con diferentes permisos. Este
mecanismo es denominado ‘application sandboxing’.
 El sandbox permite, en condiciones normales, que no se
pueda acceder a datos de otras aplicaciones.
Mecanismos esenciales (I)
OWASP risk Recomendations
M2 - Insecure Data
Storage
• Implementar permisos de archivos
cuidadosamente
M4 - Unintended Data
Leakage
• Evitar el cacheo de:
• Imagines de la camera
• GUI Objects
M5 - Poor
Authorization and
Authentication
• Autenticación en el lado del servidor
• Protocolo OAuth
M6 - Broken
Cryptography
• Sign Android APKs
M7 - Client Side
Injection
• Implement Content Providers Carefully
Mecanismos esenciales (II)
Riesgo OWASP Recomendaciones
M8 - Security
Decisions via
Untrusted Inputs
• Implementar cuidadosamente:
• Intents
• PendingIntents
• Broadcasts
• Verificar Activities
• Proteger Application Services
• Evitar Intent Sniffing
M9 - Improper Session
Handling
• Autenticación periódica en el usa de web
services.
M10 - Lack of Binary
Protections
• Seguir la mejores practicas de los WebView
Mitigando vulnerabilidades
 Validación de las entradas
 SQL injection
 Permisos
 Normal
 Dangerous
 Signature
 Signature of System
 Manejo de datos y credenciales del usuario
 Comunicación entre aplicaciones
 Intents
 Content providers
Herramientas para la seguridad movil
 MobiSec: https://www.owasp.org/index.php/Projects/OWASP_Mobile_Security_Project_–_MobiSec
 Es un entorno para testear móviles, incluyendo dispositivos,
aplicaciones y la infraestructura de soporte. El objetivo es
proporcionar a los atacantes y los defensores, la posibilidad de
probar sus entornos móviles para identificar las debilidades de
diseño y vulnerabilidades.
Androick: https://www.owasp.org/index.php/OWASP_Androick_Project
 Se centra en la automatización de las tareas de análisis forenses
en lugar de pruebas de penetración. Se basa en automatizar la
recuperación de artefactos forenses clave como archivos APK,
datos de aplicaciones, bases de datos, y logs desde el dispositivo.
Goatdroid (I)
 Goatdroid: https://www.owasp.org/index.php/Projects/OWASP_GoatDroid_Project
 Son un buen punto de partida para los principiantes en la
seguridad de aplicaciones Android.
 Es un entorno de entrenamiento autónomo.
 El entorno ofrece dos implementaciones de ejemplo para
realizar practicas:
 FourGoats, una red social basada en la localización.
 Herd Financials, aplicación de banca móvil ficticia.
 Estos proyectos ofrecen una amplia cobertura para la mayoría de
los OWASP Top 10 mobile risk.
Goatdroid (II)
FourGoats
Recursos bibliograficos
Datos de contacto
marcoviaweb@gmail.com
@marcoviaweb
https://www.facebook.com/marcoviaweb
bo.linkedin.com/in/marcoviaweb
Muchas gracias !
Android Security
Fundamentals

Más contenido relacionado

PDF
Seguridad en la web no confíes en el usuario
PPTX
TechTuesday: Seguridad en Desarrollo de Apps
PDF
seguridad basica informática
PPTX
Seguridad en dispositivos móviles
PDF
Ciberseguridad: CAso Alma Technologies
DOCX
Amenaza a las bases de datos
PPTX
Subida de nota
PDF
Confianza cero
Seguridad en la web no confíes en el usuario
TechTuesday: Seguridad en Desarrollo de Apps
seguridad basica informática
Seguridad en dispositivos móviles
Ciberseguridad: CAso Alma Technologies
Amenaza a las bases de datos
Subida de nota
Confianza cero

La actualidad más candente (20)

PDF
Seguridad en dispositivos móviles
PPTX
Seguridad en android.ppt
PPTX
Cer tuy capacitaciones2011_v1
DOCX
Cúales son los riesgos y ataques de seguridad en aplicaciones web
PDF
Hacking ético
PDF
Las diez principales amenazas para las bases de datos
PDF
Xelere - IBM Security QRadar
PDF
La importancia de la seguridad en los json payloads
PDF
Resci2014 certificate pinning con ppt
PPTX
Seguridad en sitios web
DOCX
Mirella guingla
PPT
Introducción a La Seguridad Desde La Perspectiva Del Desarrollador V2
PDF
Firewall de aplicaciones web
DOCX
Terminos claves
PDF
Red Team: Un nuevo enfoque para auditar controles de Ciberseguridad
PDF
Seguridad de información para criptoactivos
PDF
2018 cyberark evento cloud
PDF
Ataques a-bases-de-datos
PDF
REVISTA- Riesgo y Seguridad de las Computadoras
PPTX
Ciberamenaza: Haciendo mal uso del blockchain
Seguridad en dispositivos móviles
Seguridad en android.ppt
Cer tuy capacitaciones2011_v1
Cúales son los riesgos y ataques de seguridad en aplicaciones web
Hacking ético
Las diez principales amenazas para las bases de datos
Xelere - IBM Security QRadar
La importancia de la seguridad en los json payloads
Resci2014 certificate pinning con ppt
Seguridad en sitios web
Mirella guingla
Introducción a La Seguridad Desde La Perspectiva Del Desarrollador V2
Firewall de aplicaciones web
Terminos claves
Red Team: Un nuevo enfoque para auditar controles de Ciberseguridad
Seguridad de información para criptoactivos
2018 cyberark evento cloud
Ataques a-bases-de-datos
REVISTA- Riesgo y Seguridad de las Computadoras
Ciberamenaza: Haciendo mal uso del blockchain
Publicidad

Similar a Android Security (20)

DOCX
LA CIBERSEGURIDAD informática y definición
PDF
Seguridad Dispositivos móviles Extened Edition
PDF
Seguridad web
PDF
OWASP Top 10 Mobile Risk
PPTX
Seguridad Lógica
DOC
S E G U R I D A D E N U N S I S T E M A S D I S T R I B U I D O S
DOC
Seguridad En Un Sistemas Distribuidos
DOC
Seguridad En Un Sistemas Distribuidos
DOC
Seguridad En Un Sistemas Distribuidos
DOC
Seguridad En Un Sistemas Distribuidos
DOC
S E G U R I D A D E N U N S I S T E M A S D I S T R I B U I D O S
DOC
Seguridad En Un Sistemas Distribuidos
DOC
Seguridad En Un Sistemas Distribuidos
DOC
C:\Documents And Settings\Regis Y Control\Mis Documentos\Seguridad En Un Sist...
DOC
C:\Documents And Settings\Regis Y Control\Mis Documentos\Seguridad En Un Sist...
DOC
Seguridad En Un Sistemas Distribuidos
DOC
Seguridad En Un Sistemas Distribuidos
DOC
Seguridad en un sistemas distribuidos
PPT
Seguridad del sitio y pagos
PPTX
Be Aware Webinar - Asegurando los pos en retail
LA CIBERSEGURIDAD informática y definición
Seguridad Dispositivos móviles Extened Edition
Seguridad web
OWASP Top 10 Mobile Risk
Seguridad Lógica
S E G U R I D A D E N U N S I S T E M A S D I S T R I B U I D O S
Seguridad En Un Sistemas Distribuidos
Seguridad En Un Sistemas Distribuidos
Seguridad En Un Sistemas Distribuidos
Seguridad En Un Sistemas Distribuidos
S E G U R I D A D E N U N S I S T E M A S D I S T R I B U I D O S
Seguridad En Un Sistemas Distribuidos
Seguridad En Un Sistemas Distribuidos
C:\Documents And Settings\Regis Y Control\Mis Documentos\Seguridad En Un Sist...
C:\Documents And Settings\Regis Y Control\Mis Documentos\Seguridad En Un Sist...
Seguridad En Un Sistemas Distribuidos
Seguridad En Un Sistemas Distribuidos
Seguridad en un sistemas distribuidos
Seguridad del sitio y pagos
Be Aware Webinar - Asegurando los pos en retail
Publicidad

Más de Marco Avendaño (20)

PDF
Historias de Usuario en acción: potenciando el valor de los productos
PDF
Desing Thinking
PDF
Scrum en el aula - mejorando la colaboración y el aprendizaje en equipo
PDF
eduScrum
PDF
Las dimensiones del producto
PDF
Scrum Master: El líder del cambio
PDF
Shift Left: En busca del éxito del software
PDF
Atención al cliente
PDF
Antipatrones de las retrospectivas relacionados a las personas
PDF
Value Stream Mapping para la eficiencia del proceso
PDF
Las siete dimensiones del producto
PDF
Introducción a DevOps workshop
PDF
Patrones de Scrum orientados al valor
PDF
Eliminando desperdicios en el desarrollo de software
PDF
Acuerdos de equipo en tiempos remotos
PDF
OKR: Alineando objetivos y resultados en las organizaciones
PDF
Design Sprint Remoto
PDF
User Story Mapping - Proceso de construcción
PDF
Product Discovery
PDF
Agile Mindset Workshop
Historias de Usuario en acción: potenciando el valor de los productos
Desing Thinking
Scrum en el aula - mejorando la colaboración y el aprendizaje en equipo
eduScrum
Las dimensiones del producto
Scrum Master: El líder del cambio
Shift Left: En busca del éxito del software
Atención al cliente
Antipatrones de las retrospectivas relacionados a las personas
Value Stream Mapping para la eficiencia del proceso
Las siete dimensiones del producto
Introducción a DevOps workshop
Patrones de Scrum orientados al valor
Eliminando desperdicios en el desarrollo de software
Acuerdos de equipo en tiempos remotos
OKR: Alineando objetivos y resultados en las organizaciones
Design Sprint Remoto
User Story Mapping - Proceso de construcción
Product Discovery
Agile Mindset Workshop

Último (20)

PDF
Liceo departamental MICRO BIT (1) 2.pdfbbbnn
PPTX
Sesion 1 de microsoft power point - Clase 1
PPTX
ANCASH-CRITERIOS DE EVALUACIÓN-FORMA-10-10 (2).pptx
PPTX
RAP02 - TECNICO SISTEMAS TELEINFORMATICOS.pptx
PDF
SAP Transportation Management para LSP, TM140 Col18
PPTX
Propuesta BKP servidores con Acronis1.pptx
PPTX
Presentación de Redes de Datos modelo osi
PDF
Estrategia de apoyo tecnología miguel angel solis
PDF
CyberOps Associate - Cisco Networking Academy
PDF
MANUAL TECNOLOGÍA SER MINISTERIO EDUCACIÓN
PPTX
COMO AYUDAN LAS TIC EN LA EDUCACION SUPERIOR.pptx
PDF
Influencia-del-uso-de-redes-sociales.pdf
PDF
clase auditoria informatica 2025.........
PDF
taller de informática - LEY DE OHM
PPTX
RAP01 - TECNICO SISTEMAS TELEINFORMATICOS.pptx
PDF
5.1 Pinch y Bijker en libro Actos, actores y artefactos de Bunch Thomas (coor...
PDF
Instrucciones simples, respuestas poderosas. La fórmula del prompt perfecto.
PDF
Maste clas de estructura metálica y arquitectura
PPTX
historia_web de la creacion de un navegador_presentacion.pptx
PPTX
Acronis Cyber Protect Cloud para Ciber Proteccion y Ciber Seguridad LATAM - A...
Liceo departamental MICRO BIT (1) 2.pdfbbbnn
Sesion 1 de microsoft power point - Clase 1
ANCASH-CRITERIOS DE EVALUACIÓN-FORMA-10-10 (2).pptx
RAP02 - TECNICO SISTEMAS TELEINFORMATICOS.pptx
SAP Transportation Management para LSP, TM140 Col18
Propuesta BKP servidores con Acronis1.pptx
Presentación de Redes de Datos modelo osi
Estrategia de apoyo tecnología miguel angel solis
CyberOps Associate - Cisco Networking Academy
MANUAL TECNOLOGÍA SER MINISTERIO EDUCACIÓN
COMO AYUDAN LAS TIC EN LA EDUCACION SUPERIOR.pptx
Influencia-del-uso-de-redes-sociales.pdf
clase auditoria informatica 2025.........
taller de informática - LEY DE OHM
RAP01 - TECNICO SISTEMAS TELEINFORMATICOS.pptx
5.1 Pinch y Bijker en libro Actos, actores y artefactos de Bunch Thomas (coor...
Instrucciones simples, respuestas poderosas. La fórmula del prompt perfecto.
Maste clas de estructura metálica y arquitectura
historia_web de la creacion de un navegador_presentacion.pptx
Acronis Cyber Protect Cloud para Ciber Proteccion y Ciber Seguridad LATAM - A...

Android Security

  • 4. El mundo le pertenece a los móviles
  • 7. Características de una App  Diseño  Funcionalidad  Rendimiento  Seguridad
  • 10. Herramientas para hacking Categoría HERRAMIENTAS DE EJEMPLO App Decryption / Unpacking / Conversion Clutch APKTool Dex2jar Static Binary Analysis, Disassembly, Decompilation IDA Pro & Hex Rays (Disassembler/Decompiler) Hopper (Disassembler/Decompiler) JD-GUI (Decompiler) Baksmali (Disassembler) Info dumping: class-dump-z (classes), nm (symbols), strings Runtime Binary Analysis GDB (Debugger) ADB (Debugger) Introspy (Tracer/Analyzer) Snoop-It (Debugging/Tracing, Manipulation) Sogeti Tools (Dump key chain or lesystem, Custom ramdisk boot, PIN Brute force) Runtime Manipulation, Code Injection, Method Swizzling, Patching Cydia Substrate (Code Modi‹cation Platform) (MobileHooker, MobileLoader) Cycript / Cynject DYLD Theos suite Hex editors Jailbreak Detection Evasion xCon BreakThrough tsProtector Integrated Pen-Test Toolsets AppUse (Custom "hostile" Android ROM loaded with hooks, ReFrameworker runtime manipulator, Reversing tools)
  • 11. Anatomía de un ataque móvil https://www.nowsecure.com/resources/secure-mobile-development/primer/mobile-security/
  • 12. Factores que afectan la seguridad  Aparición de nuevas formas de ataques por la tecnologías y nuevas funcionalidades del dispositivo.  Restricciones económicas y de tiempo: muchas veces solo les interesan el resultado y no su proceso de desarrollo.  Desarrollo personalizado: los emprendedores y empresas de desarrollo suelen utilizar librerías o código ya existente que no necesariamente estén probados.  Pro actividad del desarrollador, realizar pruebas y encriptación de datos.
  • 13. ¿Quiénes se ocupan de la seguridad?  Oficiales de seguridad  Pentesters  Auditores de seguridad  Equipos de control de calidad  Administradores de infraestructura  Desarrolladores de aplicaciones  Usuarios
  • 14. OWASP  Open Web Application Security Project.  Organización mundial, sin fines de lucro.  Busca promover la seguridad y generar conciencia.
  • 15. Proyectos OWASP  Proyectos de documentación  Guía OWASP  OWASP Top 10  Métricas  ..  Proyectos de desarrollo  WebGoat  GoadtDroid  .. https://www.owasp.org/index.php/Proyectos_OWASP
  • 16. Top Ten Mobile Risk OWASP Mobile Top 10 Risks M2 – Insecure Data Storage M3 – Insufficient Transport Layer Protection M1 – Weak Server Side Controls M4 – Unitended Data Leakage M6 – Broken Cryptography M7 – Client Side Injection M5 – Poor Authorization and Authentication M8 – Security Decisions Via Untrusted Inputs M9 – Improper Session Handling M10 – Lack of Binary Protections
  • 17. 1. Weak Server Side Controls Debilidad en los controles del lado del servidor de la aplicación:  La aplicación servidor a la cual se conecta el dispositivo móvil de manera remota, no posee controles suficientes de seguridad.  La App podría enviar datos que el servidor no sepa procesar y por ende crear una condición de vulnerabilidad permitiendo inyectar y ejecutar código del lado del servidor.
  • 18. 2. Insecure Data Storage Almacenamiento de datos inseguro:  La App no almacena los datos de manera segura.  Si alguien pierde el dispositivo, los datos podrían verse comprometidos (fuga de información).  En caso que se guarden datos sensibles de la aplicación, que el usuario no debiera conocer o alterar, es viable que el usuario los pueda llegar a acceder o modificar sin autorización.
  • 19. 3. Insufficient Transport Layer Protection Protección insuficiente en la capa de transporte:  Al momento en que una App se conecta al servidor para transmitir información, esta conexión no se realiza de manera segura.  Los datos en tránsito se encuentran en riesgo de ser interceptados, lo que deja los datos expuestos a fuga de información o modificación no autorizada de la misma.
  • 20. 4. Unintended Data Leakage Fuga de datos involuntaria:  La App puede perderse/modificarse debido a las actualizaciones del sistema operativo, de los frameworks de software, o incluso del hardware (cuando es posible).  Estas actualizaciones ponen en riesgo o cambian el comportamiento de la aplicación.
  • 21. 5. Poor Authorization and Authentication Autenticación y autorización pobres:  La App no provee los niveles adecuados y necesarios de autorización y autenticación.  Los usuarios podría saltarse la autenticación de la aplicación logrando acceso no autorizado y suplantación de identidad, o modificar los niveles de autorización logrando acceso no autorizado a información de la aplicación.
  • 22. 6. Broken Cryptography Criptografía rota:  La App no realiza un cifrado adecuado a la información almacenada o transmitida (desde o hacia el dispositivo).  Se puede lograr acceso no autorizado a información de la aplicación.
  • 23. 7. Client Side Injection Inyección del lado del cliente:  La App no posee controles suficientes de seguridad para la entrada o envío de datos al servidor,.  Se podrían enviar datos que el servidor no procese adecuadamente y permita realizar acciones sobre los datos contenidos en el servidor.
  • 24. 8. Security Decisions Via Untrusted Inputs Decisiones de seguridad a través de entradas no confiables:  La App podría recibir datos de entrada de varias fuentes.  Si las entradas no son validadas previamente para ser procesados por la aplicación, podrían poner en riesgo la seguridad de la información.
  • 25. 9. Improper Session Handling Manejo de sesiones inapropiado:  La App no provee los niveles adecuados y necesarios, por lo cual una sesión de usuario válida podría ser interceptada y los datos transmitidos estarían en riesgo.  Un usuario no autorizado podría clonar una sesión válida de usuario, saltando con esto los controles de autenticación y autorización.
  • 26. 10. Lack of Binary Protections Falta de protección en binarios:  Cuando una persona no autorizada realiza cambios a los binarios de la aplicación y modifica el comportamiento de esta.  Puede variar los datos enviados al servidor, para transmitirlos a un servidor alterno no autorizado, realizar cualquier tipo de modificación a la información, modificar la presentación de la aplicación e incluso llegar a permitir la fuga de la información.
  • 27. Categorización de los riesgos Risk Client Network Server M1 – Weak Server Side Control X M2 - Insecure Data Storage X M3 – Insufficient Transport Layer Protection X M4 - Unintended Data Leakage X M5 - Poor Authorization and Authentication X X M6 - Broken Cryptography X X X M7 - Client Side Injection X M8 - Security Decisions via Untrusted Inputs X X M9 - Improper Session Handling X X M10 - Lack of Binary Protections X
  • 28. Top Ten Mobile Controls OWASP/ENISA Mobile Top 10 Controls C2 – Protect Authentication Credentials C3 – Protect Data in Transit C1 – ID & Protect Sensitive Data C4 – Strong AuthN, Sess, Mgt, AuthZ C6 – Secure 3rd Party Integration C7 – Collect Consent for Use of User Data C5 – Secure Services and Server C8 – Protect For Pay Services C9 – Secure App Distro / Update C10 – Avoid / Safety Use Interpreters European Network and Information Security Agency https://www.owasp.org/index.php/Projects/OWASP_Mobile_Security_Project_-_Top_Ten_Mobile_Controls
  • 30. Android: el mas popular http://www.scientiamobile.com/page/movr-mobile-overview-report
  • 32. Características del SO  Android es un plataforma basada en Linux y multiusuario.  Cada aplicación tiene su propio user ID (UID).  Dado que el UID es único, cada App se ejecuta en un proceso separado y con diferentes permisos. Este mecanismo es denominado ‘application sandboxing’.  El sandbox permite, en condiciones normales, que no se pueda acceder a datos de otras aplicaciones.
  • 33. Mecanismos esenciales (I) OWASP risk Recomendations M2 - Insecure Data Storage • Implementar permisos de archivos cuidadosamente M4 - Unintended Data Leakage • Evitar el cacheo de: • Imagines de la camera • GUI Objects M5 - Poor Authorization and Authentication • Autenticación en el lado del servidor • Protocolo OAuth M6 - Broken Cryptography • Sign Android APKs M7 - Client Side Injection • Implement Content Providers Carefully
  • 34. Mecanismos esenciales (II) Riesgo OWASP Recomendaciones M8 - Security Decisions via Untrusted Inputs • Implementar cuidadosamente: • Intents • PendingIntents • Broadcasts • Verificar Activities • Proteger Application Services • Evitar Intent Sniffing M9 - Improper Session Handling • Autenticación periódica en el usa de web services. M10 - Lack of Binary Protections • Seguir la mejores practicas de los WebView
  • 35. Mitigando vulnerabilidades  Validación de las entradas  SQL injection  Permisos  Normal  Dangerous  Signature  Signature of System  Manejo de datos y credenciales del usuario  Comunicación entre aplicaciones  Intents  Content providers
  • 36. Herramientas para la seguridad movil  MobiSec: https://www.owasp.org/index.php/Projects/OWASP_Mobile_Security_Project_–_MobiSec  Es un entorno para testear móviles, incluyendo dispositivos, aplicaciones y la infraestructura de soporte. El objetivo es proporcionar a los atacantes y los defensores, la posibilidad de probar sus entornos móviles para identificar las debilidades de diseño y vulnerabilidades. Androick: https://www.owasp.org/index.php/OWASP_Androick_Project  Se centra en la automatización de las tareas de análisis forenses en lugar de pruebas de penetración. Se basa en automatizar la recuperación de artefactos forenses clave como archivos APK, datos de aplicaciones, bases de datos, y logs desde el dispositivo.
  • 37. Goatdroid (I)  Goatdroid: https://www.owasp.org/index.php/Projects/OWASP_GoatDroid_Project  Son un buen punto de partida para los principiantes en la seguridad de aplicaciones Android.  Es un entorno de entrenamiento autónomo.  El entorno ofrece dos implementaciones de ejemplo para realizar practicas:  FourGoats, una red social basada en la localización.  Herd Financials, aplicación de banca móvil ficticia.  Estos proyectos ofrecen una amplia cobertura para la mayoría de los OWASP Top 10 mobile risk.
  • 42. Muchas gracias ! Android Security Fundamentals