Heartbleed nos enseñó que la seguridad y el software no se mantienen solos

heartbleed-bugHace poco una vulnerabilidad en la herramienta de seguridad OpenSSL conocida como Heartbleed ha generado grandes preocupaciones en el mundo de la informática.

Este problema sacó a relucir que miles de sistemas han sido vulnerables durante años, con el agravante de no haber una forma fácil de averiguar si dichos sistemas han sufrido ataques que hacían uso de la mencionada vulnerabilidad. Otro punto importante era el éxito de OpenSSL ya que ésto hacía que la herramienta estuviera tan extendida que los sistemas en riesgo eran muchos más.

Puede verse  claramente que la magnitud de este problema es grande y como suele pasar en casos así ha dado pie a muchos debates. Uno de ellos gira en torno a la falta de mantenimiento de un software tan importante. Al parecer, de la misma forma que pasa en nuestras casas, entre las grandes empresas tampoco se toma la seguridad en serio hasta que no es demasiado tarde. Ésta es por definición una costumbre muy perjudicial.

Al menos el descubrimiento de Heartbleed ha conseguido atraer la atención de las grandes empresas que utilizan OpenSSL y ya han dicho que apoyarán el proyecto. Demasiado tarde, pero sin duda ayudará a mejorar la seguridad de una herramienta que está presente en muchísimos sistemas y cuyo equipo de desarrollo no tenía recursos para hacer mucho más que lo hecho hasta ahora.

También he podido leer algunos comentarios sobre el mantenimiento del proyecto. Uno de los argumentos que esgrimen los defensores del software libre sostiene que mil ojos ven más que veinte. En otras palabras, que el código sea público ayuda en su desarrollo ya que hace posible que participen en el proyecto muchas más personas. Los que prefieren el software privativo han puesto el caso de OpenSSL como ejemplo de que este argumento no es veraz. Si bien es cierto que el caso es muy grave, el ejemplo de OpenSSL no pone en entredicho la filosofía del software libre sino que demuestra que este tipo de proyectos requieren trabajo como cualquier otro.

De hecho el mayor interés en investigar el código de OpenSSL después de la aparición de Heartbleed ha resultado en la identificación de más problemas. ¿Muestra este hecho que la calidad del software ha empeorado? Los errores, conocidos o no, estaban ahí y por lo tanto la calidad del software sigue siendo la misma. La diferencia es que los errores ahora son conocidos y que ya están solucionados o que van camino de estarlo.

Este caso nos ha enseñado varias cosas. Uno, la seguridad es algo que hay que mejorar a diario y si para eso las empresas tienen que apoyar proyectos de open source, que así sea. Cualquier otra forma de proceder dejaría a las empresas indefensas ante casos de emergencia.

Dos, en el desarrollo de software la seguridad por oscuridad no sirve. Si existe un bug la única medida correcta es arreglarlo y no intentar mantenerlo en secreto para que nadie lo descubra (nadie ha intentado ocultar ningún bug de OpenSSL pero el caso demuestra que hacerlo no sería una buena práctica).  Al fin y al cabo el problema está ahí y si alguien lo encuentra ya irá con ventaja.

Tres, la filosofía del software libre es una gran ayuda para evitar el problema comentado en el anterior párrafo ya que al ser el código público cualquiera con los conocimientos necesarios puede participar en la investigación de éste. Sin embargo, esto no quiere decir que el software libre es un conjunto de proyectos que se mantienen por sí solos de forma mágica. Como cualquier otro proyecto, requieren trabajo y poner dinero para poder llegar a los objetivos.

Anuncios

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s