19 abr 2014

AUDITANDO TRUECRYPT EN BUSCA DE "BUGS" Y "BACKDOORS"


Éste lunes, trás 7 meses de trabajo, concluyó la primera fase de la auditoría que se está realizando para encontrar o no posibles bugs y/o backdoor en el más que conocido TrueCrypt, aplicación, para los que no lo sepáis aun, que se usa a la hora de encriptar archivos, unidades completas, dispositivos usb, etc.


La auditoría que se está realizando por parte de un proyecto independiente, "sin maldades ni malas practicas", llamado iSEC Partners. Ésta auditoría consta de dos fases: en la fase 1se audita el código fuente, que acaba de finalizar y el la fase 2, se auditará el criptoanálisis formal, se realizará una revisión detallada de cifrado y así se asegurará de que no hay ningún error en el cifrado. Podéis ver la web del proyecto, AQUÍ. Si queréis ver en detalle la auditoría de la fase 1, entonces VER.


Según informan desde iSEC Partners, "no hay evidencia de puertas traseras o código de otro modo intencionalmente malicioso en las áreas evaluadas ".

Sin embargo si que se encontraron pequeñas vulnerabilidades, en concreto 11, que catalogarón como errores no intencionados y sin malicia. Explican que son métodos en desuso o errores debidos a algoritmos que podrían comprometer la seguridad si no se utilizan contraseñas o claves complejas

Matthew Green, criptógrafo de la prestigiosa universidad Johns Hopkins, que ha sido una de las personas que lideran este priyecto, comentó: "Creo que la calidad del código no es tan alta como debería ser, pero por otra parte, nada terrible está ahí, por lo que es tranquilizador " .


En un estracto del informe, se puede leer:

Overall, the source code for both the bootloader and the Windows kernel driver did not meet expected standards for secure code. This includes issues such as lack of comments, use of insecure or deprecated functions, inconsistent variable types, and so forth. A more in-depth discussion on the quality issues identified can be found in Appendix B. In contrast to the TrueCrypt source code, the online documentation available at http://www.truecrypt.org/docs/ does a very good job at both describing TrueCrypt functionality and educating users on how to use TrueCrypt correctly. This includes recommendations to enable full disk encryption that protects the system disk, to help guard against swap, paging, and hibernation-based data leaks.

The team also found a potential weakness in the Volume Header integrity checks. Currently, integrity is provided using a string (“TRUE”) and two (2) CRC32s. The current version of TrueCrypt utilizes XTS2 as the block cipher mode of operation, which lacks protection against modification; however, it is insufficiently malleable to be reliably attacked. The integrity protection can be bypassed, but XTS prevents a reliable attack, so it does not currently appear to be an issue. Nonetheless, it is not clear why a cryptographic hash or HMAC was not used instead.

Que viene a decir algo así como:

En general, el código fuente, tanto para el gestor de arranque y el controlador del kernel de Windows no cumplía con los estándares esperados para código seguro. Esto incluye temas como la falta de comentarios, el uso de las funciones inseguras o en desuso, tipos de variables inconsistentes, y así sucesivamente . Una discusión más a fondo sobre los problemas de calidad identificados se puede encontrar en el Apéndice B. En contraste con el código fuente de TrueCrypt, la documentación en línea disponible en http://www.truecrypt.org/docs/ hace un muy buen trabajo , tanto en descripción de las funciones TrueCrypt y educar a los usuarios sobre cómo utilizar TrueCrypt correctamente. Esto incluye recomendaciones para habilitar el cifrado de disco completo que protege el disco del sistema , para ayudar a protegerse contra swap, paginación , y las fugas de datos a base de hibernación .

El equipo también encontró una debilidad potencial en el "Volume Header integrity checks". En la actualidad, se proporciona integridad mediante una cadena ("true" ) y dos ( 2 ) CRC32s . La versión actual de TrueCrypt utiliza XTS2 como el modo de cifrado de bloques de la operación , que carece de protección contra la modificación ; sin embargo, es suficientemente maleable para ser atacado de forma fiable . La protección de la integridad se puede omitir , pero XTS evita un ataque fiable , por lo que no aparece en la actualidad a ser un problema. Sin embargo, no está claro por qué no se utilizó un hash criptográfico o HMAC lugar.

En la fase 2, veremos que sorpresas nos esperan.


Descargar TrueCrypt, AQUÍ.
TrueCrypt Info, VER.
Resumen de los detalles encontrados, AQUÍ.
Detalles técnicos, VER.

No hay comentarios:

Publicar un comentario