Estrategia para Ingeniería de Software en tecnología móvil tomando en cuenta Desarrollo – Implementación Operación y Seguridad Informática. [Ejemplos prácticos con arquitectura empresarial].
5. $> Anatomía de un Attack - Mobile
The Device
Browser
{
Phishing
Framing
Clickjacking
Main-in-the-Mobile
Buffer Overflow
Data Caching
}
Phone/SMS
{
BaseBand Attacks
SMiShing
}
Apps
{
Sensitive Data Storage
No Encryption/Weak Encryption
Improper SSL Validation
Config Manipulation
Dynamic Runtime Injection
Unintended Permissions
Escalated Privileges
Access to device an user info
}
The Network
{
Wi-Fi (no encryption/weak
encryption
Rogue Access Point
Packet Sruiffing
Main-in-the-Middle (MITM)
Session Hijacking
DNS Poisoning
SSLStrip
Fake SSL Certificate
}
Malware System
{
No Passcode/Weak
Passcode
IOS Jailbreaking
Android Rooting
Os data caching
Password & Data
accessible
Carrier-loadded
software
No Encryption/Weak
Encryption
User-initiated
code
Zero-day exploits
}
DevSecOps by Mobile
$> @eOswaldOd
6. $> Vectores de Ataque - Mobile
Data Trampering
{
Modification by another
application
Undetected tamper attempt
Jail-brocken device
}
Data Exfiltration
{
Extracted from data
streams and e-mail
Print screen and screen
scraping
Copy to USB key and loss
of backup
}
Malware
{
Virus an RootKit
Application
modification
OS modification
}
Data Loss
{
Application
vulnerabilities
Unapproved physical
access
Loss of device
}
DevSecOps by Mobile
$> @eOswaldOd
7. $> Mobile - Vulnerabilidades y Riesgos
{
Mobile Application
Vulnerabilities
Privacy Issues
(Geolocation)
Weak Data Security
Excessive Permissions
Weak Communication
Security
Physical Attacks
}
{
Malicious Apps in Store
Mobile Malware
App SandBoxing
Vulnerabilities
Weak Device and App
Encryption
Os and App Update Issues
Jailbreaking and Rooting
}
DevSecOps by Mobile
$> @eOswaldOd
8. $> Mobile – Kernel (Core)
DevSecOps by Mobile
$> @eOswaldOd
10. {
Root an Android Phone
Perform DoS and DDoS Attacks
Check for vulnerabilities in Android
browser
Check for vulnerabilities in SQLite
Check for vulnerabilities in Intents
Detect capability leaks in Android devices
}
$> Android > Pent Testing WorkFlow
DevSecOps by Mobile
$> @eOswaldOd
11. $> Mobile – Kernel (Core)
DevSecOps by Mobile
$> @eOswaldOd
13. $> iOS > Pent Testing WorkFlow
{
Jailbreack the iPhone
Unlock the iPPhone
Use SmartCover to bypass passcode
Hack iPhone using Metasploit
Check for access point
Check iOS device data transmission on
Wi-Fi networks
Check whether the malformed data can be
sent to the device
}
DevSecOps by Mobile
$> @eOswaldOd
14. $> Mobile – Kernel (Core)
DevSecOps by Mobile
$> @eOswaldOd
16. $> Microsoft Windows Phone > Pent Testing WorkFlow
{
Try to turn off the phone by
sending an SMS
Try to jailbreack Windows Phone
Check for on-device encryption
Check for vulnerability in Windows
phone internet Explorer
}
DevSecOps by Mobile
$> @eOswaldOd
17. $> Tipos de Vulnerabilidades OWASP Top 10 Mobile [Compliance]
{
Controles secundarios débiles en servidores [Weak Server Side Controls]
Almacenamiento de datos Inseguros [Insecure Data Storage]
Protección insuficiente de la [Capa transporte] [Insufficient Transport Layer
Protection]
Fuga de datos no deseada [Unintended Data Leakage]
Mala autorización y autenticación [Poor Authorization and Authentication]
Criptografía rota [Broken Cryptography]
Inyección en el lado del cliente [Client Side Injection]
Decisiones de seguridad a través de entradas no confiables [Security Decisions
Via Untrusted Inputs]
Manejo incorrecto de sessión [Improper Session Handling]
Falta de protecciones binarias [Lack of Binary Protections]
}
DevSecOps by Mobile
$> @eOswaldOd
18. $> Tipos de Vulnerabilidades OWASP Top 10 Mobile [Compliance]
Controles secundarios débiles en servidores - Weak Server Side Controls
Los factores de vulnerabilidades en el servidor, incluyen:
• Tiempos limitados para publicar – difundir el servicio con una mala estrategia.
• Falta de conocimiento de seguridad debido a la nuevas necesidades.
• Fácil acceso a Frameworks que no priorizan la seguridad.
• Subcontratación [Tercerización] para el desarrollo deficientes.
• Bajos presupuestos de seguridad para aplicaciones móviles.
• Asunción de que el sistema operativo móvil asume la plena responsabilidad de la seguridad.
• Debilidad debida en la compilación entre plataformas.
Nota: Las prácticas de codificación y configuración seguras deben utilizarse en el servidor de la
aplicación móvil. Para obtener información específica sobre la vulnerabilidad, verificar Seguridad en
Tecnología Web y Cloud.
Nota: esta vulnerabilidad esta relacionada con el Top 10 de Servicios - Cloud and Web.
DevSecOps by Mobile
$> @eOswaldOd
19. $> Tipos de Vulnerabilidades OWASP Top 10 Mobile [Compliance]
Almacenamiento de datos inseguros [Insecure Data Storage].
Es importante modelar pensando en las amenazas la aplicación móvil para comprender los activos de
información que procesa y cómo las API subyacentes manejan dichos activos. Estas API deben
almacenar información confidencial de forma segura, tomando en cuenta:
• Bases de datos SQLite
• Archivos de registro [Log Files]
• Plist Files
• Almacenes de datos XML o archivos de manifiesto
• Almacenes de datos binarios
• Archivos Cookie´s
• Tarjeta SD
• Sincronización de datos al Cloud
Al aplicar encriptación y descifrado a activos de información confidenciales, el malware puede
realizar un ataque binario en la aplicación para robar claves de cifrado o descifrado. Una vez que
roba las claves, descifrará los datos locales y robará información confidencial.
DevSecOps by Mobile
$> @eOswaldOd