VeraCrypt corrige errores descubiertos en una auditoría de seguridad

Los investigadores de seguridad completaron la auditoría de la plataforma de cifrado VeraCrypt respaldada por el Fondo de Mejoramiento de la Tecnología de Código Abierto y encontraron ocho vulnerabilidades críticas, tres de gravedad media y 15 de gravedad baja. El equipo detrás de la popular herramienta abordó los hallazgos de la auditoría en VeraCrypt 1.19. Así es como deberían funcionar las auditorías de seguridad.

OSTIF dijo que VeraCrypt 1.9 es seguro porque la mayoría de las fallas se han solucionado. Algunas vulnerabilidades no se abordaron en esta versión debido a la "alta complejidad de las correcciones propuestas", pero existen soluciones alternativas.

"Siempre que siga la documentación para detectar problemas conocidos y la utilice como se recomienda, creo que [VeraCrypt 1.9] es uno de los mejores sistemas FDE [cifrado de disco completo] que existen", dijo Derek Zimmer, director ejecutivo y presidente de OSTIF, en una sesión de preguntas y respuestas de Ask-Me-Anything en Reddit. Zimmer también es socio del proveedor de servicios de red privada virtual VikingVPN.

OSTIF contrató al investigador de seguridad senior de Quarkslab Jean-Baptiste Bédrune y al criptógrafo senior Marion Videau para verificar el código base de VeraCrypt, enfocándose en la versión 1.18, y el cargador de arranque DCS EFI. La auditoría se centró en las nuevas funciones de seguridad que se introdujeron en VeraCrypt después de la auditoría de seguridad de abril de 2015 de TrueCrypt. VeraCrypt es la bifurcación de esa herramienta de cifrado ahora abandonada y es compatible con versiones anteriores.

En la auditoría se encontraron cuatro problemas en el cargador de arranque: las pulsaciones de teclas no se borran después de la autenticación, los datos confidenciales no se borran correctamente, la corrupción de la memoria y las referencias de puntero nulo / incorrecto, y se solucionaron en la versión 1.19. 

También se abordó una falla de contraseña de inicio de baja gravedad, donde se podía determinar la longitud de la contraseña. Si bien la fuga de información en sí no es crítica, ya que el sistema debe iniciarse y se requiere acceso privilegiado para leer la memoria del BIOS, la vulnerabilidad debía corregirse porque un atacante que conociera la longitud de la contraseña aceleraría el tiempo necesario para la fuerza bruta. ataques, dijo la auditoría.

VeraCrypt se basó en funciones de compresión para descomprimir el cargador de arranque cuando el disco duro está encriptado, para crear y verificar los discos de recuperación si el sistema está encriptado y usa UEFI, y durante la instalación. La auditoría encontró que todas las funciones de compresión tenían problemas.

VeraCrypt estaba usando XZip y XUnzip, que tenían vulnerabilidades conocidas y estaban desactualizadas. "Recomendamos encarecidamente reescribir esta biblioteca y usar una versión actualizada de zlib, o preferiblemente, usar otro componente para manejar archivos Zip", dijeron los auditores. VeraCrypt 1.19 reemplazó las bibliotecas vulnerables con libzip, una biblioteca zip moderna y más segura.

UEFI es una de las características más importantes, y más nuevas, agregadas a VeraCrypt, por lo que los auditores prestaron especial atención a esta parte del código. Todo el código específico de UEFI está en el repositorio VeraCrypt-DCS, y el desarrollador principal de VeraCrypt lo consideró "mucho menos maduro que el resto del proyecto", escribieron los investigadores en el informe de auditoría. "Algunas partes están incompletas o no están del todo incompletas".

En el resumen de la auditoría, OSTIF escribió que "VeraCrypt es mucho más seguro después de esta auditoría, y las correcciones aplicadas al software significan que el mundo es más seguro cuando se usa este software".  

Como resultado de la auditoría, VeraCrypt descargó el cifrado de bloque simétrico GOST 28147-89, originalmente agregado en VeraCrypt 1.17, debido a errores en cómo se implementó. El cifrado GOST 28147-89 fue una alternativa desarrollada por los soviéticos a DES diseñada para fortalecer el algoritmo. Todas las bibliotecas de compresión se consideraron obsoletas o mal escritas, encontró la auditoría. La implementación "se quedó corta", dijo Zimmer en Reddit AMA.

En la versión 1.9, los usuarios pueden descifrar los volúmenes existentes que utilizaron el cifrado, pero no pueden crear nuevas instancias.

Los usuarios que utilizaron el cifrado GOST que se eliminó como parte de la auditoría deben volver a cifrar las particiones antiguas con la última versión. Los usuarios también deben volver a cifrar en todos los sistemas de cifrado de disco completo, ya que se han solucionado varios problemas con el cargador de arranque. Cualquiera que haya utilizado versiones anteriores a la 1.18 debería volver a cifrar las particiones debido al error relacionado con el descubrimiento de particiones ocultas.

VeraCrypt es una bifurcación de TrueCrypt, que los desarrolladores cerraron abruptamente en mayo de 2014, insinuando problemas de seguridad no especificados. Existía la preocupación de que la plataforma tuviera una puerta trasera o algún otro defecto que comprometiera la herramienta. La auditoría fue necesaria para evaluar la seguridad general de la plataforma.

OSTIF dijo que TrueCrypt 7.1a ya no debería considerarse seguro porque ya no se encuentra en mantenimiento activo y se ve afectado por los problemas del cargador de arranque descubiertos en la auditoría. Sin embargo, el informe de auditoría también sugirió que las debilidades en TrueCrypt 7.1a no afectan la seguridad de los contenedores y las unidades que no son del sistema.

Es fácil descartar a VeraCrypt como inseguro debido a los problemas descubiertos, pero eso ignora el valor total de tener una auditoría. Si la auditoría había descubierto problemas y el equipo se había negado a solucionar los problemas, o no respondía a las solicitudes de los auditores, eso sería motivo de preocupación. En este caso, Quarkslab completó la auditoría en un mes y los encargados del mantenimiento solucionaron una cantidad significativa de problemas y documentaron en detalle cómo manejar los otros problemas que no se habían abordado. Sí, los auditores encontraron algunas decisiones cuestionables y errores que no deberían haberse cometido en primer lugar, pero no hubo puertas traseras problemáticas o vulnerabilidades que comprometieran la integridad de la herramienta de cifrado de disco completo.

La naturaleza del desarrollo de código abierto significa que el código fuente está disponible para que cualquiera pueda examinarlo. Pero, como se ha demostrado repetidamente en los últimos años, muy pocos desarrolladores buscan activamente fallas de seguridad. Es por eso que, a pesar del enfoque de "muchos ojos", Heartbleed y Shellshock y otras vulnerabilidades críticas permanecieron en OpenSSL durante años antes de ser descubiertas.

Con una auditoría, los profesionales examinan cada línea del código fuente del software de código abierto para verificar la integridad del código, descubrir fallas de seguridad y puertas traseras, y trabajar con el proyecto para solucionar tantos problemas como sea posible. La auditoría suele ser costosa: el motor de búsqueda privado DuckDuckGo y el servicio de red privada virtual Viking VPN fueron los principales donantes de OSTIF para esta auditoría, por lo que las auditorías no son más comunes. Sin embargo, como muchos productos comerciales y otros proyectos de código abierto dependen en gran medida de un puñado de proyectos de código abierto, las auditorías son cada vez más importantes.

Con la auditoría de VeraCrypt completa, OSTIF está mirando hacia adelante a las auditorías de OpenVPN 2.4. GnuPG, Off-the-Record y OpenSSL también están en la hoja de ruta. La Iniciativa de Infraestructura Central de la Fundación Linux había establecido planes para una auditoría pública de OpenSSL con NCC Group, pero el estado de ese proyecto actualmente no está claro.

"Ojalá pudiéramos llegar a todos los proyectos que les gustan a todos, y mi lista sería enorme, pero tenemos recursos limitados con los que trabajar y asegurar la financiación es la gran mayoría de nuestro trabajo en este momento", escribió Zimmer, señalando que OSTIF se está enfocando en un proyecto "prometedor" en cada área de la criptografía.