GnuTLS: Un bug crítico jaquea las conexiones seguras en Linux

Por definición, la librería GnuTLS es una implementación abierta de los protocolos SSL, TLS y DTLS. Una buena parte del universo Linux recurre a esta librería, pero un bug descubierto recientemente, que estaría en el código desde el año 2005, pone en riesgo la seguridad en más de 200 paquetes. La vulnerabilidad ya fue corregida, sin embargo, tal vez pase un buen tiempo antes de que todo el software afectado asimile a la nueva versión.

Un par de semanas atrás, la gente de Apple debió corregir un bug en iOS que permitía a un atacante en una red privilegiada observar y/o capturar datos bajo una sesión SSL/TLS. Pocas horas después, se confirmó que el mismo bug también afectaba a las últimas versiones de OS X. Dicho de otra forma, las sesiones cifradas estaban “cifradas”, cortesía de una línea de código duplicada, “goto fail”. Cupertino respondió con velocidad al problema, y se calcula que la gran mayoría de los usuarios afectados ya tiene el parche en sus sistemas. Ahora, apareció un bug en la librería GnuTLS. Desde un punto de vista técnico, los bugs son diferentes, y el único elemento en común es el problema en sí, o sea, tratar certificados digitales falsos como si fueran reales, dejando abierta una puerta gigantesca para interceptar y capturar datos (lo que se conoce como un ataque de “hombre en el medio”) en sesiones supuestamente protegidas.

Los desarrolladores advierten a todos los usuarios que deben instalar la versión 3.2.12 de la librería. ¿Cómo fue descubierto el bug? Gracias a una auditoría de código hecha por uno de los creadores de GnuTLS, Nikos Mavrogiannopoulos, quien ahora forma parte del equipo de seguridad de Red Hat. Otro aspecto preocupante es que el bug estaría allí desde el año 2005, y un hilo de conversación en Reddit ha rastreado sus raíces hasta el año 2003. Con la vulnerabilidad corregida, el problema más importante es hacer llegar el parche a quienes lo necesitan. Si tenemos en cuenta la dinámica del universo Linux, esto va a ser mucho más complicado de lo que parece, porque el proceso no se limita a presentar la corrección, sino también a estudiar cómo reacciona en cada plataforma (y esperar que no quiebre otra cosa). En febrero de 2008 surgieron algunas publicaciones indicando los problemas de GnuTLS, no sólo de implementación, sino de diseño. ¿Será necesario revisar todo el código? ¿O es preferible que los desarrolladores den el salto a OpenSSL? Estaremos vigilando.

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *