Me gustó la respuesta de D.W. Tanto que detesto escribir otra, pero tuve algunos puntos que fueron lo suficientemente grandes que lamentablemente estoy repitiendo aquí:
¿Cómo puedo informarme sobre una vulnerabilidad de día cero contra mi aplicación lo antes posible, sin tener que recibir notificaciones irrelevantes?
Acérquese a la fuente de divulgación de vulnerabilidades que pueda, y comprenda que no siempre será la misma fuente. Tendrá que ser una combinación de mejorar la recuperación de información y hacer que sea fácil de encontrar (lo que tiene sus propias implicaciones de spam).
Las buenas ideas incluyen:
- tenga una forma obvia en su sitio para incluir errores y vulnerabilidades
- asegúrese de que, cuando vuelva a empaquetar el paquete, parte del acuerdo sea que los errores de seguridad se envíen a su sistema de seguimiento de errores / vulnerabilidades. Probablemente querrá discutir cómo se examinan los problemas antes de enviarlos a su manera, pero tenga en cuenta que a menudo las vulnerabilidades más grandes se encuentran en la forma en que su sistema se integra con el sistema más grande.
- asegúrese de que los sitios de publicación de vulnerabilidades sepan cómo encontrarlo - no solucionará un verdadero "día cero", ya que pueden demorarse horas o días, pero definitivamente desea escuchar directamente de ellos.
- recopilar toda la información que pueda sobre las posibles vulnerabilidades del producto - Alertas de Google - fue una gran idea. Estoy seguro de que hay otros.
Es posible que tengas que aceptar que te llegará información irrelevante; lo mejor que puedes hacer es clasificarla.
Tenga en cuenta, también, que no todas las vulnerabilidades son encontradas por los buenos. Esperar que alguien más lo encuentre nunca es la forma ideal de encontrar vulnerabilidades. A medida que el producto crezca, querrá introducir algún tipo de verificación de seguridad, incluyendo cosas como:
- Análisis de seguridad de código, tanto manual como automatizado.
- prueba de la pluma
- revisión independiente
El nivel de esfuerzo debe equilibrarse con el costo del error, pero es posible que el costo de encontrar y responder a una vulnerabilidad que se divulgue en público sea mayor que la implementación de su propia verificación de seguridad.
¿Cómo puedo saber cuándo las bases de datos de vulnerabilidades crean entradas relacionadas con mi aplicación?
Muchas de las bases de datos de vulnerabilidades tienen alertas de transmisión: debería poder suscribirse a una transmisión y filtrarla u obtener una fuente RSS y limitarla con criterios de búsqueda.
¿Cómo puedo: garantizar la precisión de las entradas de la base de datos de vulnerabilidades relacionadas con mi aplicación?
Primero: crea una relación con los grupos de bases de datos. Y deje claro cómo crear una relación con usted si un grupo de bases de datos está buscando llegar. guía de CERT , y este artículo - son excelentes recursos para recomendaciones, pero la parte crítica es darse cuenta de que si no pueden llegar a ti, no obtendrán la respuesta correcta.
Y es un proceso bidireccional: tiene una forma de encontrarlo, pero también una forma de publicar información. Y cuando publiques, incluye respuestas sólidas. Como desarrollador de soluciones, tengo demasiados rodeos con los proveedores de soluciones que brindan información de vulnerabilidad de seguridad que parece que la inventaron en el viaje para trabajar sin pruebas reales o información objetiva. Listar cosas como:
- detalles sobre el arreglo
- detalles sobre las pruebas utilizadas para verificar la solución
- detalles específicos sobre el impacto de tomar la solución (¿hay alguna posibilidad de que algo en lo que confío cambie o se rompa?)
- resumen general del alcance del cambio; por ejemplo, "corrección realizada a una función de utilidad subyacente", "corrección realizada a base de código especalizado utilizada para la interoperabilidad XYZ, el impacto fuera de este espacio es extremadamente limitado"
Y detalles de qué CVE u otro problema publicado está intentando solucionar.
Póngalo en la mayor cantidad de transmisiones que pueda: suscripción por correo electrónico, blog, sitio web, etc. Desea que esto sea posible.
Y dar a conocer su proceso. Si envío una vulnerabilidad a su sitio web, ¿puedo esperar recibir una respuesta en 24 horas? ¿Cómo calificas la severidad? ¿Cuál es el proceso de resolución? Si se trata de un producto que está integrado en otras soluciones, ¿quién realiza las pruebas de interoperabilidad?
No necesitas métricas perfectas, necesitas estar a la altura de ellas. Por lo tanto, si su tiempo de respuesta es de 2 semanas, comuníquelo a los usuarios.