volvervolver
Inteligencia artificial en Ciberseguridad

Por: Mauricio Orellana
(Cybersecurity Researcher)

COMPARTIR

2FA contornando 101

Un método de seguridad muy usado actualmente en la mayoría de aplicaciones web como mobile es el 2FA. Se ha hablado bastante en estos tiempos sobre esto, y algunos especialistas empiezan a dudar de su eficiencia para proteger usuarios finales. Para entender qué tan seguro es este método, veremos una simple demostración de cómo es posible atacar una cuenta de una aplicación mobile conociendo un solo factor de autenticación, en un escenario vulnerable creado para tal fin.

Factores de autenticación

La autenticación de doble factor agrega una capa extra de seguridad a su cuenta, es decir, un paso adicional para iniciar la sesión, a fin de impedir que otras personas entren en ella aunque tengan acceso a su contraseña. Cuando se inicia sesión en una cuenta en línea, el nivel básico de autenticación solamente requiere la contraseña para acceder, lo que constituye el primer paso para verificar la identidad.

Con 2FA se incorpora otro dato más: la segunda capa, que corresponde a un dato que el usuario debe facilitar para poder acceder a su cuenta. Un ejemplo típico del uso de 2FA fuera de Internet ese al usar un cajero automático, donde para operar necesitamos algo que tiene (su tarjeta bancaria) y algo que sabe (el PIN). La capa adicional de autenticación es uno de tres factores básicos: algo que se sabe, algo que se tiene y algo que se es. A continuación, detallamos el tipo de información que encaja cada categoría:

  • Algo que sabe: Puede ser un código PIN, las respuestas a las preguntas de seguridad y, por supuesto, su contraseña.
  • Algo que tiene: Normalmente, hace referencia a un objeto físico, como un aparato de seguridad (un pequeño dispositivo de hardware) o una tarjeta de identificación. También puede ser un teléfono móvil cuya posesión se puede verificar utilizando una aplicación especial (como Google Authenticator, o un código SMS).
  • Algo que es: Aquí se engloban los datos biométricos y, por lo general, son la huella digital o el reconocimiento facial (como el Touch ID y el Face ID de Apple) y el reconocimiento de la retina.

Técnicas para saltear 2FA

Existe una variedad de técnicas para intentar un ataque contra la doble autenticación, algunas más sencillas que otras. Aquí presentamos una lista de las principales:

  • Clickjacking on 2FA Disable Feature
  • Response Manipulation
  • Status Code Manipulation
  • 2FA Code Reusability
  • CSRF on 2FA Disable Feature
  • Backup Code Abuse
  • Enabling 2FA Doesn’t Expire Previous Session
  • 2FA Refer Check Bypass
  • 2FA Code Leakage in Response
  • JS File Analysis
  • Lack of Brute-Force Protection
  • Password Reset/Email Change - 2FA Disable
  • Missing 2FA Code Integrity Validation
  • Direct Request

Laboratorio

En esta oportunidad analizaremos cómo es posible vulnerar un 2FA utilizando la técnica de 2FA Code Leakage in Response, e iremos indicando paso a paso como realizar este tipo de ejecución. Para ejemplificar esta vulnerabilidad tenemos descargada la aplicación mobile hpAndro 2FA junto con BurpSuite. Teniendo en cuenta que conocemos los usuarios existentes podemos intentar loguearnos con las credenciales de administrador.


Al interceptar la red con BurpSuite, vemos que no cuenta con un cifrado robusto por lo cual permite captar las credenciales en texto plano.


Simultáneamente, visualizamos el código OTP (One-Time Password) para poder ingresar como segundo factor de autenticación.


Como tenemos acceso a las dos formas de autenticación procedemos a loguearnos.


Discusión

Si bien este ejemplo es técnicamente muy básico, nos permite ver que el 2FA no es siempre un método totalmente seguro y que tiene múltiples formas de ser vulnerado, el debate pasa por definir si conviene reforzar los factores existentes para el segundo paso de autenticación, o bien si conviene agregar un tercer factor adicional, lo que constituye lo que solemos llamar MFA (Múltiple Factor de Autenticación). En próximos posts continuaremos explorando estos temas.