Quiero cubrir los posibles casos de ataque. Mi aplicación ya tiene autenticación de captcha y de dos factores, pero ¿cómo puedo evitar un pequeño ataque sin molestar a mis usuarios? Los posibles casos que estoy pensando cubrir son:
-
Mostrar captcha después de 3 intentos de inicio de sesión fallidos basados en la sesión, pero el problema es que algunos artículos relacionados dijeron que no debería basarse en la sesión de ASP.NET, ya que de alguna manera podría eliminarse.
-
Mostrando la autenticación de dos factores después del captcha, pero ¿debería mostrar también el captcha en base al conteo fallido del paso anterior? ¿O debería contar desde el principio?
-
¡También estoy pensando en bloquear la IP del usuario por un período determinado, pero eso podría afectar a otros usuarios que trabajen desde la misma IP! ¿Qué sucede si el hacker tiene una herramienta para cambiar la IP periódicamente?
¿Podría por favor aconsejarme, con referencias si es posible, cuál es la mejor manera de cubrir estos problemas de seguridad?