19 mayo 2009

¿Les importa a las empresas las vulnerabilidades reportadas?

En este último año y sobre todo últimamente, desde Security By Default (y algún colaborador nuestro), hemos reportado diferentes vulnerabilidades a diferentes entidades: Menéame, Digg, Movistar, Sun (gracias Slai One), Popular.es, etc,...

En general, lo éticamente correcto cuando se encuentra una vulnerabilidad en un sistema, una vez analizado el impacto de la misma, es notificarla al fabricante o en caso de una página web, al contacto designado por la entidad propietaria. Un correo de contacto que debería ser válido es el proporcionado por la organización cuando efectúa el registro del dominio. Para ello lo que hacemos es buscar los registros whois del dominio o en caso de que falle (o hayan hecho caso a Yago) podemos intentarlo haciendo el Whois a la dirección IP directamente.

Una vez encontrado el contacto, se envía un correo, detallando lo mejor posible, la naturaleza del bug y cómo se ha encontrado (por casualidad o por intuición).

En nuestro caso además solemos indicar que nos gustaría saber cuándo ha sido parcheado el bug para poder publicar un artículo en el que hacemos pública una vulnerabilidad que ya ha sido solucionada, así como los detalles de explotabilidad de la misma.

A partir de aquí, lo lógico es esperar una contestación del tipo que sea en un tiempo prudencial.

Las respuestas han sido hasta ahora bastante diferentes:
  • Un mensaje automatizado que nos daba bastante pocas esperanzas de que la vulnerabilidad fuese a ser tratada en condiciones, como nos pasó con Digg.
  • Una comunicación bastante fluida y amable en la que se agradecía haber reportado el fallo y que en un breve espacio de tiempo sería solucionado: el caso de popular.es o Menéame,
  • Ningún tipo de respuesta, como hasta ahora ha sido el caso en Movistar y Sun (esta vulnerabilidad no ha sido ni descubierta ni notificada por nosotros, pero estamos al tanto de que la comunicación ha sido completamente unidireccional desde "Slai One" hacia Sun) no hemos obtenido respuesta de ningún tipo.
Si bien parece que las empresas de mayor volumen hacen caso omiso de las notificaciones de vulnerabilidades, hemos de encontrar la justificación de dicha latencia en la jerarquización y estratificación de las mismas. Conocemos que desde que llega un correo con la notificación (si es que llega y no lo filtra el antispam), se procesa por diferentes operadores, se reenvía al departamento correspondiente, se analiza, se comprueba su impacto, se piden los permisos para el cambio y se pasa a producción... pueden pasar varios días. Por eso en organizaciones más sencillas en cuanto a estructura, este tipo de problemas tiene menor tiempo de exposición.

No obstante parece mentira como organizaciones con gran cantidad de medios invertidos en seguridad (infraestructuras de IDS/IPS, servicios de auditoría de aplicaciones, criterios de programación segura, técnicos extremadamente competentes,...) no tengan en cuenta el facilitar de una forma más fácilmente alcanzable una dirección de correo en la que poder reportar los remotos fallos encontrados por terceros. Esta dirección obviamente debería ser monitorizada de manera continua por alguien del equipo de seguridad que pueda escalar el fallo al departamento correspondiente a la brevedad.

16 comments :

eduardo abril dijo...

@Lorenzo: todo eso que dices suena muy bien, pero ponte un poco en el papel del tío que recibe el mail avisando de un agujero de seguridad en su red ...

Suponiendo que llegue, y suponiendo que se lo lea, que ya es mucho suponer, el tío va a tener que verificar paso a paso que lo que le dicen es correcto, abrir una petición al departamento correspondiente, encargarse de hablar con todo el mundo e incluso puede ser que le toque trabajar a él.

Y todo esto, ¿para qué?

El problema de su responsabilidad ya se lo ha quitado de encima haciendo auditorías. NO es culpa suya. Y a nadie le gusta hacer horas extra. Suficiente tiene con preocuparse de sacar todos los certificados pertinentes, revisar logs, contratar auditorías, tener varias reuniones a la semana, atender a representantes de distintos productos ...

Vamos, que a no ser que te encuentres a alguien totalmente entregado a su trabajo, y cada vez quedan menos, tu aviso de vulnerabilidad va a caer en el olvido ...

Saludos,

Lorenzo Martínez dijo...

@Eduardo -> estoy de acuerdo contigo en algunos puntos, y en otros no. Se supone que la gente tiene ciertas responsabilidades a su cargo. Si la persona que recibe el correo (que en general, suele ser un grupo, un alias a una lista,...) no le hace caso por pereza, para empezar demuestra un nivel de profesionalidad ínfimo y merece irse a la cola del paro.

Se supone que un responsable de seguridad que encomienda unas labores a su equipo, entre otras, está el atender los correos que otras personas desinteresadamente envían para notificar fallos, al final, se debería estar agradecido a quien lo notifica y cuanto menos tenerlo en cuenta. Al fin y al cabo el que está trabajando gratis es el notificador. Considéralo como parte gratuita de la auditoría (sin pagar $$$$ por ello)

Por otro lado, no sacas nada con gastarte millones en poner puertas blindadas si te dejas la ventana abierta.

Un tópico muy cierto es el decir que la fortaleza de una cadena viene dada por el más débil de sus eslabones y en el caso de la seguridad de sistemas se aplica a la perfección.

Anónimo dijo...

Ante todo hay que ser responsable. No se que preferiria que me notificase una persona un bug, o hacerme el loco y ser responsable de robo de información corporativa, o un defacement. No creo que eso de buena imagen. Por eso como en todo tiene que haber personas cualificadas para desarrollar puestos de trabajo. El tiempo que no han invertido en evitar los posibles fallos, que los inviertan en arreglarlos. Ahora me vas a decir que entre capitulo y capitulo de muchachada nui no podian haber subsanado el error :D

juanma dijo...

Yo me he encontrado en ambas situaciones. Reportando vulnerabilidades y recibíendolas. Reportando me he encontrado un poco de todo. HP respondió bien y siguiendo un procedimiento bien montado. IBM en cambio no respondió y el esCERT de la UPC en su día tampoco respondió. Parece increible que organizaciones y empresas que juegan un papel importante en este mundillo no atiendan correctamente este tipo de comunicados pero es así.
Personalmente me parece triste que una oficina de seguridad no responda cuando se les está avisando de un problema que les afecta y ofrece una imagen muy pobre en cuanto a conciencia de seguridad.

Saludos,
Juanma

Voidlabs dijo...
Este comentario ha sido eliminado por el autor.
tkanomi dijo...

@lorenzo -> Tienes razón. Un responsable sea de lo que sea ante una notificación de seguridad tiene que arreglarla, no vale mirar para otro lado. En seguridad o por lo menos eso creo yo, es una profesión, es decir uno es profesional ante cualquier adversidad y mas si te dedicas a seguridad.

En mi caso (como el amigo @Juanma) me encontrado en ambas situaciones. Reportando vulnerabilidades y recibiéndolas y considero agradecer como mínimo a quien te avisa y no las explota.

Zerial dijo...

Yo he tenido experiencias similares. Me ha tocado reportar distintos fallos y vulnerabilidades a distintas empresas. Me doy el trabajo de contactarlos para que corrigan el error y no recibo ninguna respuesta, ni si quiera un gracias. Y posteriormente, como a los 3 o 4 meses, misteriosamente, esa vulnerabilidad aparece corregida. Llega un punto en que me pregunto ¿Vale la pena reportarlas?

Slai dijo...

En mi caso, siempre reporto los fallos que encuentro y en el 80% de los casos no obtengo respuesta alguna. De las ultimas que notifique me hicieron perder un empleo. ¿Porque? Estaba en un proceso de selección para una empresa bastante conocida, encargado para la gestión de DNS. SOLO con información publica hice un esquema de red y de los fallos de las versiones no actualizadas (DNS Cache poisoing), y malas configuraciones (sobre todo). Les envie estos problemas a la empresa para que lo tomasen como algo valorable y me costo el posible empleo. A la persona que se lo envie no le sento muy bien que alguien le comunicase que sus servicios estaban mal, así que me "sugieren" que me busque otra empresa y que si hago esa información publica me costara trabajar en mi ciudad porque como todas son demasiado pequeñas . Así que yo me lo plantearia ya 2 veces.

Julio Jaime dijo...

Hola, antes que nada los felicito por el blog.

Yo estaba pensando escribir un post similar a este en mi sitio, de hecho creo que hasta encuentro este tipo de situaciones, encontrar un problema y reportarlo, como enviar un mensaje en una botella. Con suerte alguien lo lee , lo encuentra interesante y responde.

Hace cerca de tres semanas atras encontré, varias vulnerabilidades en un sitio de Cisco, lo reporte al PSIRT y al otro dia recibi la respuesta.

Aun no lo solucionaron, y tengo mis dudas que lo hagan. Cuando creo que un problema puede afectar a terceros, creo que es valido esperar un tiempo prudencial y después hacerlo publico.

Piensen que hace pocas semanas atras McAfee tenia varios problemas de XSS en su sitio y luego de varias denuncias y cuando ya fue publico en varios sitios, se dignaron a repararlo.

Concuerdo que de acuerdo al tamaño de la empresa y el impacto, la respuesta puede variar. Pero yo tengo la sensación que hoy en dia, las empresas en general tienen la costumbre de las avestruces.

Slds.

Lorenzo Martínez dijo...

@Juanma, coincido plenamente contigo. Aunque sea desde que empiezan a procesar la vulnerabilidad, por lo menos un "Nos ponemos con ello. Gracias" No cuesta nada y quedas hasta bien (las respuestas automáticas al minuto de haber notificado no cuentan eh?)

@tkanomi -> Lo que planteas sería lo deseable. Desgraciadamente hay gente que o no tiene educación o no tiene gratitud.

@Zerial -> El problema es que si no las reportas, éticamente no es correcto aprovecharte de fallos de una web para obtener un beneficio (por ejemplo: amueblar gratis tu casa o subir el saldo de puntos de tu móvil, ganar en un casino online, etc...) Sin embargo, si reportas muchos bugs, alguno te contestarán de forma agradable dándote las gracias al menos no? Esperemos que siga compensando :D

@Slai -> Lo que te pasó a tí fue demasiado. Por la naturaleza de mi actividad laboral actual, antes de ir a un posible cliente, suelo echar un vistazo a la web, ver qué tipo de servidores emplean, y en general y muy muy por encima el estado global. El objetivo es hacer hincapié en la última vulnerabilidad de Apache o de IIS o de.... según lo que vea que tengan, para poderles hacer sentir identificados. En general no se suelen mosquear en exceso, pero claro, siempre hay excepciones como lo que cuentas.

@Julio Jaime -> gracias por la felicitación. Muy interesante tu postura, aunque aquí entra otro factor. ¿Qué tiempo es prudencial para esperar antes de hacer pública una vulnerabilidad? incluso habiéndola reportado, creo que si no hay respuesta, no es adecuado publicarla. Creo que si hay respuesta pero es un "nos da igual, no vamos a repararla porque no nos afecta", entonces ahí (o si ha sido parcheada) sería viable el publicarla

>> s E t H << dijo...

yo no encontre vulnerabilidades en empresas importantes (habia una de hosting y otra de programación, pero comparadas con lo que postean ustedes no existen). En las webs comunes solo me respondieron una vez agradeciendo. El resto no me contestó, aunque algunos lo arreglaron

>> s E t H << dijo...

yo no encontre vulnerabilidades en empresas importantes (habia una de hosting y otra de programación, pero comparadas con lo que postean ustedes no existen). En las webs comunes solo me respondieron una vez agradeciendo. El resto no me contestó, aunque algunos lo arreglaron

Lorenzo Martínez dijo...

@Juanma, coincido plenamente contigo. Aunque sea desde que empiezan a procesar la vulnerabilidad, por lo menos un "Nos ponemos con ello. Gracias" No cuesta nada y quedas hasta bien (las respuestas automáticas al minuto de haber notificado no cuentan eh?)

@tkanomi -> Lo que planteas sería lo deseable. Desgraciadamente hay gente que o no tiene educación o no tiene gratitud.

@Zerial -> El problema es que si no las reportas, éticamente no es correcto aprovecharte de fallos de una web para obtener un beneficio (por ejemplo: amueblar gratis tu casa o subir el saldo de puntos de tu móvil, ganar en un casino online, etc...) Sin embargo, si reportas muchos bugs, alguno te contestarán de forma agradable dándote las gracias al menos no? Esperemos que siga compensando :D

@Slai -> Lo que te pasó a tí fue demasiado. Por la naturaleza de mi actividad laboral actual, antes de ir a un posible cliente, suelo echar un vistazo a la web, ver qué tipo de servidores emplean, y en general y muy muy por encima el estado global. El objetivo es hacer hincapié en la última vulnerabilidad de Apache o de IIS o de.... según lo que vea que tengan, para poderles hacer sentir identificados. En general no se suelen mosquear en exceso, pero claro, siempre hay excepciones como lo que cuentas.

@Julio Jaime -> gracias por la felicitación. Muy interesante tu postura, aunque aquí entra otro factor. ¿Qué tiempo es prudencial para esperar antes de hacer pública una vulnerabilidad? incluso habiéndola reportado, creo que si no hay respuesta, no es adecuado publicarla. Creo que si hay respuesta pero es un "nos da igual, no vamos a repararla porque no nos afecta", entonces ahí (o si ha sido parcheada) sería viable el publicarla

Slai dijo...

En mi caso, siempre reporto los fallos que encuentro y en el 80% de los casos no obtengo respuesta alguna. De las ultimas que notifique me hicieron perder un empleo. ¿Porque? Estaba en un proceso de selección para una empresa bastante conocida, encargado para la gestión de DNS. SOLO con información publica hice un esquema de red y de los fallos de las versiones no actualizadas (DNS Cache poisoing), y malas configuraciones (sobre todo). Les envie estos problemas a la empresa para que lo tomasen como algo valorable y me costo el posible empleo. A la persona que se lo envie no le sento muy bien que alguien le comunicase que sus servicios estaban mal, así que me "sugieren" que me busque otra empresa y que si hago esa información publica me costara trabajar en mi ciudad porque como todas son demasiado pequeñas . Así que yo me lo plantearia ya 2 veces.

Anonymous dijo...

Ante todo hay que ser responsable. No se que preferiria que me notificase una persona un bug, o hacerme el loco y ser responsable de robo de información corporativa, o un defacement. No creo que eso de buena imagen. Por eso como en todo tiene que haber personas cualificadas para desarrollar puestos de trabajo. El tiempo que no han invertido en evitar los posibles fallos, que los inviertan en arreglarlos. Ahora me vas a decir que entre capitulo y capitulo de muchachada nui no podian haber subsanado el error :D

eduardo abril dijo...

@Lorenzo: todo eso que dices suena muy bien, pero ponte un poco en el papel del tío que recibe el mail avisando de un agujero de seguridad en su red ...

Suponiendo que llegue, y suponiendo que se lo lea, que ya es mucho suponer, el tío va a tener que verificar paso a paso que lo que le dicen es correcto, abrir una petición al departamento correspondiente, encargarse de hablar con todo el mundo e incluso puede ser que le toque trabajar a él.

Y todo esto, ¿para qué?

El problema de su responsabilidad ya se lo ha quitado de encima haciendo auditorías. NO es culpa suya. Y a nadie le gusta hacer horas extra. Suficiente tiene con preocuparse de sacar todos los certificados pertinentes, revisar logs, contratar auditorías, tener varias reuniones a la semana, atender a representantes de distintos productos ...

Vamos, que a no ser que te encuentres a alguien totalmente entregado a su trabajo, y cada vez quedan menos, tu aviso de vulnerabilidad va a caer en el olvido ...

Saludos,