Configuración de una integración con ServiceNow
Es posible enviar datos de Cyberwatch a la solución ServiceNow utilizando las integraciones.
Cyberwatch permite configurar Web Hook desde la mayoría de sus páginas, creando así un botón para interactuar con un recurso remoto mediante HTTPS.
Dado que la API de ServiceNow es completamente abierta, las posibilidades de interconexión entre ambas soluciones son amplias. La integración de Cyberwatch dentro de un flujo de trabajo de ServiceNow es por tanto transparente y permite beneficiarse de nuestras funcionalidades dentro del ecosistema ServiceNow.
Concretamente, esto permite, por ejemplo, que un usuario de Cyberwatch abra con un solo clic un ticket de ServiceNow solicitando la actualización de un software para corregir una lista de CVE. En este caso, solo tendrá que elegir el parche propuesto por Cyberwatch y hacer clic en el botón desencadenador de la integración.
Automatizar el desencadenamiento de una operación mediante alertas
El desencadenamiento de las integraciones se puede automatizar cuando está asociado a nuestro sistema de alertas. En este caso, el desencadenador de la acción se prueba diariamente y se ejecuta cuando aparece una nueva entidad en una de las páginas de la aplicación.
Esto permite, por ejemplo, programar diariamente la creación de un ticket de ServiceNow si se detectan una o varias nuevas CVE en sus activos. Para ir más allá, el desencadenador de la alerta se puede afinar mediante un filtrado, lo que permitiría, por ejemplo, crear este ticket solo si las CVE detectadas tienen un alto score CVSS.
Guía de implementación de una integración con ServiceNow
Esta sección de la documentación es una guía dedicada a la puesta en marcha de los ejemplos de integraciones mencionados anteriormente.
Si es necesario, la documentación de ServiceNow de la ruta que utilizamos aquí está disponible adjunta
Nuestro primer ejemplo consiste en poder crear desde Cyberwatch un ticket de incidente de ServiceNow solicitando la actualización de un software, en función de las CVE que le están asociadas.
Configuración de una integración que permite la creación manual de un ticket de ServiceNow
La creación de esta integración se realiza desde la página Administración > Integraciones, rellenando:
Personalizadocomo modelo de integraciónIntegración HTTPcomo protocolo de integraciónServiceNow - Solicitud de parchecomo nombreDetalles de un activo - pestana gestion de parchescomo ubicación del desencadenadorhttps://instance.service-now.com/api/now/table/incidentcomo URL de la petición, sustituyendo el valorinstance.service-now.compor la URL de acceso a su instancia de ServiceNowUtilizar un certificado autofirmado para la peticiónyUtilizar la configuración proxy para la peticiónsi es necesarioPOSTcomo método HTTP de la peticiónEl contenido siguiente en el campo
Encabezado de la petición, sustituyendo<basic_chain>por sus credenciales en formatousername:passwordcodificadas en base64:
{
"Content-Type": "application/json",
"Authorization": "Basic <basic_chain>",
"Accept": "application/json"
}
- El
cuerpo de la peticiónsiguiente, sustituyendo el valor de la propiedadcaller_idpor el del creador del incidente:
{% capture cve_data %}
{% assign item_limit = 10 %}
{% assign sorted_cves = cves | sort: 'score' | reverse %}
{% for cve in sorted_cves limit: item_limit %}
- {{ cve.code }} (CVSS {{ cve.score }} / EPSS {{ cve.epss | times: 100 | round: 1 | append: " %" | escape }})#
{% endfor %}
{% endcapture %}
{
"short_description":"Nueva solicitud de actualización para el activo {{ asset.name }}",
"caller_id":"6816f79cc0a8016401c5a33be04be441",
"comments":"Hola,\n\nEl activo {{ asset.name }} está afectado por las siguientes vulnerabilidades:\n{{ cve_data | strip_newlines | split: '#' | join: '\n' }}.\n\nPor favor, proceda a actualizar las tecnologías: \n{% for item in technologies %}- {{ item.product }} a {% if item.target_version_string != '' %}la versión {{ item.target_version_string }} {% else %}la última versión{% endif %}\n{% endfor %}",
"urgency":"1",
"impact":"1"
}
Para ir más allá, a continuación retomamos la posibilidad de automatizar el desencadenamiento de un Web-Hook de Cyberwatch asociándolo a una alerta. En este caso, se crea diariamente un ticket de incidente con la lista de las nuevas CVE prioritarias detectadas en sus activos.
Configuración de una integración de ServiceNow desencadenada por una alerta
La creación de esta integración se realiza desde la página Administración > Integraciones, rellenando:
Personalizadocomo modelo de integraciónIntegración HTTPcomo protocolo de integraciónServiceNow - Nuevas CVE prioritariascomo nombreNingunocomo ubicación del desencadenadorhttps://instance.service-now.com/api/now/table/incidentcomo URL de la petición, sustituyendo el valorinstance.service-now.compor la URL de acceso a su instancia de ServiceNowUtilizar un certificado autofirmado para la peticiónyUtilizar la configuración proxy para la peticiónsi es necesarioPOSTcomo método HTTP de la peticiónEl contenido siguiente en el campo
Encabezado de la petición, sustituyendo<basic_chain>por sus credenciales en formatousername:passwordcodificadas en base64:
{
"Content-Type": "application/json",
"Authorization": "Basic <basic_chain>",
"Accept": "application/json"
}
- El
cuerpo de la peticiónsiguiente, sustituyendo el valor de la propiedadcaller_idpor el del creador del incidente:
{% capture cve_data %}
{% assign item_limit = 10 %}
{% assign sorted_cves = cves | sort: 'score' | reverse %}
{% for cve in sorted_cves limit: item_limit %}
- {{ cve.code }} (CVSS {{ cve.score }} / EPSS {{ cve.epss | times: 100 | round: 1 | append: " %" | escape }})#
{% endfor %}
{% endcapture %}
{
"short_description":"Nuevas vulnerabilidades prioritarias",
"caller_id":"6816f79cc0a8016401c5a33be04be441",
"comments":"Hola,\n\nSe han detectado nuevas vulnerabilidades prioritarias en sus activos y requieren su atención:\n{{ cve_data | strip_newlines | split: '#' | join: '\n' }}",
"urgency":"1",
"impact":"1"
}
Luego, al crear la alerta asociada, rellene:
Nombre, con por ejemplo el valorAlerta ServiceNow - Nuevas CVE prioritariasUbicación, eligiendoenciclopedia de vulnerabilidadesFiltro, seleccionando el filtroEstado: Vulnerabilidades presentesyEstado: Vulnerabilidades prioritariasIntegración, eligiendoServiceNow - Nuevas CVE prioritarias