Chapuza criptográfica en Debian, Ubuntu y derivados

Tira original de xkcd, salpimentada en Metasploit, sobre los falsos números aleatorios Unas actualizaciones “llamativas” en mi Ubuntu me dieron qué pensar. Cuando volví a ver las mismas actualizaciones en el portátil de mi mujer, recién instalado con Ubuntu 8.04, empecé a sospechar. Al ver la noticia en Kriptópolis, todo se confirmó: una enorme vulnerabilidad afecta al componente OpenSSL de Linux Debian y sus derivados, como Ubuntu (y sus derivados, valga la redundancia, Kubuntu, Xubuntu y Edubuntu). Otros lo llaman debilidad, pero en Kriptópolis lo llaman chapuza y, a decir verdad, estoy muy de acuerdo con el término. Es un asunto de enorme gravedad provocado por una falta absoluta de controles de calidad, tanto en OpenSSL como en Debian: un desarrollador de Debian consultó a OpenSSL si era posible comentar un par de líneas de código que disparaban advertencias al depurar y, desde OpenSSL, se le contestó que no había mayor problema. Sólo que esas dos líneas de código son las que dotaban de robustez a las claves generadas; sin ellas, las claves eran tan robustas como la voluntad de un niño ante una bolsa de caramelos. Y nadie se dio cuenta durante un año y medio. Por tanto, una chapuza. Recordemos, por cierto, que ésta es la segunda vulnerabilidad ultra-crítica provocada por un error ridículo en menos de tres meses.

OpenSSL es una implementación de código abierto de, entre otras cosas, el protocolo SSL, la forma más común de proteger sitios web seguros (los que comienzan por https en lugar de http, para que nos entendamos). Esta vulnerabilidad hace que las claves con las que se encriptan los datos enviados a esos sitios (y muchas otras cosas, como conexiones VPN) sean fácilmente averiguables en menos de un par de horas. Además, esto no afecta sólo a las claves en uso, sino también a las claves usadas para firmar, a su vez, otras claves, con lo que la vulnerabilidad podría, en potencia, permitir a alguien generar claves fraudulentas que podrían aparentar ser perfectamente válidas, lo que sería muy útil para, por ejemplo, ataques de phishing (aunque se ha confirmado que esto no es un riesgo especialmente grande).

Me surgen varias preguntas al respecto: ¿sobre qué base dijeron los desarrolladores de OpenSSL que esa línea de código era “innecesaria”? ¿Qué pruebas hicieron para confirmarlo? Si nadie en Debian (ni en Ubuntu, ni un Kubuntu, ni…) revisó el código durante un año y medio, ¿es realmente ventajoso que se trate de código abierto? La falta de exploits de esta vulnerabilidad, ¿se debe sólo a la poca atención que los hackers prestan a Linux? ¿Cómo de habituales son estos errores? ¿Qué pasará cuando más y más usuarios se suban al carro de Linux y los hackers comiencen a prestarle atención? Y, finalmente, ¿cuánta repercusión habría tenido este asunto si la chapuza la hubieran hecho en Redmond?

Información completa, en el foro de seguridad de Ubuntu.

Imagen encontrada en Metasploit, sobre un original de xkcd, con licencia by-nc.


Haga un comentario



Suscríbete

cargando...
Sígueme en http://twitter.com