Con los argumentos expresados en esta respuesta , hay un retraso de unos segundos entre el usuario que ingresa una contraseña incorrecta y cuándo él / ella realmente aprende, esa contraseña era incorrecta. Esta solución de seguridad se implementa en un sistema operativo (aquí, sistema operativo elemental ) y en comandos de consola como sudo
etc.
¿Debo implementar el mismo mecanismo en mi sitio web o servicio web? O puedo asumir fácilmente que un retraso típico en el intercambio de información entre el navegador y el servidor será suficiente para bloquear los ataques de fuerza bruta inflados (en más de un segundo, incluso en el sistema local, entre presionar el botón Login
en mi sitio hasta que aparezca una información se devuelve una contraseña incorrecta; esto parece lo suficientemente largo como AFAIK).
Hay una pregunta similar sobre este asunto. Sin embargo, ambas respuestas ( this y this ) no satisfacen mi pregunta o están un poco fuera de tema. No pregunto sobre la suspensión o el bloqueo temporal de la cuenta del usuario después de cada inicio de sesión fallido (y, por lo tanto, los argumentos sobre el bloqueo del atacante que impide que un usuario real inicie sesión están desactivados). Solo estoy hablando de un posible retraso entre la visualización del formulario de inicio de sesión nuevamente.