En 2019, se descubrieron más de 700 vulnerabilidades en los sistemas operativos de Microsoft. Tan pronto como están en manos de Microsoft, comienzan a planificar, desarrollar y publicar los parches que los arreglan. Además, todos los fabricantes de software de Windows deben conocer todas las vulnerabilidades afectadas en su software de Windows.
Wazuh 3.11 introdujo una nueva capacidad: el Detector de vulnerabilidades para Windows. Utilizando la Base de datos de vulnerabilidad nacional, Wazuh puede detectar vulnerabilidades en los hosts de Windows al observar el software instalado y las actualizaciones de Windows.
En esta publicación, le mostraremos cómo configurarlo y qué vulnerabilidades afectan a un cuadro predeterminado del servidor Windows Vagrant. Utilizaremos el Wazuh OVA.
Empezando
Para este tutorial necesitarás:
- Wazuh manager v3.11.0 o superior.
- Vagabundo.
Una vez que tengamos configurado el administrador de Wazuh y la pila Elastic (puede aprender cómo instalar el administrador de Wazuh y la pila Elastic , o puede descargar toda la pila en formato OVA , que se utilizará en este ejemplo), podemos importarla usando Vmware , VirtualBox u otro proveedor de su elección. Después de importarlo, obtenga acceso a él a través de SSH.
Configuración del detector de vulnerabilidades
El detector de vulnerabilidades funciona del lado del administrador porque almacena el inventario de los agentes conectados. Veamos cómo podemos hacer que funcione. El archivo /var/ossec/etc/ossec.conf
contiene la siguiente sección:
< vulnerability-detector >
< enabled >no</ enabled >
< interval >5m</ interval >
< ignore_time >6h</ ignore_time >
< run_on_start >yes</ run_on_start >
< provider name = "canonical" >
< enabled >no</ enabled >
< os >precise</ os >
< os >trusty</ os >
< os >xenial</ os >
< os >bionic</ os >
< update_interval >1h</ update_interval >
</ provider >
< provider name = "debian" >
< enabled >no</ enabled >
< os >wheezy</ os >
< os >stretch</ os >
< os >jessie</ os >
< os >buster</ os >
< update_interval >1h</ update_interval >
</ provider >
< provider name = "redhat" >
< enabled >no</ enabled >
< update_from_year >2010</ update_from_year >
< update_interval >1h</ update_interval >
</ provider >
< provider name = "nvd" >
< enabled >no</ enabled >
< update_from_year >2010</ update_from_year >
< update_interval >1h</ update_interval >
</ provider >
</ vulnerability-detector >
|
Por defecto, la capacidad del Detector de Vulnerabilidades está deshabilitada. Para activarlo, cambie el enabled
valor de la etiqueta a yes
. La interval
configuración es el tiempo transcurrido entre los escaneos de vulnerabilidad. Este ignore_time
es el tiempo durante el cual las vulnerabilidades que ya han generado una alerta no generarán otra alerta. run_on_start
define si el análisis de vulnerabilidades y las actualizaciones de la base de datos se ejecutan inmediatamente cuando se inicia el servicio.
Después de esas configuraciones principales, se definen los proveedores de vulnerabilidades. En este caso, solo habilitaremos al proveedor de NVD , ya que es necesario para detectar vulnerabilidades de Windows. Sugerimos que solo habilite proveedores que coincidan con el sistema operativo de sus agentes. De esa forma, ahorrará espacio en disco y el tiempo de descarga para recursos innecesarios.
En esta sección del proveedor, cambie el enabled
valor de no
a yes
. La configuración update_from_year
indica el año a partir del cual se descargarán las vulnerabilidades indexadas. Los update_interval
espectáculos de la frecuencia en la que el módulo va a comprobar si hay una nueva versión de la alimentación está disponible, en cuyo caso será actualizado.
Se pueden encontrar más configuraciones en la documentación de Wazuh .
Después de configurar las dos enabled
etiquetas en sí, reinicie el administrador para aplicar la nueva configuración: systemctl restart wazuh-manager
o service wazuh-manager restart
.
Ejecutando la evaluación
Una vez que se haya guardado la nueva configuración del Detector de Vulnerabilidades y se reinicie el servicio del administrador de Wazuh, tendrá acceso al informe de vulnerabilidad para el agente de Windows en la WUI (interfaz de usuario de Wazuh) después de que el escáner complete los siguientes pasos:
- Al inicio, descarga los recursos necesarios de los proveedores, el NVD en este caso.
- Después de la descarga de feeds, el módulo se ejecuta para cada agente cuyo inventario esté disponible.
-
Puede verificar que el Detector de Vulnerabilidad se esté ejecutando correctamente en el
/var/ossec/logs/ossec.log
archivo.
Cuando el administrador de Wazuh actualiza la base de datos NVD, este mensaje debe aparecer en el /var/ossec/logs/ossec.log
archivo:
2020/02/04 11:30:34 wazuh-modulesd:vulnerability-detector: INFO: (5461): Starting National Vulnerability Database database update. |
La base de datos actualizada estará lista cuando aparezca el siguiente mensaje:
2020/02/04 11:45:47 wazuh-modulesd:vulnerability-detector: INFO: (5494): The update of the National Vulnerability Database feed finished successfully. |
Una vez que se descargan los feeds, el escaneo comienza automáticamente. Se finaliza cuando aparece el siguiente registro:
2020/04/16 00:21:52 wazuh-modulesd:vulnerability-detector: INFO: (5453): Vulnerability scanning finished. |
Cuando se completa el escaneo, estamos listos para verificar las vulnerabilidades detectadas en la WUI.
Buscando en los datos de inventario de puntos finales
Con la interfaz de usuario de Wazuh, puede ver todas las aplicaciones, la configuración de red, los puertos abiertos y los procesos que se ejecutan en sus sistemas monitoreados. Para eso, haga clic en Agents
en la barra superior, seleccione el agente de Windows de la lista y haga clic en Inventory data.
Procesos, programas instalados, actualizaciones de Windows instaladas, configuraciones de red, puertos e interfaces se pueden verificar en esta sección.
Explorando las vulnerabilidades pendientes
Una vez en la WUI, podemos usar la siguiente sección: Vulnerabilidades. Para eso, haga clic en Agents
en la barra superior, seleccione el agente de Windows de la lista, haga clic en Vulnerabilities
y verá el panel de vulnerabilidad del agente de Windows.
Las alertas de vulnerabilidad se pueden filtrar por gravedad, filtremos por las críticas. Haga clic en Add filter
, seleccione Campo data.vulnerability.severity
. Operador is
y valor Critical
.
La interfaz de usuario de Wazuh le mostrará todas las vulnerabilidades detectadas. En este ejemplo, queremos analizar uno de los críticos: CVE-2016-7182 . Debería poder verlo haciendo clic en el Discover
botón. Luego, haga clic en Add filter
y seleccione Campo data.vulnerability.cve
. Operador is
y valor CVE-2016-7182
. Este es el contenido de la alerta de vulnerabilidad:
La vulnerabilidad: CVE-2016-7182 describe cómo el componente de gráficos de un conjunto de productos de Microsoft permite a los atacantes ejecutar código arbitrario a través de una fuente True Type diseñada. Esta vulnerabilidad se cataloga como Crítica y el campo data.vulnerability.package.condition describe por qué esta vulnerabilidad no se corrige: el parche 3185331 no está instalado . Una vez que el usuario descarga e instala el parche o uno más reciente que lo contenga, el sistema operativo será parcheado por la vulnerabilidad detectada.
En resumen, los usuarios pueden escanear sus puntos finales de Windows en busca de vulnerabilidades. Si esta vulnerabilidad tiene solución inmediata, la alerta de Wazuh indicará qué parche corrige la vulnerabilidad.