Gestión de vulnerabilidades con pentesting persistente, una visión global (y II)

lunes, 20 de julio de 2015

Siguiendo el razonamiento de la entrada anterior, un punto a tener en cuenta en la gestión, es la priorización de los esfuerzos para la mitigación, puesto en algunos casos esta tarea puede ser compleja cuando se detectan un número muy elevado de vulnerabilidades, o dicho de otra forma, ¿por dónde debería comenzar a corregir?

Entre los factores para realizar esta priorización se encontrarían:
  • La severidad o gravedad de la vulnerabilidad detectada, junto a la facilidad de explotación de la vulnerabilidad (privilegios necesarios, existencia de exploit,...)
  • Activos afectados: no es lo mismo una vulnerabilidad muy grave en un activo de desarrollo que en un entorno de producción, o con un alto valor para el negocio.
La combinación de ambos factores nos proporciona un valor de criticidad y urgencia para la corrección de la misma expresado en términos de negocio ya que, aunque se detectara una vulnerabilidad muy severa, (por ejemplo SQL Injection), pero se tratase de un sistema de desarrollo aislado, la criticidad y la urgencia para la organización no sería la misma que si se detectara sobre un sistema de producción.

Por tanto para lograr el éxito de este proceso de gestión de vulnerabilidades, la organización debe aplicar una clasificación y categorización de los activos analizados tanto en términos de ubicación física/lógica (Producción, Preproducción, DMZ X, …), como en términos de negocio (Ventas, CRM, SAP, …, critico para el negocio, etc.). Generalmente casi todas las organizaciones cuentan con una CMDB donde se inventarían los activos con cierto grado de categorización de los mismos, sin embargo no suele disponer de un detalle concreto en cuanto a versiones de software instalado, servicios de red ofrecidos entre otros.

El Servicio de Gestión de Vulnerabilidades es capaz de combinar la información contenida en la CMDB de la organización junto a la recogida por las herramientas de análisis de seguridad, facilitando de este modo establecer una priorización de acuerdo a términos de negocio.

Para ello almacena en su BBDD información de los activos de la organización detectados por los escáneres de seguridad. Puede completar esta información junto a la de la CMDB de la organización permitiendo crear atributos de una manera personalizada y adaptable a la organización. Por ejemplo, se puede realizar una catalogación de activos en base a unidades de negocio o grupos de activos que permitirá un mayor control y gestión estratégica de los activos.

Personalización de campos en el servicio de gestión de vulnerabilidades
Gracias a estos campos se puede realizar una rápida identificación de los activos mediante filtros, su posterior edición de forma múltiple y la creación de informes personalizados, cuyo alcance sean unidades de negocio o grupos de activos definidos.

Campos de identificación de activos en una compañía

Generalmente, las organizaciones llevan a cabo de forma más o menos industrializada ciertos procesos de revisión de seguridad de sus activos, subscripciones de servicios de alertas, uso de escáneres de seguridad, pentesting realizados... y que le proporciona información de forma disgregada, lo que lleva a emplear mucho tiempo para realizar el seguimiento de todas las amenazas detectadas.

Por tanto, es importante disponer de un cuadro de mando que permita visualizar de forma unificada las amenazas detectadas en todos los análisis de seguridad realizados. En el servicio de Gestión de vulnerabilidades, la organización podrá visualizar en tiempo real los diferentes tipos de vulnerabilidades que afectan a sus sistemas, pudiendo comprobar el origen y determinar la causa en aras de relacionarlo con los controles más adecuados.

Ejemplo de visualización de panel de amenazas

En este cuadro de mando se observan las vulnerabilidades que pueden haber sido detectadas mediante proyectos de Pentesting Persistente, pruebas manuales, escáneres de seguridad o una suscripción de alerta de vulnerabilidades. El servicio empela una taxonomía propia basada en estándares como CVE y CWE para homogeneizar la descripción y tipología de los hallazgos y permitir de ese modo una presentación unificada.

A través de los diferentes filtros aplicados en el cuadro de mando, de la categorización de los activos, la organización accede de forma ágil al listado y detalle de las vulnerabilidades detectadas para la gestión del ciclo de vida de las vulnerabilidades:



Ejemplos de cómo se observan las evidencias
El proceso de gestión de vulnerabilidades debe ser continuo y por tanto el tratamiento de las amenazas detectadas deberá ser llevado a cabo en base a la información en tiempo real que se tiene sobre las vulnerabilidades detectadas, en lugar de analizar informes estáticos del resultado de un proyecto. Si este no fuera el caso, es posible que se estén empleando recursos para la mitigación de vulnerabilidades que pudieran haber desaparecido en detrimento de otras nuevas vulnerabilidades que pudieran tener una urgencia mayor para la organización.

Esto no quiere decir que el proceso de gestión de vulnerabilidades no deba contar con informes en el que se recojan los hallazgos, sino que estos informes deben ser generados bajo demanda por la organización con la información actualizada desde la BBDD.
Informes generados bajo demanda

Aparte de disponer de un único formato de informe detallado donde se muestra la información de un proyecto concreto (activos dentro del alcance, ventanas de tiempo, detalle de las pruebas realizadas y vulnerabilidades detectadas), es necesario proporcionar otros tipos de informes que visualicen la evolución del estado de las vulnerabilidades y las diferencias entre las distintas ejecuciones de las pruebas seleccionadas de un proyecto concreto, mostrando los cambios de estado de las vulnerabilidades, así como vulnerabilidades que han aparecido nuevas, nuevos activos y cualquier otro elemento diferente entres las ejecuciones comparadas.

Como indicábamos al principio de esta serie de artículos, este proceso de gestión de Vulnerabilidades no debe verse como un proceso aislado con los existentes en la organización y por tanto debe contar con un interfaz que permita la integración con otros sistemas ya que en las organizaciones generalmente para poder realizar una acción que mitiguen una vulnerabilidad suele ser necesario abrir una solicitud en el sistema de ticketing de la organización. La generación y gestión de estas solicitudes suele consumir mucho tiempo y al ser creadas en un sistema orientado a la gestión de actividades de TI, sin un foco en seguridad, es difícil para la organización conocer si las solicitudes gestionadas corresponden a aquellas que en términos de negocio son las que tienen una mayor urgencia.

Con una integración bidireccional con el sistema de ticketing, se logra aumentar la eficiencia puesto que se dispondría de un cuadro de mando especializado en seguridad que permitiría gestionar la mitigación de las vulnerabilidades y conocer en todo momento si estas han sido mitigadas.

El servicio de Gestión de Vulnerabilidades proporciona una API XML que permite este tipo de integraciones con sistemas externos permitiendo una industrialización de este proceso.

Gestión de vulnerabilidades con pentesting persistente, una visión global (I)

Victor Mundilla
victor.mundilla@11paths.com

No hay comentarios:

Publicar un comentario