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.