|
Investigadores suizos hacían pública el pasado día 22 una
nota
en la que presentan un método que reduce la velocidad de
crackeo de las passwords de Windows, reduciendo el hasta ahora
necesario 1 minuto, 41 segundos a sólo 13,6 segundos de media
según cita el diario CNET News.com en un artículo de Robert
Lemos. El sistema se basa en la técnica descrita en 1980 por Martin
Hellman conocida como "Cryptanalytic Time-Memory Trade-Off"
e implica el uso de extensas tablas de consulta precalculadas
donde se cotejarán las contraseñas
codificadas con el texto completo introducido por el usuario,
reduciendo así el tiempo necesario para calcular las claves,
más aún si el atacante cuenta con un equipo con una memoria
RAM importante.
Aunque el método fue demostrado sobre claves Windows,
dejando a expertos preocupados por la inseguridad del método de
codificación empleado por Microsoft, no significa que
Philippe Oechslin, asistente senior y conferenciante del
Laboratorio de Criptografía y Seguridad del Instituto Federal
Suizo de Tecnología en Lausana, haya querido poner en evidencia
la inseguridad de este sistema operativo (aunque así sea y ya
se conociera anteriormente), simplemente se empleó para
demostrar la teoría.
El problema de Windows, según explica Oechslin, es que no
incluyen ninguna información aleatoria para el cálculo de sus
contraseñas. Microsoft emplea dos esquemas de codificación, también
conocidas como funciones hash, para encriptar claves. La
primera, conocida como LANManager o LANMan, se utilizó para
Windows 3.1, 95, 98, Me y los primeros sistemas NT.
El esquema LANMan tiene varias debilidades entre ellas
convertir todos los caracteres a mayúsculas, dividir las
contraseñas en grupos de 7 bytes y no emplear un elemento
aleatorio adicional conocido como "salto" (salt, en
inglés). Mientras que los
más recientes NTHash solucionan las dos primeras debilidades,
estos aún no utilizan un número aleatorio para hacer el hash más
único y complejo.
El resultado: La misma contraseña codificada sobre dos
equipos Windows diferentes siempre será igual. Esto
significa que un cracker de claves puede crear una tabla de
búsqueda y romper contraseñas sobre cualquier PC Windows. Como
nos explica nuestro colaborador Coordinador General de la Red
Temática Iberoamericana de Criptografía y Seguridad de la
Información (CriptoRed), D.
Jorge Ramió, las funciones hashs que se emplean
generalmente para la firma digital (aunque en este caso se
hablan de MD5 y SHA) son deterministas, a igual mensaje igual
salida, salvo que se use una clave aleatoria. Con tan pocos
elementos de texto es relativamente fácil realizar un ataque
por fuerza bruta a través de un gran libro de códigos como el
empleado por Oechslin.
Unix,
Linux y OS X de Mac, sin embargo, añaden un salto de 12-bits al
cálculo, haciendo que cualquier intento por fuerza bruta de
romper la encriptación requiriera 4.096 más de tiempo o la misma cifra más de memoria.
Mientras que un atacante necesitaría derechos de
administrador al sistema para guardar el archivo que contiene
los hashs del password, el archivo es todavía valioso, según
Dittrich, investigador senior de seguridad de la Universidad
de Washington.
Los usuarios pueden protegerse contra el ataque añadiendo
caracteres no alfanuméricos a una contraseña. La inclusión
de otros símbolos además de caracteres alfanuméricos añade complejidad al proceso de
romper contraseñas, lo que significa que el cracker necesitará más tiempo,
más memoria o
incluso ambos para realizar el proceso.
|