Los ataques de fuerza bruta en línea contra un sistema adecuadamente diseñado probablemente no sean factibles contra todos, excepto las contraseñas más débiles.
Esto se debe al hecho de que los sistemas en línea pueden implementar una amplia gama de técnicas de limitación de velocidad que limitarán el número de intentos que tiene el atacante para adivinar la contraseña de una sola cuenta.
Por supuesto, hay algunas técnicas disponibles para intentar evitar las técnicas de limitación de velocidad, como probar una única contraseña en varias cuentas de usuario o distribuir los intentos de inicio de sesión entre varias direcciones IP para intentar superar las prohibiciones de IP. Sin embargo, no estoy seguro de la efectividad de tales técnicas.
Hay otro factor que limita la efectividad de los ataques de fuerza bruta en línea. El factor limitante en tales ataques por lo general no es la potencia de procesamiento que puede beneficiarse de las granjas de GPU grandes. El factor limitante suele ser la red. Cada interfaz de red individual solo puede enviar tantos paquetes por segundo. Incluso si puede permitirse que miles de interfaces de red envíen los paquetes necesarios para un ataque de fuerza bruta en línea, el servidor en el que está alojado su objetivo probablemente no pueda manejar los millones de paquetes que lo bombardean. En este punto, su ataque de fuerza bruta en línea se ha convertido en un ataque de denegación de servicio.
Suponiendo que está hablando de una aplicación web, es probable que los atacantes aprovechen más las fallas, como las inyecciones de SQL, para obtener un volcado de la base de datos y realizar ataques sin conexión utilizando clusters de hardware dedicado.