Vulnerabilidad en TrueCrypt

El pasado viernes, Bruce Schneier publicó en su blog un análisis sobre una vulnerabilidad encontrada en la versión 5.1a de Truecrypt, la última en el momento de realizar este análisis (la última es ya la 6).

Según se reflejó en el análisis, Schneier y su equipo de la Universidad de Washington encontraron diversos problemas de seguridad en el uso de sistemas de ficheros ocultos sobre plataformas Windows, que podrían permitir en algunos casos detectar la existencia de dicho sistema o de ficheros contenidos en éste, y en el peor de los casos la recuperación de información.

Según puede leerse en el paper, debido a la naturaleza de determinadas funcionalidades del propio Windows o de aplicaciones habituales en dichos sistemas, es posible producir esta fuga de información. Schneier diferencia 3 tipos de vectores de ataques:

1) A través del sistema operativo. Por ejemplo, la existencia del software Truecrypt deja rastro en el registro de Windows, así como la existencia de las unidades de red en las cuales ha sido montado. Esto pondría de manifiesto la existencia de sistemas de ficheros cifrados pero no aportaría ninguna información extra, salvo que se encontraran en el sistema de ficheros abierto accesos directos que apuntaran a la unidad de la que ya hemos averiguado que se trata de una unidad cifrada. De esta manera, sí que podriamos obtener algo más de información sobre los ficheros que hay el sistema de ficheros cifrado/oculto. Recordemos que el propio sistema operativo guarda estos accesos directos en sus menús de inicio como «últimos ficheros abiertos», por lo que no es necesario que hayan sido creados de forma manual, sino que el propio sistema los crea con tan solo acceder a alguno.

2) A través de una aplicación primaria. Por ejemplo, el autosalvado de herramientas como Microsoft Word, programas muy habituales en todos los sistemas Windows. El autosalvado de Word hace, «por seguridad», una copia temporal del fichero con el que estamos trabajando de forma periódica, con el fin de poder recuperar la información en caso de fallo del sistema. Sin embargo, dicha copia es guardada en un directorio temporal del sistema operativo (por ejemplo C:\Users\UserName\AppData\Roaming\Microsoft\Word\), que a no ser que estemos optando por un cifrado completo del disco, estará almacenada sin cifrar. Una vez finalizada la edición del documento, este se encarga de eliminar el temporal del documento, ya que la información ya ha sido almacenada en su ubicación original, pero evidentemente Word no realiza un borrado seguro de los datos contenidos en el documento temporal. Esto significa que realizando una recuperación de ficheros borrados de un disco duro podriamos llegar a recuperar el documento, aunque realmente dicho documento esté presente en un pendrive cifrado del que no disponemos. Como podemos ver, este vector de ataque es uno de los más graves que podemos encontrar, ya que recuperariamos el contenido entero de un fichero cifrado.

3) A través de una aplicación no primaria. Por ejemplo, Google Desktop y la funcionalidad que tiene para poder recuperar estados anteriores de los documentos. Evidentemente, si tenemos instalado Google Desktop en nuestro equipo, éste podría indexar y cachear el contenido de un sistema de ficheros cifrado que tuvieramos montado y sobre el que estuvieramos trabajando. De esta manera, al igual que ocurría con el anterior vector de ataque, podriamos recuperar información completa sobre el contenido cifrado con tan solo acceder a la cache de Google Desktop, sin ni tan siquiera necesidad de recuperar la información borrada.

Haciendo un análisis de los problemas de seguridad mostrados en el paper, algunos de ellos pueden tener solución por parte de los desarrolladores del software, pero dada la naturaleza de los fallos gran parte de ellos me parecen difícilmente corregibles por dichos desarrolladores. Pienso que es más una tarea del administrador del equipo en el que va a ser ejecutado TrueCrypt el realizar una configuración adecuada para que este tipo de problemas no se produzcan.

¿Y qué pasa si ejecutamos nuestro Pendrive cifrado en un equipo sobre el que no tenemos el control? Bueno, incluso si no existiera ninguna vulnerabilidad en el software nunca deberiamos escribir una contraseña en un ordenador no confiable, puesto que la vulneración del cifrado sería tan inmediata como instalar un KeyLogger en el equipo que capture nuestra contraseña de cifrado en el momento de teclearla.

¿Recomendaciones?

  • Si hablamos de un equipo que tiene cifrada una unidad: mi recomendación es un cifrado completo del disco, así se evitan problemas con ficheros temporales y cachés, puesto que ellas estarán a su vez cifradas por estar contenidas en el disco.
  • Si hablamos de un dispositivo tipo pendrive que se mueve de aquí para allá sin control del equipo en el que se ejecuta: intentar no tener toda la información en una sola «unidad», sino separada por cliente, proveedores, proyectos o como mejor se adapte a cada uno, utilizando contraseñas diferentes para cada unidad. De esta manera si en un sitio se pincha para ver la información del cliente X y un intruso captura la contraseña o accede a los datos, será siempre a datos a los que realmente ya debería tener acceso, ya que por eso se ha tecleado la contraseña.
  • Solución super-paranoica: mi pendrive es por un lado un LiveCD con Linux y por otro lado tiene una unidad TrueCrypt. Si necesito acceder a la información y no me fio del entorno, puedo arrancar desde USB con el Pendrive, y de esta manera al montar la unidad cifrada tengo la seguridad de que estoy arrancando un sistema operativo confiable; a partir de ahí copio la información, bien al disco del equipo local, bien a otro equipo, por medio de comunicaciones cifradas.

Seguiremos informando cuando TrueCrypt de una respuesta a este paper.

Comments

  1. la solucion super paranoica deberia ser llevar tu propio equipo portatil, es la unica manera de salvarte de un keylogger via hardware…

  2. Cierto ;)
    Pongamos esa como super-paranónica de nivel 2 :)

  3. tango311 y si alguien logra robar tu portátil?.

  4. Hombre… está claro que la seguridad total no existe, si queremos un 100% de seguridad al final optariamos por «Eliminación del Riesgo» y nos negariamos a sacar información de nuestras oficinas, pero esto no es funcional, todo depende de nuestros objetivos, si podemos llevar un portátil que vaya cifrado entero y que además haga una verificación cuando arranca de que no se ha modificado el «Pre-Boot Authentication» pues ya sabemos que el portátil es íntegro, esto sería bastante seguro (si obviamos las vulnerabilidades no documentadas), pero probablemente poco funcional, porque querremos llevar nuestra información sin cargar con un portátil, entonces el escenario cambia, ya no podemos tener el Hardware & S.O. que hemos securizado nosotros, entonces tenemos que optar por la máxima seguridad que podamos conseguir con tan solo el control de nuestro pendrive.

    En fin, ya sabeis que esto de la seguridad es el cuento de nunca acabar, al final yo creo que el mejor equilibrio entre funcionalidad y seguridad es que no pongais vuestras contraseñas en sistemas no confiables, y si es necesario que lo hagais os prepareis una pequeña unidad ad-hoc para la ocasión con una contraseña de un solo uso.

  5. Por favor alguien me podria explicar mejor la recomendacion #2. Todavia no he captado el significado de esta frase

    ¨De esta manera si en un sitio se pincha para ver la información del cliente X y un intruso captura la contraseña o accede a los datos, será siempre a datos a los que realmente ya debería tener acceso, ya que por eso se ha tecleado la contraseña¨

    Gracias…

  6. Tú con TrueCrypt puedes crearte un fichero extensión tc que es una imagen de disco cifrado y que se monta como una unidad de disco.

    Estas imagenes pueden tener tamaños y contraseñas diferentes.

    Lo que dice el punto 2 es que tengas un fichero tc por cada cliente/proveedor/proyecto y utilizar contraseñas diferentes para que si así te cazan una en algún sitio con esa contraseña sólo puedan acceder a los datos de ese cliente/proveedor/proyecto que en realidad son datos que ya son suyos.

    Si sigo sin explicarme dimelo e intentaré explicarlo de otra forma.
    Saludos.

  7. ahora lo tengo mas claro, muchas gracias.

    Aunque eso de cargar tu propia Pc a todos lados por seguridad ahora ya no funcionara mucho porque hace poco vi un articulo en el que decían haber hallado un Keylogger en una laptop instalado de fabrica, (aunque muchos dicen que es falso), cada uno deberia sacar sus propias conclusiones, ya que los norteamericanos están tan preocupados por su seguridad que estas medidas en unos años (meses) ya no sonaran tan descabelladas como algunos piensan.

    http://www.geekologie.com/2008/07/guy_finds_mysterious_keylogger.php

    PD:
    Esto me recordo que hace bastante lei que el FBI pidio a los fabricantes de Antivirus que en sus busquedas(Listas), eliminaran un programa que ellos utilizan para espiarte si lo creen conveniente.

    gracias J.Selvi
    Un saludo.

  8. como es la contraseña de segurity zero de ciber palnet

  9. y que hay con el copy-paste??, yo lo utilizo habitualmente para evitar keylogger creando las claves a partir de distintas palabras ó numeros

  10. Hola a todos, tengo un grave problema con el truecrypt, tengo un disco de 160GB cifrado completamente, con win7,de un momento a otro el windows dejo de funcionar y para volver instalar windows, debo decifrar el disco completo para poder acceder a el y asi instalar el sistema.Pero en el proceso de decifrar el programa se detuvo en puntos donde decia que ese sector era imposible de leer por lo que deberia de ser ignorado, las primeras veces lo hacia y despues volvia a su velocidad normal, pero llego a un punto, que decifrar 1mb tomaba mas de 15 minutos,cosa que es una eternidad cuando todavia faltan 20GB.un amigo me recomerdo pasarle al disco un pograma llamado HDD REGENARATOR,con el fin de solucionar el problema de los sectores antes de continuar con proceso, Le pase ese programa y encontro mas de 5 mil sectores malos. que al parecer los arreglo todos, con la esperanza de haber solucionado el problema.volvi a seguir decifrando el disco, pero sigue con el mismo problema. alguien sabe como puedo solucionar ese problema,realmente me urge, tengo informacion dentro que me es de gran importancia, Personal y laboral. Saludos a todos y gracias adelatadas
    raptor.jemxp@yahoo.es

  11. Jesús, siento que no podamos ayudarte, pero en mi opinión lo mejor es que te pongas en contacto con una empresa de recuperación de datos, dado que son especialistas y disponen de hardware específico para este tipo de situaciones.

  12. Buenas tardes, hace unos días se me estropeo el disco duro, tenia instalada una unidad oculta. He podido recuperar la mayoría de la información pero cuando intento recuperar la información de la unidad oculta no consigo encontrarla en el disco antiguo, he buscado archivos con extensión .tc pero no localiza nada, me podéis ayudar, gracias.