Entonces, ¿por qué harías la autenticación de dos factores? Se trata de elevar el listón para el atacante.
¿Cómo puedes subir el listón para el atacante? Al introducir un desafío que no está dentro del perfil de habilidad del atacante clásico.
... como necesitar que el atacante robe físicamente algo.
Esta es la idea original detrás de 2FA como se introdujo, por ejemplo. en 1986 por RSA con su token de seguridad RSA. Desafortunadamente, este algoritmo propietario no se implementó muy bien, por lo que necesitaba ser mejorado continuamente. Además: si un atacante roba las claves secretas de los dispositivos de hardware, nuevamente la posesión física es inútil.
Como indicaron John y el NIST, SMS no es la mejor idea para implementar 2FA. Obviamente, todavía es mejor que no usar un segundo factor y solo una contraseña débil .
Pero también las aplicaciones de teléfonos inteligentes tienen sus vectores de ataque. No solo en el teléfono inteligente sino también durante el proceso de inscripción. Escribí el artículo del blog de la costa sobre eso. enlace
Finalmente, si estás hablando de man en el navegador, por supuesto, 2FA solo te protege en el breve momento de la autenticación. Si está utilizando un protocolo no cifrado, el atacante puede simplemente rastrear y robar los datos sin comprometer su inicio de sesión. Si su computadora está llena de troyanos, el atacante también puede apuntar directamente a sus datos sin la necesidad de apuntar al proceso de autenticación.