Qué prefieres, ¿que te avisen o que nunca lo sepas?
Aug 26th, 2008 by Federico Almada
Más de una decena de veces, me han avisado que tenía la “cremallera” (o cierre =)) abierta… y francamente, quienes me han hecho ese favor, me han ahorrado un mal momento, por lo que les he agradecido (pese al calor que supone que te digan tal cosa).
Muchas veces cuando veo como la gente actúa con alarmismo ante algunos problemas, me supone pensar que esas personas no analizan que pasaría si el problema nunca hubiese sido reportado.
El caso más cercano que conozco, es el de la vulnerabilidad en la creación de llaves seguras, de hace algunos meses atrás (en Debian, creo), que llevó a muchos a hablar de inseguridad y hacerlo de forma -bien amarilla-. Ahora bien, el problema se encontró y se solucionó… del mismo modo que cuando me avisaban que tenía el cierre abierto, me fijaba… lo subía y listo.
El tema es cuando nadie te avisa que tenés el cierre abierto… sea porque nadie te quiere y desean que pases vergüenza, nadie se anima porque podés llegar a tomarlo para mal, o bien porque nadie se fija en vos.
Esta situación, llevada a la realidad me permite decir que aquellos que se alarman y están con otros panatalones puestos… seguramente sufren del “nadie te avisa”.
El primer caso, cuando nadie te avisa para que pases vergüenza, podemos verlo como una forma de sacar provecho de una persona. Si cambiamos a esa persona, por una organización que tiene un software (cerrado) con vulnerabilidades, nos encontramos que el provecho puede ser más que una simple risa… puede significar desde una extorsión a la misma por revelarle la falla, hasta un simple compra-venta a quien más ponga para revelarle la falla (lo que sería similar a chusmearle a otro que tenés el cierre abierto).
En el segundo caso, cuando nadie se anima a decirtelo, es porque tu historial de reacciones quizás no sea tan bueno (sos un calentón, tomás todo para mal, etc). Esto, llevándolo a una empresa (nuevamente, de SW y código cerrado) podría ser en cambio por la típica de querer meter juicio a todo aquel que reporta un error… algo que normalmente es mal visto por la comunidad de seguridad, y que lleva a que estos ‘investigadores en Infsec’ nunca reporten sus hallazgos… extendiendo la vida de una vulnerabilidad, hasta que alguien de la empresa encuentre el error… o que la misma cambie su actitud ante esta comunidad.
El tercer caso, es tan bueno como malo… ya que si nadie se fija en vos, entonces por más que tengas el cierre abierto, nadie lo va a notar. Aunque… vale mencionar, que este caso es hipotético, ya que si alguien se puede reir de vos… seguramente lo hará. Viéndolo desde una perspectiva de empresa, esto significaría un producto que no logró aceptación por parte del mercado… y que posiblemente siga con errores hasta que realmente -alguien le de bola-. Es malo porque nadie usa tu producto, pero es bueno porque nadie explota los errores (dado que el objetivo potencial es demasiado reducido como para ser rentable al investigador de seguridad).
En fin, la idea general…. si un error pasa X años y alguien lo encuentra (y soluciona), produce mejores resultados que un error que pasa inadvertido y/o que alguien lo encuentra pero nunca soluciona (porque nadie te quiere, todos te temen, o nadie te conoce… como dije anteriormente).
En otras palabras, la diferencia entre las vulnerabilidades del software cerrado y abierto, es que este último no tendrá personas que teman… y el público que “no te quiera” seguramente será una mínima proporción del público que te banque. En el peor caso, si nadie te conoce… difícilmente el proyecto siga en pie por mucho tiempo… ya que no tendrá comunidad, y sin comunidad… un proyecto de código abierto, no existe.
Nota: ahora miren para abajo… y revisen si su cierre está abierto… no vaya a ser que…

Fede:
Que mejor momento para recordar entonces el punto 3 del contrato social de Debian, no? http://www.debian.org/social_contract
3 No ocultaremos los problemas
Mantendremos nuestra base de datos de informes de error accesible al público en todo momento. Los informes de error que los usuarios envíen serán visibles por el resto de usuarios de forma inmediata.
Algo que, justamente, en el tema del fallo de la generación de claves ssl, se cumplió estrictamente, permitiendo que las soluciones llegaran mucho antes que los exploits.
Saludos
A ver en el contrato de Microsoft… ‘perá que no lo encuentro… ehh.. hmm ¿tiene? jejeje