jueves, agosto 4

Las vulnerabilidades de Cisco y el monopolio de Microsoft

Hoy he tenido una interesante charla con mi jefe sobre el asunto de las vulnerabilidades en los routers Cisco.Hay que tener en cuenta que mi jefe, que además es mi primo, y yo estamos en pos de la creación de una escuela de moralidad informática neoescolástica. De ahí lo complejos que llegan a ser algunos de nuestros debates.

La cuestión se centraba en la moralidad de la actitud tomada por Michael Lynn de la empresa ISS al revelar publicamente las vulnerabilidades de los routers CISCO. Hemos empezado discutiendo sobre cual es la proceso adecuado a seguir en un caso de estos. Es decir, si una persona descubre una vulnerabilidad en un producto de software o en un equipo informático ¿qué es lo que debe hacer?. Hemos concluido que la secuencia correcta sería advertir primero al fabricante del software o del equipo de forma confidencial sobre la vulnerabilidad. Suponiendo que el fabricante diera garantías de acción inmediata sobre el problema, entonces seríamos partidarios de no hacer nada más hasta que el fabricante publicara el parche correspondiente. Sería en ese momento cuando haríamos pública la vulnerabilidad descubierta y su solución.

En caso de que el fabricante se negara a dar solución a la vulnerabilidad entonces procederíamos a hacerla pública. La razón no tiene nada que ver con venganzas o con ganas de hacer daño. Hay que tener en cuenta que Michael Lynn es un técnico de la empresa ISS especializada en seguridad informática. Esta empresa tiene un deber (fiduciario?) con sus clientes a los que debe informar de posibles vulnerabilidades en sus sistemas.

Haciendo pública la vulnerabilidad antes de haber informado al responsable del problema no se cumple con el deber que se tiene hacia los clientes, puesto que el hacerla publica sin más puede de hecho hacer más daño que bien. Pero en caso de que el fabricante se niegue a dar solucion, la unica via es forzarle a hacerlo mediante la publicacion de la vulnerabilidad.

Se nos planteaba entonces un problema. ¿Porque hay que hacerle el trabajo sucio a Cisco o a Microsoft?. Al fin y al cabo ni uno ni otro paga por descubrir vulnerabilidades en sus sistemas. Lo lógico parecería ser que esos fabricantes nos pagaran por hacer ese trabajo sucio. Bueno, no es tan claro una vez que se mira bien. Si, como empresa de seguridad informatica, cobraramos tanto de nuestros clientes como de los fabricantes entrariamos en un considerable conflicto de interés. No podemos servir a dos amos con intereses contrapuestos. O a unos o a los otros.

Al final, como compañía de seguridad los clientes ya nos pagan por identificar los problemas de seguridad. Si esos clientes tuvieran la posibilidad de conseguir un resarcimiento económico por los problemas de seguridad de sus productos informáticos, entonces las cosas tomaría otra cariz. Peor entonces entramos en el espinoso tema de las licencias de software y las garantias que (no) proveen.

Ahora bien, toda esta argumentación está hecha dentro del contexto del software propietario. El asunto cambia si consideramos el mundo del software libre. En el mundo del software libre las vulnerabilidades que se descubren pueden ser resueltas por cualquiera que tenga la capacidad técnica para ello. Y esto es asi porque todo el mundo tiene acceso al código fuente. Microsoft al no dar acceso a su codigo fuente se asegura de alguna forma que las vulnerabilidades solamente las pueden solucionar ellos. Si el código fuente de los productos Microsoft fuera libre, entonces cualquiera con la capacidad técnica suficiente podría dar solución a las vulnerabilidades que surgieran.

En este caso, y dado el historial de vulnerabilidades de seguridad de los productos de Microsoft se crearía un mercado bastante amplio de empresas dedicadas a dar soluciones a esas vulnerabilidades. Esto sin duda iría en beneficio de los productos Microsoft que contarían con una legión de técnicos investigando vulnerabilidades y dándoles solución. Ahora mismo hay solamente una legión de técnicos investigando vulnerabilidades y contándoselas a Microsoft que se reserva el derecho de darles solución cuando y como ellos consideren mejor.

Quizá sea esta otra razón de peso para que Microsoft considere la conveniencia de liberar su código. En el fondo supondría un beneficio real para la compañía y sus productos, por cuanto que un mercado libre de "vulnerabilidades y parches" (libre en el sentido de abierto a todos, no en el sentido de "no tener") contribuiría a motivar el desarrollo y la innovación. Al final el lema de "security through obscurity" no es bueno para nadie, y de hecho es uno de los puntos más sólidos en favor del software libre.

No hay comentarios: