La 'app' de 'fitness' MyFitnessPalusa, ha sufrido uno de los mayores ataques de robo de datos de la historia. Pero al menos, una parte de sus contraseñas robadas estaba protegida con la técnica bcrypt, que aunque no es inquebrantable, dificulta mucho las labores de los piratas informáticos
Las cosas no van demasiado bien para Under Armour. El gigante de la ropa y propietario de MyFitnessPal, una aplicación de fitness que registra las calorías diarias consumidas y el ejercicio realizado, ha sido víctima de una de las mayores violaciones de datos de la historia de la seguridad cibernética. Los hackers atacantes han robado información de la app que incluye: nombres de usuario, direcciones de correo electrónico y contraseñas asociadas de, aproximadamente, 150 millones de cuentas.
Crédito: ZDNet
Pero no todos los ataques tienen el mismo impacto negativo que otros. El de MyFitnessPal podría resultar menos dañino que otras grandes fugas de datos gracias a que Under Armour usa una tecnología criptográfica llamada bcrypt para proteger muchas de las contraseñas que han sido robadas.
Para entender la importancia de bcrypt, hay que analizar algunos antecedentes sobre las defensas criptográficas. El enfoque básico para proteger las contraseñas se basa en la función hash criptográfica o función de resumen, que convierte cualquier contraseña en una cadena de caracteres aleatorios que se almacenan en una base de datos. Cuando alguien inicia sesión con su contraseña, la función hash crea una versión resumida que se compara con la que se recupera de la base de datos. Si ambas coinciden, el usuario puede acceder al servicio. De esta forma, si un hacker accede al sistema de forma fraudulenta, solo podrá disponer de las versiones hash de las contraseñas, pero no a las contraseñas reales.
Las versiones hash de las contraseñas no están diseñadas para usarse como simples archivos de texto, pero aún así, los hackers lo intentan. Una de las tácticas que utilizan son los "ataques de diccionario", que generan versiones hash de contraseñas y frases comunes para ver si coinciden con los datos encriptados que han sido robados. Otra estrategia son los "ataques de fuerza bruta", que consisten en probar todas las combinaciones posibles de caracteres hasta una longitud dada para desencriptar un hash.
Así que para que los hackers lo tengan lo más difícil posible, algunos expertos en ciberseguridad ponen un poco de 'sal' a sus versiones hash. En lenguaje criptográfico, esto quiere decir que añaden caracteres generados aleatoriamente a una contraseña de texto sin formato antes de que se convierta en un hash. Esto asegura que no haya dos contraseñas con el mismo hash. Pero aunque la sal es una pesadilla para los piratas informáticos, aún pueden averiguar cifras individuales con ataques de fuerza bruta y de diccionario.
Aquí es donde aparece bcrypt, que además de usar sal, también aumenta el tiempo necesario para ejecutar una función de hash, ya que necesita varias rondas de computación para llegar a un resultado. "Está diseñado deliberadamente para ser increíblemente lento", explica el asesor tecnológico sénior de Rambus Paul Kocher, que también es un experto en criptografía.
Dado que en criptografía, el término 'lento' se mide en milisegundos, el usuario apenas nota la presencia de bcrypt al iniciar sesión. Pero estos mínimos retrasos pueden frustrar a los piratas informáticos que utilizan hardware de alta gama para tratar de ejecutar miles de millones de hash por segundo. Las tecnologías como bcrypt brindan a las empresas más tiempo para responder a una infracción y a los usuarios más tiempo para cambiar sus contraseñas. Under Armour fue inteligente al utilizar bcrypt, aunque sigue siendo un misterio por qué la tecnología no se aplicó a todas las contraseñas asociadas con MyFitnessApp. (Los que no están cubiertos por ella se protegieron con una función de hash más débil conocida como SHA-1).
Pero bcrypt no es una defensa completa contra los hackers, sólo les ralentiza. Esto significa que todavía es muy importante que si recibe una notificación de que el servicio que usa ha sido vulnerado, cambie la contraseña lo antes posible y evite utilizar la misma en varias aplicaciones distintas. Además es por eso que vale la pena usar contraseñas difíciles de adivinar en lugar de las comunes que pueden ser rápidamente descifradas por hackers expertos en quebrantar la función hash.