¿Qué es un ataque de fuerza bruta?
Un ataque de fuerza bruta consiste en probar combinaciones de credenciales hasta acertar. En su forma pura recorre todo el espacio posible de caracteres, pero en la práctica casi nunca se usa así porque es demasiado lento: lo habitual es el ataque de diccionario, que prueba listas de contraseñas filtradas en brechas anteriores y sus variaciones más probables, lo que reduce millones de años de cómputo a unos minutos para una clave corriente.
Variantes que conviene distinguir
El rociado de contraseñas (password spraying) invierte el planteamiento: en vez de muchas claves contra una cuenta, prueba una contraseña muy común contra miles de cuentas, evitando así los bloqueos por intentos fallidos. El relleno de credenciales (credential stuffing) reutiliza pares de usuario y contraseña ya filtrados. Y el ataque offline, el más peligroso, se ejecuta contra una base de hashes robada, sin límite de intentos ni nadie mirando.
¿Cómo frenarlos?
Del lado del servicio: limitar la tasa de intentos por IP y por cuenta, bloqueos temporales progresivos, CAPTCHA tras varios fallos, alertas de inicio de sesión inusual y almacenar las contraseñas con algoritmos de hash lentos y con sal (bcrypt, scrypt, Argon2) para que un robo de la base no se convierta en un cracking rentable. Del lado del usuario, el segundo factor convierte una contraseña acertada en un acceso que todavía no sirve.



