Coletar registros de eventos de ameaça do Jamf
Este documento descreve como coletar registros de eventos de ameaça do Jamf configurando um feed do Google Security Operations e como os campos de registro são mapeados para os campos do modelo de dados unificado (UDM, na sigla em inglês) do Google SecOps. Este documento também lista a versão do Jamf Threat Events com suporte.
Para mais informações, consulte Ingestão de dados no Google SecOps.
Uma implantação típica consiste em eventos de ameaça Jamf e o feed do Google SecOps configurado para enviar registros ao Google SecOps. Cada implantação do cliente pode ser diferente e mais complexa.
A implantação contém os seguintes componentes:
Jamf Protect: a plataforma Jamf Protect, configurada com o Jamf Security Cloud, em que você coleta registros de ameaças de rede.
Feed do Google SecOps: o feed do Google SecOps que busca registros do Jamf Protect e grava registros no Google SecOps.
Google SecOps: o Google SecOps retém e analisa os registros do Jamf Protect.
Um rótulo de transferência identifica o analisador que normaliza os dados de registro brutos
no formato UDM estruturado. As informações neste documento se aplicam ao analisador
com o rótulo de transferência JAMF_THREAT_EVENTS
.
Antes de começar
Verifique se você tem os seguintes pré-requisitos:
- Uma configuração da telemetria do Jamf Protect
- Jamf Protect versão 4.0.0 ou mais recente
- Todos os sistemas na arquitetura de implantação são configurados com o fuso horário UTC.
Configurar feeds
Há dois pontos de entrada diferentes para configurar feeds na plataforma Google SecOps:
- Configurações do SIEM > Feeds
- Hub de conteúdo > Pacotes de conteúdo
Configurar feeds em Configurações do SIEM > Feeds
Você pode usar o Amazon S3 ou um webhook para configurar um feed de transferência no Google SecOps, mas recomendamos o Amazon S3.
Configurar um feed de ingestão usando o Amazon S3
Para configurar vários feeds para diferentes tipos de registro nessa família de produtos, consulte Configurar feeds por produto.
Para configurar um único feed, siga estas etapas:
- Acesse Configurações do SIEM > Feeds.
- Clique em Adicionar novo feed.
- Na próxima página, clique em Configurar um único feed.
- No campo Nome do feed, insira um nome para o feed. Por exemplo, Logs de eventos de ameaça do Jamf.
- Selecione Amazon S3 como o Tipo de origem.
- Para criar um feed para eventos de ameaça do Jamf, selecione Eventos de ameaça do Jamf Protect como Tipo de registro.
- Clique em Próxima.
- Salve o feed e envie.
- Copie o ID do feed do nome do feed para usar no Jamf Threat Events.
Configurar um feed de transferência usando um webhook
Somente para clientes unificados do Google Security Operations:
Para configurar vários feeds para diferentes tipos de registro nessa família de produtos, consulte Configurar vários feeds.
Para todos os clientes:
Para configurar um único feed, siga estas etapas:
- Acesse Configurações do SIEM > Feeds.
- Clique em Adicionar novo feed.
- Na próxima página, clique em Configurar um único feed. Pule esta etapa se você estiver usando a plataforma SIEM autônoma do Google SecOps.
- No campo Nome do feed, insira um nome para o feed. Por exemplo, Logs de eventos de ameaça do Jamf.
- Na lista Tipo de origem, selecione Webhook.
- Para criar um feed para eventos de ameaça do Jamf, selecione Eventos de ameaça do Jamf Protect como Tipo de registro.
- Clique em Próxima.
- Opcional: especifique valores para os seguintes parâmetros de entrada:
- Delimitador de divisão: o delimitador usado para separar linhas de registro, como
\n
. - Namespace do recurso: o namespace do recurso.
- Rótulos de ingestão: o rótulo a ser aplicado aos eventos desse feed.
- Delimitador de divisão: o delimitador usado para separar linhas de registro, como
- Clique em Próxima.
- Revise a configuração do novo feed na tela Finalizar e clique em Enviar.
- Clique em Gerar chave secreta para gerar uma chave secreta para autenticar esse feed.
- Copie e armazene a chave secreta, porque não será possível acessá-la novamente. Você pode gerar uma nova chave secreta novamente, mas a regeneração da chave secreta torna a chave secreta anterior obsoleta.
- Na guia Detalhes, copie o URL do endpoint do feed no campo Informações do endpoint. É necessário especificar esse URL de endpoint no aplicativo Jamf Threat Events.
- Clique em Concluído.
- Especifique o URL do endpoint nos eventos de ameaça do Jamf.
Configurar feeds na Central de conteúdo
Especifique valores para os seguintes campos:
- Região: a região em que o bucket do Amazon S3 está localizado.
- URI do S3: o URI do bucket.
s3://your-log-bucket-name/
- Substitua
your-log-bucket-name
pelo nome real do seu bucket do S3.
- Substitua
- O URI é: selecione Diretório ou Diretório que inclui subdiretórios, dependendo da estrutura do bucket.
- Opções de exclusão da origem: selecione a opção de exclusão de acordo com suas preferências de transferência.
ID da chave de acesso: a chave de acesso do usuário com permissões de leitura no bucket do S3.
Chave de acesso secreta: a chave secreta do usuário com permissões de leitura do bucket do S3.
Opções avançadas
- Nome do feed: um valor preenchido automaticamente que identifica o feed.
- Tipo de origem: método usado para coletar registros no Google SecOps.
- Namespace do recurso: o namespace associado ao feed.
- Rótulos de transferência: rótulos aplicados a todos os eventos desse feed.
Criar uma chave de API para um feed de webhook
Acesse Google Cloud console > Credenciais.
Clique em Criar credenciais e, em seguida, selecione Chave de API.
Restrinja o acesso da chave de API à API Google Security Operations.
Configurar o Jamf Security Cloud para um feed de webhook
- No aplicativo Jamf Security Cloud, acesse Integrações > Fluxos de dados.
- Clique em Nova configuração.
- Selecione Threat Events > Generic HTTP > Continue.
- Na seção Configuração de conexão HTTP, selecione https como o protocolo padrão.
- Insira o nome do host do servidor no campo Server Hostname/IP, como
us-chronicle.googleapis.com
. - Insira a porta do servidor no campo Porta, como
443
. - Insira o endpoint da Web no campo Endpoint. Esse é o campo Informações do endpoint que você copiou da configuração do feed do webhook. Ele já está no formato necessário.)
Na seção Cabeçalhos adicionais, insira as seguintes configurações, em que cada cabeçalho é um cabeçalho personalizado, que diferencia maiúsculas de minúsculas, e que você insere manualmente:
- Nome do cabeçalho: X-goog-api-key e clique em Criar opção X-goog-api-key
- Inserção de valor do cabeçalho: API_KEY (a chave de API para autenticação no Google SecOps).
- Nome do cabeçalho: X-Webhook-Access-Key e clique em Criar opção X-Webhook-Access-Key
- Inserção de valor do cabeçalho: SECRET (a chave secreta gerada para autenticar o feed).
Clique em Configuração de teste.
Se for bem-sucedido, clique em Criar configuração.
Para mais informações sobre os feeds do Google SecOps, consulte Criar e gerenciar feeds usando a interface de gerenciamento de feeds. Para informações sobre os requisitos de cada tipo de feed, consulte a API de configuração de feed.
Formatos de registro de eventos de ameaça do Jamf aceitos
O analisador de eventos de ameaça do Jamf oferece suporte a registros no formato JSON.
Exemplos de registros de eventos de ameaça Jamf com suporte
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" } }
Referência do mapeamento de campo
A tabela a seguir explica como o analisador do Google SecOps mapeia os campos de registro de eventos de ameaça do Jamf para os campos do modelo de dados unificado (UDM, na sigla em inglês) do Google SecOps.
Referência de mapeamento de campo: identificador de evento para tipo de evento
A tabela a seguir lista os tipos de registroJAMF_THREAT_EVENTS
e os tipos de evento do UDM correspondentes.
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 |
Referência de mapeamento de campo: JAMF_THREAT_EVENTS
A tabela a seguir lista os campos de registro do tipoJAMF_THREAT_EVENTS
e os campos correspondentes do UDM.
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] |
A seguir
Precisa de mais ajuda? Receba respostas de membros da comunidade e profissionais do Google SecOps.