Configuración de una integración con ServiceNow
Es posible enviar datos de Cyberwatch a la solución ServiceNow usando las Integraciones.
Cyberwatch propone configurar Web Hook desde la mayoria de sus paginas; se crea un botón para interactuar con un recurso remoto en HTTPS.
Dado que la API de ServiceNow esta completamente abierta, las posibilidades de interconexion entre ambas soluciones son amplias. La integración de Cyberwatch dentro de un workflow ServiceNow es, por tanto, transparente y permite beneficiarse de nuestras funcionalidades dentro del ecosistema ServiceNow.
En la practica, esto permite, por ejemplo, que un usuario de Cyberwatch abra con un solo clic un ticket ServiceNow solicitando la actualización de un software para corregir una lista de CVE. En ese caso, solo debe 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 integraciones se puede automatizar cuando se asocia 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 alguna de las paginas de la aplicación.
Esto permite, por ejemplo, planificar diariamente la creación de un ticket ServiceNow si se detectan una o varias nuevas CVE en sus activos. Para ir mas lejos, el desencadenador de la alerta puede afinarse mediante un filtrado, lo que permitiria por ejemplo crear este ticket solo si las CVE detectadas tienen un score CVSS alto.
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 implementación de los ejemplos de integraciones citados anteriormente.
Si es necesario, la documentación ServiceNow de la ruta que usamos aquí esta disponible aquí
Nuestro primer ejemplo es poder crear desde Cyberwatch un ticket de incidente ServiceNow que solicite la actualización de un software, según las CVE asociadas.
Configuración de una integración que permite la creación manual de un ticket ServiceNow
La creación de esta integración se realiza desde la pagina Administración > Integraciones, completando:
Personalizadocomo modelo de integraciónIntegracion 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 solicitud, reemplazando el valorinstance.service-now.compor la URL de acceso a su instancia ServiceNowUsar un certificado autofirmado para la solicitudyUsar la configuracion proxy para la solicitudsi es necesarioPOSTcomo método HTTP de la solicitudEl contenido siguiente en el campo
Encabezado de la solicitud, reemplazando<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 solicitudsiguiente, reemplazando 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 actualizacion para el activo {{ asset.name }}",
"caller_id":"6816f79cc0a8016401c5a33be04be441",
"comments":"Hola,\n\nEl activo {{ asset.name }} esta afectado por las siguientes vulnerabilidades:\n{{ cve_data | strip_newlines | split: '#' | join: '\n' }}.\n\nGracias por proceder a la actualizacion de las tecnologias: \n{% for item in technologies %}- {{ item.product }} hacia {% if item.target_version_string != '' %}la version {{ item.target_version_string }} {% else %}la ultima version{% endif %}\n{% endfor %}",
"urgency":"1",
"impact":"1"
}
Para ir mas lejos, retomamos a continuación la posibilidad de automatizar el desencadenamiento de un Web-Hook Cyberwatch asociandolo a una alerta. En este caso, se crea diariamente un ticket de incidente con la lista de nuevas CVE prioritarias detectadas en sus activos.
Configuración de una integración ServiceNow activada por una alerta
La creación de esta integración se realiza desde la pagina Administración > Integraciones, completando:
Personalizadocomo modelo de integraciónIntegracion HTTPcomo protocolo de integraciónServiceNow - Nuevas CVE prioritariascomo nombreNingunocomo ubicación del desencadenadorhttps://instance.service-now.com/api/now/table/incidentcomo URL de la solicitud, reemplazando el valorinstance.service-now.compor la URL de acceso a su instancia ServiceNowUsar un certificado autofirmado para la solicitudyUsar la configuracion proxy para la solicitudsi es necesarioPOSTcomo método HTTP de la solicitudEl contenido siguiente en el campo
Encabezado de la solicitud, reemplazando<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 solicitudsiguiente, reemplazando 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 atencion:\n{{ cve_data | strip_newlines | split: '#' | join: '\n' }}",
"urgency":"1",
"impact":"1"
}
Luego completar durante la creación de la alerta asociada:
Nombre, con por ejemplo el valorAlerta ServiceNow - Nuevas CVE prioritariasUbicacion, eligiendoEnciclopedia de vulnerabilidadesFiltro, seleccionando el filtroEstado: Vulnerabilidades presentesyEstado: Vulnerabilidades prioritariasIntegracion, eligiendoServiceNow - Nuevas CVE prioritarias