Hace 10 años | Por SACROMONTE a unaaldia.hispasec.com
Publicado hace 10 años por SACROMONTE a unaaldia.hispasec.com

El problema hubiera sido "menor" si estas credenciales hubieran estado almacenadas en forma de hash usando una función sólida (sin problemas conocidos de seguridad) y aplicando buenas prácticas. Este tipo de funciones son teóricamente irreversibles, es decir, una vez almacenado el hash debería ser imposible conocer qué cadena (la contraseña) lo originó. Es lo que se conoce como criptografía asimétrica.

Comentarios

D

#5 No lo pillo.

perico_de_los_palotes

#6 Adobe cifró todas las contraseñas con la misma llave y con un método que hace que todas las contraseñas iguales tambien sean iguales tras el cifrado. Adobe además no crifó las pistas de las contraseñas.

Con lo cual tienes una lista de contraseñas cifradas, muchas de ellas repetidas/iguales (a la izquierda en el dibujo, agrupadas por colores) y una lista de pistas para esas contraseñas (en medio en el dibujo_. Es decir, para cada contraseña cifrada puede existir varias pistas, aumentando las posibilidades de identificar la contraseña sin recurrir a otros métodos.

Dicho lo cual, dado que se han llevado también códgo fuente, muy posiblemente tiene la llave de cifrado.

Todo ello tras dejar de lado las instalaciones locales de su software y centrarse en un modelo de software en la nube. La han cagado a unos niveles francamente imponentes.

http://www.theguardian.com/technology/2013/nov/07/adobe-password-leak-can-check

D

#7 Ah, OK, no entendía qué querían decir con hint... las preguntas para cuando se te olvida el password y tal...

D

En el lado ético de la cuestión nos queda preguntarnos: ¿Por qué Adobe cifró las credenciales con un cifrado simétrico en vez del hash? Esto, significa que Adobe tenía la llave para conocer las credenciales de sus usuarios y clientes. Algo que por hacer una correspondencia mundana es como si cuando compras una casa el que te la vendió se queda una copia de la llave, por si acaso...

¿Alguien tenía alguna duda?

t

Me da que el que ha escrito esto no controla mucho de cifrado. El hashing no tiene nada que ver con la criptografía asimétrica, son técnicas diferentes. Y (casi) nadie usa criptografía asimétrica para acceder a webs, porque a día de hoy no es demasiado práctico. ¿Alguien se imagina tener que usar el certificado de la FNMT, o el DNI electrónico, para entrar a la web de Adobe, o al GMail? Pues eso.

En realidad, usar un algoritmo simétrico no tiene nada de malo, siempre y cuando uses uno que no tenga vulnerabilidades conocidas. Pero aquí se muestra como un error per-se, cuando si, como dice el artículo, se hubiese usado un hash vulnerable, como un MD5, estaríamos en las mismas.

Aquí el problema ha sido, obviamente, que se haya filtrado esta información. Y segundo, y muy por detrás del primero, usar algoritmos que son vulnerables.

D

#3 Una corrección: en la web si se usa criptografía asimétrica. SSL es un protocolo que usa la criptografía asimétrica para el intercambio de claves simétricas que se usa en el resto de la comunicación. Lo que no se suele hacer en la web es autenticar a las dos partes; por lo general se autentica al servidor, que envía su certificado público y así podemos cifrar la clave simétrica, que la genera el cliente. Si hace falta autenticar al cliente (por ejemplo bancos que usan dni electrónico) no se suele usar el mecanismo proporcionado por SSL, sino que se suele usar un protocolo en la capa de aplicación.
Por aclarar los conceptos, la criptografía asimétrica es aquella en la que se usa una clave distinta para el cifrado y el descifrado, frente a la simétrica, dónde se usa la misma clave para los dos procesos. Las funciones hash no se descifran, por lo tanto no entran dentro de esta clasificación.

alexwing

Es un despropósito, hasta yo cuando programe el ERP para mi antigua empresa use un Hash con MD5 (en aquella época aun era seguro) y eso que eran usuarios de una intranet.