En el caso ideal, ambos se pueden ingresar al mismo tiempo, como en el caso de un generador de OTP . De esta manera, está probando la combinación de la contraseña y la OTP al mismo tiempo, sin revelar cuál fue el error, lo que evita que un atacante ejerza una fuerza bruta que lo ataque de forma aislada.
Pero debe tener en cuenta las preocupaciones prácticas en escenarios como la verificación basada en SMS. En tal caso, un atacante puede usar el sistema para atacar al usuario. Si puede activar un mensaje SMS al intentar una autenticación, incluso sin conocer la contraseña, entonces con el tiempo podrá molestar al usuario para que desactive la autenticación de segundo factor solo para detener los mensajes SMS. La limitación de velocidad por parte del servicio de autenticación probablemente no sería suficiente para evitar este tipo de ataque.
Entonces, como compromiso, se requiere un nivel mínimo de permiso para activar el ciclo de verificación fuera de banda, ya sea por SMS, correo electrónico o llamada telefónica u otro. Esto no es ideal, ya que permite que la contraseña se ataque de forma aislada, pero la compensación general se considera valiosa.
Otra consideración es la divulgación de información. ¿Cuánta información sobre la configuración de autenticación de un usuario desea divulgar a un atacante no autenticado? Si se requiere un segundo factor, entonces es razonable requerir el token del segundo factor por adelantado. Cada usuario lo tiene, por lo que no se revela nada personal. Pero si el segundo campo de factor solo es visible si escribe el nombre de usuario de un usuario que lo tiene habilitado, entonces un atacante puede decir rápidamente si el segundo factor está habilitado sin necesidad de conocer la contraseña. Tal vez eso es un gran problema, tal vez no lo es. Pero vale la pena considerarlo, ya que esa información podría usarse para elegir un objetivo para las campañas de phishing.