Recopila registros de eventos de amenazas de Jamf
En este documento, se describe cómo puedes recopilar registros de eventos de amenazas de Jamf configurando un feed de Google Security Operations y cómo los campos de registro se asignan a los campos del modelo de datos unificado (UDM) de Google SecOps. En este documento, también se indica la versión de Jamf Threat Events compatible.
Para obtener más información, consulta Transferencia de datos a Google SecOps.
Una implementación típica consta de eventos de amenazas de Jamf y el feed de Google SecOps configurado para enviar registros a Google SecOps. Cada implementación de cliente puede diferir y ser más compleja.
La implementación contiene los siguientes componentes:
Jamf Protect: La plataforma de Jamf Protect, configurada con Jamf Security Cloud, en la que recopilas registros de amenazas de red.
Feed de Google SecOps: Es el feed de Google SecOps que recupera registros de Jamf Protect y escribe registros en Google SecOps.
Google SecOps: Google SecOps retiene y analiza los registros de Jamf Protect.
Una etiqueta de transferencia identifica el analizador que normaliza los datos de registro sin procesar al formato estructurado del UDM. La información de este documento se aplica al analizador
con la etiqueta de transferencia JAMF_THREAT_EVENTS
.
Antes de comenzar
Asegúrate de cumplir con los siguientes requisitos previos:
- Una configuración de telemetría de Jamf Protect
- Jamf Protect versión 4.0.0 o posterior
- Todos los sistemas de la arquitectura de implementación se configuran con la zona horaria UTC.
Cómo configurar feeds
Existen dos puntos de entrada diferentes para configurar feeds en la plataforma de Google SecOps:
- Configuración de SIEM > Feeds
- Centro de contenido > Paquetes de contenido
Configura feeds desde Configuración de SIEM > Feeds.
Puedes usar Amazon S3 o un webhook para configurar un feed de transferencia en Google SecOps, pero te recomendamos que uses Amazon S3.
Configura un feed de transferencia con Amazon S3
Para configurar varios feeds para diferentes tipos de registros dentro de esta familia de productos, consulta Cómo configurar feeds por producto.
Para configurar un solo feed, sigue estos pasos:
- Ve a Configuración de SIEM > Feeds.
- Haz clic en Agregar feed nuevo.
- En la página siguiente, haz clic en Configurar un solo feed.
- En el campo Nombre del feed, ingresa un nombre para el feed, por ejemplo, Registros de eventos de amenazas de Jamf.
- Selecciona Amazon S3 como el Tipo de fuente.
- Para crear un feed para los eventos de amenazas de Jamf, selecciona Eventos de amenazas de Jamf Protect como Tipo de registro.
- Haz clic en Siguiente.
- Guarda el feed y, luego, haz clic en Enviar.
- Copia el ID del feed del nombre del feed para usarlo en Eventos de amenazas de Jamf.
Configura un feed de transferencia con un webhook
Solo para clientes unificados de Google Security Operations:
Para configurar varios feeds para diferentes tipos de registros dentro de esta familia de productos, consulta Cómo configurar varios feeds.
Para todos los clientes:
Para configurar un solo feed, sigue estos pasos:
- Ve a Configuración de SIEM > Feeds.
- Haz clic en Agregar feed nuevo.
- En la página siguiente, haz clic en Configurar un solo feed. Omite este paso si usas la plataforma independiente de SIEM de Google SecOps.
- En el campo Nombre del feed, ingresa un nombre para el feed, por ejemplo, Registros de eventos de amenazas de Jamf.
- En la lista Tipo de fuente, selecciona Webhook.
- Para crear un feed para los eventos de amenazas de Jamf, selecciona Eventos de amenazas de Jamf Protect como Tipo de registro.
- Haz clic en Siguiente.
- Opcional: Especifica valores para los siguientes parámetros de entrada:
- Delimitador de división: Es el delimitador que se usa para separar las líneas de registro, como
\n
. - Espacio de nombres del recurso: Es el espacio de nombres del recurso.
- Etiquetas de transferencia: Es la etiqueta que se aplicará a los eventos de este feed.
- Delimitador de división: Es el delimitador que se usa para separar las líneas de registro, como
- Haz clic en Siguiente.
- Revisa la configuración de tu nuevo feed en la pantalla Finalizar y, luego, haz clic en Enviar.
- Haz clic en Generate Secret Key para generar una clave secreta que autentique este feed.
- Copia y almacena la clave secreta, ya que no podrás volver a ver este secreto. Puedes volver a generar una clave secreta nueva, pero la regeneración de la clave secreta hace que la clave secreta anterior quede obsoleta.
- En la pestaña Detalles, copia la URL del extremo del feed del campo Información del extremo. Debes especificar esta URL de extremo en la aplicación de eventos de amenazas de Jamf.
- Haz clic en Listo.
- Especifica la URL del extremo en Eventos de amenazas de Jamf.
Cómo configurar feeds desde el Content Hub
Especifica valores para los siguientes campos:
- Región: Es la región donde se encuentra el bucket de Amazon S3.
- URI de S3: Es el URI del bucket.
s3://your-log-bucket-name/
- Reemplaza
your-log-bucket-name
por el nombre real de tu bucket de S3.
- Reemplaza
- URI es un: Selecciona Directorio o Directorio que incluye subdirectorios, según la estructura de tu bucket.
- Opciones de eliminación de fuentes: Selecciona la opción de eliminación según tus preferencias de transferencia.
ID de clave de acceso: Es la clave de acceso del usuario con permisos para leer del bucket de S3.
Clave de acceso secreta: Es la clave secreta del usuario con permisos para leer del bucket de S3.
Opciones avanzadas
- Nombre del feed: Es un valor prepropagado que identifica el feed.
- Tipo de fuente: Es el método que se usa para recopilar registros en Google SecOps.
- Espacio de nombres del recurso: Es el espacio de nombres asociado con el feed.
- Etiquetas de transferencia: Son las etiquetas que se aplican a todos los eventos de este feed.
Crea una clave de API para un feed de webhook
Ve a Google Cloud console > Credentials.
Haz clic en Crear credenciales y selecciona Clave de API.
Restringe el acceso de la clave de API a la API de Google Security Operations.
Configura Jamf Security Cloud para un feed de webhook
- En la aplicación de Jamf Security Cloud, ve a Integraciones > Flujo de datos.
- Haz clic en New Configuration.
- Selecciona Eventos de amenazas > HTTP genérico > Continuar.
- En la sección Configuración de conexión HTTP, selecciona https como el protocolo predeterminado.
- Ingresa el nombre de host del servidor en el campo Nombre de host o IP del servidor, como
us-chronicle.googleapis.com
. - Ingresa el puerto del servidor en el campo Puerto, como
443
. - Ingresa tu extremo web en el campo Extremo. (Este es el campo Información del extremo que copiaste de la configuración del feed de webhook. Ya está en el formato requerido).
En la sección Encabezados adicionales, ingresa la siguiente configuración, en la que cada encabezado es un encabezado personalizado que distingue mayúsculas de minúsculas y que ingresas de forma manual:
- Nombre del encabezado: X-goog-api-key y haz clic en Crear opción X-goog-api-key.
- Inserción de valor de encabezado: API_KEY (la clave de API para autenticarse en Google SecOps)
- Nombre del encabezado: X-Webhook-Access-Key y haz clic en Crear opción X-Webhook-Access-Key.
- Inserción de valor de encabezado: SECRET (la clave secreta que generaste para autenticar el feed)
Haz clic en Probar configuración.
Si se realiza correctamente, haz clic en Crear configuración.
Para obtener más información sobre los feeds de Google SecOps, consulta Crea y administra feeds con la IU de administración de feeds. Para obtener información sobre los requisitos de cada tipo de feed, consulta la API de configuración de feeds.
Formatos de registro de eventos de amenazas de Jamf admitidos
El analizador de eventos de amenazas de Jamf admite registros en formato JSON.
Registros de muestra de eventos de amenazas de Jamf admitidos
JSON
{ "event": { "metadata": { "schemaVersion": "1.0", "vendor": "Jamf", "product": "Threat Events Stream" }, "timestamp": "2023-01-11T13:10:40.410Z", "alertId": "debd2e4b-9da1-454e-952d-18a00b42ffce", "account": { "customerId": "dummycustomerid", "parentId": "dummyparentid", "name": "Jamf Internal Test Accounts (root) - Jamf - CE Security Team" }, "device": { "deviceId": "e9671102-5ccf-4e66-a6b3-b117ba257d5f", "os": "UNKNOWN 13.2.1", "deviceName": "Mac (13.2.1)", "userDeviceName": "darrow", "externalId": "0c221ae4-50af-5e39-8275-4424cc87ab8e" }, "eventType": { "id": "303", "description": "Risky Host/Domain - Malware", "name": "ACCESS_BAD_HOST" }, "app": { "id": "ru.freeapps.calc", "name": "MyFreeCalculator", "version": "10.4", "sha1": "c3499c2729730a7f807efb8676a92dcb6f8a3f8f", "sha256": "50d858e0985ecc7f60418aaf0cc5ab587f42c2570a884095a9e8ccacd0f6545" }, "destination": { "name": "dummy.domain.org", "ip": "0000:1111:2222:3333:4444:5", "port": "80" }, "source": { "ip": "198.51.100.1", "port": "243" }, "location": "GB", "accessPoint": null, "accessPointBssid": "23:8f:cf:00:9d:23", "severity": 8, "user": { "email": "test.user@domain.io", "name": "Test User" }, "eventUrl": "dummy.domain.com", "action": "Blocked" } }
Referencia de la asignación de campos
En la siguiente tabla, se explica cómo el analizador de Google SecOps asigna los campos de registro de eventos de amenazas de Jamf a los campos del modelo de datos unificado (UDM) de Google SecOps.
Referencia de asignación de campos: identificador de evento a tipo de evento
En la siguiente tabla, se enumeran los tipos de registro deJAMF_THREAT_EVENTS
y sus correspondientes tipos de eventos de la AUA.
Event Identifier | Event Type | Security Category |
---|---|---|
MALICIOUS_APP_IN_INVENTORY |
SCAN_UNCATEGORIZED |
SOFTWARE_MALICIOUS, SOFTWARE_PUA |
ADWARE_APP_IN_INVENTORY |
SCAN_UNCATEGORIZED |
SOFTWARE_MALICIOUS, SOFTWARE_PUA |
BANKER_MALWARE_APP_IN_INVENTORY |
SCAN_UNCATEGORIZED |
SOFTWARE_MALICIOUS, SOFTWARE_PUA |
POTENTIALLY_UNWANTED_APP_IN_INVENTORY |
SCAN_UNCATEGORIZED |
SOFTWARE_MALICIOUS, SOFTWARE_PUA |
RANSOMWARE_APP_IN_INVENTORY |
SCAN_UNCATEGORIZED |
SOFTWARE_MALICIOUS, SOFTWARE_PUA |
ROOTING_MALWARE_APP_IN_INVENTORY |
SCAN_UNCATEGORIZED |
SOFTWARE_MALICIOUS, SOFTWARE_PUA |
SMS_MALWARE_APP_IN_INVENTORY |
SCAN_UNCATEGORIZED |
SOFTWARE_MALICIOUS, SOFTWARE_PUA |
SPYWARE_APP_IN_INVENTORY |
SCAN_UNCATEGORIZED |
SOFTWARE_MALICIOUS, SOFTWARE_PUA |
TROJAN_MALWARE_APP_IN_INVENTORY |
SCAN_UNCATEGORIZED |
SOFTWARE_MALICIOUS, SOFTWARE_PUA |
THIRD_PARTY_APP_STORES_IN_INVENTORY |
SCAN_UNCATEGORIZED |
SOFTWARE_MALICIOUS, SOFTWARE_PUA |
ADMIN_APP_IN_INVENTORY |
SCAN_UNCATEGORIZED |
SOFTWARE_MALICIOUS, SOFTWARE_PUA |
SIDE_LOADED_APP_IN_INVENTORY |
SCAN_UNCATEGORIZED |
SOFTWARE_MALICIOUS, SOFTWARE_PUA |
VULNERABLE_APP_IN_INVENTORY |
SCAN_UNCATEGORIZED |
SOFTWARE_MALICIOUS, SOFTWARE_PUA |
SSL_TRUST_COMPROMISE |
SCAN_NETWORK |
NETWORK_SUSPICIOUS |
JAILBREAK |
SCAN_UNCATEGORIZED |
EXPLOIT |
IOS_PROFILE |
SCAN_UNCATEGORIZED |
|
OUTDATED_OS |
SCAN_VULN_HOST |
SOFTWARE_MALICIOUS |
OUTDATED_OS_LOW |
SCAN_VULN_HOST |
SOFTWARE_MALICIOUS |
OUT_OF_DATE_OS |
SCAN_UNCATEGORIZED |
|
LOCK_SCREEN_DISABLED |
SCAN_UNCATEGORIZED |
|
STORAGE_ENCRYPTION_DISABLED |
SCAN_UNCATEGORIZED |
|
UNKNOWN_SOURCES_ENABLED |
SCAN_UNCATEGORIZED |
|
DEVELOPER_MODE_ENABLED |
SCAN_UNCATEGORIZED |
|
USB_DEBUGGING_ENABLED |
SCAN_UNCATEGORIZED |
|
USB_APP_VERIFICATION_DISABLED |
SCAN_UNCATEGORIZED |
|
FIREWALL_DISABLED |
SCAN_UNCATEGORIZED |
POLICY_VIOLATION |
USER_PASSWORD_DISABLED |
SCAN_UNCATEGORIZED |
|
ANTIVIRUS_DISABLED |
SCAN_UNCATEGORIZED |
|
APP_INACTIVITY |
SCAN_UNCATEGORIZED |
|
MISSING_ANDROID_SECURITY_PATCHES |
SCAN_UNCATEGORIZED |
|
ACCESS_SPAM_HOST |
SCAN_HOST |
NETWORK_SUSPICIOUS |
ACCESS_PHISHING_HOST |
SCAN_HOST |
PHISHING |
ACCESS_BAD_HOST |
SCAN_HOST |
NETWORK_MALICIOUS |
RISKY_APP_DOWNLOAD |
SCAN_UNCATEGORIZED |
SOFTWARE_SUSPICIOUS |
ACCESS_CRYPTOJACKING_HOST |
SCAN_HOST |
NETWORK_SUSPICIOUS |
SSL_MITM_TRUSTED_VALID_CERT |
SCAN_NETWORK |
NETWORK_SUSPICIOUS |
SSL_MITM_UNTRUSTED_VALID_CERT |
SCAN_NETWORK |
NETWORK_SUSPICIOUS |
SSL_STRIP_MITM |
SCAN_NETWORK |
NETWORK_MALICIOUS |
SSL_MITM_UNTRUSTED_INVALID_CERT |
SCAN_NETWORK |
NETWORK_MALICIOUS |
SSL_MITM_TRUSTED_INVALID_CERT |
SCAN_NETWORK |
NETWORK_MALICIOUS |
LEAK_CREDIT_CARD |
SCAN_UNCATEGORIZED |
ACL_VIOLATION |
LEAK_PASSWORD |
SCAN_UNCATEGORIZED |
ACL_VIOLATION |
LEAK_EMAIL |
SCAN_UNCATEGORIZED |
ACL_VIOLATION |
LEAK_USERID |
SCAN_UNCATEGORIZED |
ACL_VIOLATION |
LEAK_LOCATION |
SCAN_UNCATEGORIZED |
ACL_VIOLATION |
Referencia de asignación de campos: JAMF_THREAT_EVENTS
En la siguiente tabla, se enumeran los campos de registro del tipo de registroJAMF_THREAT_EVENTS
y sus campos de UDM correspondientes.
Log field | UDM mapping | Logic |
---|---|---|
event.account.parentId |
about.resource_ancestors.product_object_id |
|
event.account.name |
about.resource.name |
|
event.account.customerId |
about.resource.product_object_id |
|
|
is_alert |
The is_alert UDM field is set to TRUE . |
event.timestamp |
metadata.event_timestamp |
|
event.eventType.name |
metadata.product_event_type |
|
event.alertId |
metadata.product_log_id |
|
event.metadata.product |
metadata.product_name |
|
event.metadata.vendor |
metadata.vendor_name |
|
event.source.port |
princiap.port |
|
event.device.deviceName |
principal.asset.assetid |
|
event.location |
principal.asset.location.country_or_region |
|
|
principal.asset.platform_software.platform |
The platform_name is extracted from the event.device.deviceName log field using a Grok pattern.If the platform_name value is equal to Mac , then the principal.asset.platform_software.platform UDM field is set to MAC .
|
event.device.os |
principal.asset.platform_software.platform_version |
|
event.device.deviceId |
principal.asset.product_object_id |
|
event.source.ip |
principal.ip |
|
event.accessPointBssid |
principal.mac |
|
event.user.email |
principal.user.email_addresses |
|
event.user.name |
principal.user.user_display_name |
|
sourceUserName |
principal.user.user_display_name |
|
event.device.externalId |
principal.asset.attribute.labels [event_device_externalId] |
|
event.device.userDeviceName |
principal.asset.attribute.labels [event_device_userDeviceName] |
|
event.accessPoint |
principal.labels [event_accessPoint] |
|
event.action |
security_result.action |
The security_result.action UDM field is set to one of the following values:
|
event.action |
security_result.action_details |
|
event.eventType.name |
security_result.category_details |
|
event.eventType.description |
security_result.description |
|
event.severity |
security_result.severity_details |
|
event.eventType.id |
security_result.threat_id |
|
event.eventType.name |
security_result.threat_name |
|
event.eventUrl |
security_result.url_back_to_product |
|
event.destination.port |
target.port |
|
event.app.name |
target.application |
|
event.app.name |
target.file.full_path |
|
event.app.sha1 |
target.file.sha1 |
|
event.app.sha256 |
target.file.sha256 |
|
event.destination.ip |
target.ip |
|
event.destination.name |
target.url |
|
event.app.version |
target.labels [event_app_version] |
|
event.app.id |
target.labels [event_app_id] |
|
event.metadata.schemaVersion |
about.labels [event_metadata_schemaVersion] |
¿Qué sigue?
¿Necesitas más ayuda? Obtén respuestas de miembros de la comunidad y profesionales de Google SecOps.