Glossary
Ataque de fuerza bruta
Un ataque de fuerza bruta prueba una por una todas las contraseñas posibles de un espacio de claves; siempre acaba funcionando, pero solo es rápido si ese espacio es pequeño.
Un ataque de fuerza bruta prueba sistemáticamente cada contraseña candidata posible contra un hash, en lugar de adivinar a partir de una lista. Con tiempo suficiente, tiene garantizado encontrar la contraseña, porque acaba cubriendo todo el espacio de claves — pero ahí está la trampa de «tiempo suficiente». Una contraseña corta y en minúsculas cae en segundos; añade mayúsculas, dígitos y longitud, y esa misma búsqueda exhaustiva puede durar más que el propio hardware que la ejecuta.
En la práctica, las herramientas rara vez hacen fuerza bruta a ciegas. Un ataque por máscara reduce la búsqueda a una estructura conocida (por ejemplo, cuatro dígitos seguidos de cuatro letras), lo que sigue siendo fuerza bruta pero sobre un espacio de claves mucho menor que «cualquier cosa hasta 12 caracteres». Un ataque por diccionario evita casi por completo la fuerza bruta, probando contraseñas reales en vez de todas las combinaciones.
La velocidad de un ataque de fuerza bruta depende enteramente del hash: MD5 o NTLM en bruto se crackean a miles de millones de intentos por segundo en una GPU, mientras que un hash deliberadamente lento como bcrypt o sha512crypt puede reducir esa cifra a unos pocos miles — consulta por qué los hashes rápidos son peligrosos para entender por qué esa diferencia importa tanto.