La efectividad de las contraseñas y sus métodos de almacenamiento ha estado en debate últimamente, y muchos investigadores buscan formas de mejorar este aspecto -por ejemplo, haciéndole creer al atacante que realmente pudo acceder a contraseñas reales, cuando se trata de una base falsa, como propone el enfoque de las ErsatzPasswords.
No cabe duda de que las contraseñas son la forma más usada para la autenticación en servicios a pesar de las claras debilidades que tienen. Así es que parte de nuestra tarea también es garantizar los niveles de seguridad adecuados, para evitar que esta información sea robada de servidores de autenticación u otros equipos donde se almacena.
Casos como las contraseñas filtradas de Dropbox o la brecha de seguridad en eBay durante el año pasado o el hecho de que un investigador publicara más de 10 millones de contraseñas a principios de este año ponen de manifiesto la importancia de agregar medidas de seguridad adicionales; ya no es solo cuestión de contraseñas almacenadas únicamente como hashes vulnerables a ataques de fuerza bruta.
Algunos de estos esquemas adicionales se basan, como decíamos, en tratar de engañar al atacante, por ejemplo, agregando múltiples claves a un único usuario para confundirlo durante el proceso de cracking de contraseñas. De esta forma, lo que pudiera parecer un juego de probabilidades se puede incrementar utilizando funciones de seguridad adicional.
El enfoque de las ErsatzPasswords
En una reciente publicación del CERIAS (The Center of Education and Research in Information Assurance and Security) de la universidad de Purdue, se plantea un simple pero práctico modelo para mejorar la seguridad de los hashes de contraseñas almacenadas en el equipo de un usuario.
Para incrementar el nivel de seguridad utilizan una función física de la máquina que no se puede clonar (PUF). Estas funciones relacionan un conjunto de características de la complejidad de los sistemas físicos, y solo pueden ser evaluadas con el mismo sistema desde el que se generó, lo cual lo convierte en algo único. En este sentido, estudios de profesores de Cornell University y del MIT han demostrado como el uso de estas funciones provee un método efectivo y de bajo costo para generar llaves usadas en operaciones criptográficas.
Este esquema planteado propone mejorar la seguridad en tres aspectos:
- El proceso de calcular el hash con el que se guarda la contraseña incluye una función que depende del hardware (PUF); de esta manera se elimina la posibilidad de que un atacante obtenga la contraseña sin conexión al sistema donde se almacena.
- Si un atacante logra obtener y descifrar el archivo donde están las contraseñas, obtendrá una contraseña falsa.
- Se mantiene el mismo aspecto y formato del archivo de contraseñas.
Esta última propiedad es muy importante para tener éxito en el engaño al atacante, haciéndole creer que realmente pudo acceder a contraseñas reales. A diferencia de otros esquemas que mezclan la contraseña real con otras falsas, este enfoque elimina la capacidad de un adversario para obtener la contraseña real al no tener acceso físico a la máquina específica durante el proceso de cracking.
El objetivo detrás de este método
Cuando el atacante se encuentra con el conjunto de claves falsas, los equipos de seguridad pueden reaccionar sabiendo que tuvieron una fuga de información y que alguien está tratando de robar datos, al hacerse pasar por usuarios reales para obtener acceso a los sistemas.
El enfoque ErsatzPasswords tiene entonces dos objetivos principales para elevar la seguridad en la gestión de las contraseñas:
- Elimina la posibilidad de que un atacante pueda romper las contraseñas por fuera de la máquina física donde estas se almacenan, por lo cual el robo del archivo no es suficiente
- Al utilizar el modelo conocido de almacenar los hashes de las contraseñas, lo que obtendría un atacante no es diferente de un archivo tradicional. Además, si utiliza herramientas de cracking tradicionales, lo que podrá recuperar son contraseñas falsas que activarán una alarma a los equipos de seguridad
Retos adicionales de seguridad
En su momento planteamos que la autenticación simple es cada vez más amenazada. De hecho amenazas como el phishing, las malas prácticas de algunos usuarios y la reutilización de contraseñas, entre otras, siguen representando un problema de seguridad para los sistemas de autenticación basados únicamente en contraseñas.
De ahí la importancia de asumir un enfoque integral para garantizar altos niveles de seguridad en la autenticación de los usuarios. Desde la educación a los usuarios para que utilicen medidas seguras en la gestión de sus contraseñas hasta la implementación de un doble factor de autenticación son controles que podrían tenerse en cuenta, además de contemplar nuevas alternativas a las contraseñas que van apareciendo para hacer frente a esta problemática.
Finalmente, es importante recordar que un atacante necesita solamente un punto de falla para comprometer la seguridad, y nuestra tarea es garantizar que todos estos puntos están cerrados.