Mobile Applications
Las metodología de Ethical Hacking de BINAR10 para Aplicaciones Móviles se fundamenta en OWASP TOP 10 Mobile Risks:
- M1: Evalaución de contoles débiles de lado de servidor:
Se evalúan los controles de lado de servidor, mediante la verificación del envío de datos de la
aplicación móvil hacia el servidor, y verificación de exposición de APIs sensibles.
En este punto se evalúa el inicio de sesión de la aplicación Android, el envío de credenciales al
servidor de autenticación y validación de entradas con la finalidad de intentar obtener acceso a
áreas sensibles o no autorizados del servidor. - M2: Evaluación de almacenamiento de datos inseguro
Se evalúa la forma de almacenamiento de la información relacionada con la aplicación en el
dispositivo accesible por el usuario. Muchas aplicaciones Android almacenan información
secreta relacionada con el usuario o información de la aplicación, en las preferencias
compartidas, SQLite (en forma simple) o en almacenamiento externo. - M3: Evaluación de protección insifuciente en la capa de transporte
Se evalúa el modo de envío de datos por la red en forma de HTTP o HTTPS. - M4: Evaluación de divulgación de datos no intencionada
Se evalúa el almacenamiento de datos en una ubicación vulnerable. Estos pueden incluir el
portapapeles, URL caché, las Cookies de navegador, almacenamiento de datos HTML5, etc. - M5: Evaluación de la fortaleza del proceso de autenticación y autorización
Se evalúa el proceso de autenticación y autorización de un usuario, ya sea basado en
autenticación de servidor, tokens, OTP, entre otros. Las pruebas incluyen el escenario que el
dispositivo (Smartphone o Tablet) se encuentra “rooteado” y bajo ese escenario cuales son los
controles de seguridad que previenen el acceso no autorizado. - M6: Evaluación de la criptografía
Se evalúa el uso de funciones criptográficas no seguras para cifrar los componentes de datos.
Esto incluye algunos de los conocidos algoritmos vulnerables, tales como MD5, SHA1, RC2, o
desarrollos propios. - M7: Evaluación de Inyección a nivel cliente
Se evalúa el almacenamiento local SQLite mediante pruebas de inyección SQL, las cuales
pueden derivar en acceso a información sensible almacenada localmente. - M8: Evaluación de decisiones de seguridad mediante entradas no confiables
Se evalúa si la aplicación móvil verifica las entradas suministradas por el usuario ya que
podrían conducir a otros riesgos de seguridad en la aplicación como la inyección de lado del
cliente. - M9: Evaluación de gestión de sesiones
Se evalúa la caducidad adecuada de la cookies de autenticación, creación de token segura y
usurpación de sesiones. Asimismo se verifica la correcta sincronización que debe mantenerse
entre la aplicación web y la aplicación de Android, respecto a la sesión de usuario. - M10: Evaluación de la deficiencia de protección binaria
Se evalúa la protección que tiene la aplicación contra Ingeniería Reversa o descompilado.