VMware Carbon Black Enterprise EDR
Versão da integração: 6.0
Casos de uso de produtos
- Realize ações de investigação: receba dados do CB Enterprise EDR como parte de uma análise de alerta nas Operações de segurança do Google.
- Realize ações de configuração: configure feeds/listas de observação do CB Enterprise EDR no Google SecOps.
Permissão de produto
Conceitos necessários para acessar as APIs do Carbon Black Enterprise EDR (ThreatHunter):
- Nome do host do serviço
- Chaves de API
- RBAC
- Chaves da organização
Nomes de host do serviço
Há dois nomes de host do Carbon Black Cloud:
- https://defense-<environment>.conferdeploy.net/
- https://api-<environment>.conferdeploy.net/
Além disso, temos vários ambientes, como (não é uma lista completa):
- prod02
- prod04
- prod05
Para a API Carbon Black Enterprise EDR (ThreatHunter), os seguintes nomes de host serão usados: https://defense-<environment>.conferdeploy.net/
Chaves de API
As APIs e os serviços do Carbon Black Enterprise EDR (ThreatHunter) são autenticados por chaves de API. Os usuários podem conferir as configurações de chaves de API no console do Carbon Black Cloud em Configurações > Chaves de API.
As chaves de API incluem duas partes:
- Chave secreta da API (antes chamada de chave de API).
- ID da API (antes ID do conector).
A autenticação é transmitida para a API pelo cabeçalho HTTP X-Auth-Token.
- Para gerar o cabeçalho adequado, concatene a chave secreta da API com o ID da API com uma barra entre eles.
- Por exemplo, se a chave secreta da API for ABCD e o ID da API for 1234, o cabeçalho HTTP X-Auth-Token correspondente será: X-Auth-Token: ABCD/1234
Todas as solicitações de API precisam ser autenticadas usando uma chave secreta e um ID da API. Solicitações não autenticadas retornam um erro HTTP 401.
Como conseguir uma chave secreta e um ID de API
- Faça login na sua organização do Carbon Black Cloud.
- Acesse Configurações > Chaves de API.
- Clique em Adicionar chave de API.
- Configure nome, nível de acesso etc.
- Receba o par de chave secreta e ID da API.
Isso permite que um administrador da organização defina uma chave de API e tenha acesso à chave secreta e ao ID da API, que são necessários para autenticar a solicitação de API. Além disso, os administradores podem restringir o uso dessa chave de API a um conjunto específico de endereços IP por motivos de segurança.
Níveis de acesso da chave de API
Atualmente, há quatro níveis principais de acesso para chaves de API disponíveis na página "Chaves de API". Cada nível de acesso oferece diferentes níveis de acesso às rotas da API:
Nível de acesso à chave personalizada: oferece autorização personalizável.
- As chaves de API personalizadas são resultado dos nossos esforços de controle de acesso baseado em papéis (RBAC).
- Permite que os clientes apliquem controles de acesso e criem chaves de API com privilégios mínimos.
- As chaves de API personalizadas podem receber papéis de usuário ou níveis de acesso.
Nível de acesso da chave de API: fornece acesso a todas as APIs, exceto a API Notifications e a API Live Response.
Nível de acesso à chave do SIEM: fornece acesso à API Notifications.
Nível de acesso à chave de resposta em tempo real: fornece acesso a todas as APIs disponíveis para (1) acima, além da API Live Response.
Correlação entre o serviço Carbon Black Enterprise EDR (ThreatHunter) e o nível de acesso à API. A API da plataforma está em negrito.
| Categoria de API/serviço | Níveis de acesso permitidos da chave de API |
|---|---|
| PSC /appservices/* | Personalizado (com as permissões adequadas) |
| CB-TH /threathunter/* | API personalizada (com as permissões adequadas) |
| CB-LO /livequery/* | Personalizado (com as permissões adequadas) |
| CB-D /integrationServices/v3/notification/ | SIEM |
| CB-D /integrationServices/* | Resposta da APILive |
Chaves da organização
Além das chaves de API, muitas APIs ou serviços do Carbon Black Cloud exigem uma org_key no caminho da solicitação de API. Isso é para oferecer suporte a clientes que gerenciam várias organizações.
Você encontra a org_key no console do Carbon Black Cloud em "Settings" > "API Keys".
Configurar o acesso à API para a integração do Carbon Black Enterprise EDR (ThreatHunter) com o Google SecOps
Para configurar o acesso à API para a integração do Carbon Black Enterprise EDR (ThreatHunter) com o Google SecOps, siga estas etapas:
- Faça login no console do Carbon Black Cloud, acesse Configurações > Acesso à API.
- Na página "Acesso à API", acesse "Níveis de acesso".
- Na página "Níveis de acesso", clique em + Adicionar nível de acesso.
Na janela aberta, forneça um nome e uma descrição para o novo nível de acesso e selecione permissões como na captura de tela abaixo:

Volte para a guia "Acesso à API".
Clique em + Adicionar chave de API para criar uma.
Na guia aberta, preencha o campo obrigatório e selecione o nível de acesso que você configurou na etapa 4:

Depois de clicar em Salvar, o ID e a chave secreta da API vão aparecer. Salve esses valores, porque eles serão mostrados apenas uma vez.
Depois que o ID e a chave secreta da API forem salvos, o acesso à API no Carbon Black Enterprise EDR (ThreatHunter) será concluído.
Configurar a integração do VMware Carbon Black Enterprise EDR (Threat Hunter) no Google SecOps
Para instruções detalhadas sobre como configurar uma integração no Google SecOps, consulte Configurar integrações.
Parâmetros de integração
Use os seguintes parâmetros para configurar a integração:
| Nome de exibição do parâmetro | Tipo | Valor padrão | É obrigatório | Descrição |
|---|---|---|---|---|
| Nome da instância | String | N/A | Não | Nome da instância em que você pretende configurar a integração. |
| Dexcription | String | N/A | Não | Descrição da instância. |
| Raiz da API | String | N/A | Sim | URL raiz da API do Vmware Carbon Black Cloud. |
| Chave da organização | String | N/A | Sim | Chave da organização do Vmware Carbon Black Cloud. |
| ID da API | String | N/A | Sim | ID da API do VMware Carbon Black Cloud (ID da chave de API personalizada). |
| Chave secreta da API | String | N/A | Sim | Chave secreta da API do VMware Carbon Black Cloud (chave secreta da API personalizada). |
| Executar remotamente | Caixa de seleção | N/A | Não | Marque a caixa para executar a integração configurada remotamente. Depois de marcada, a opção aparece para selecionar o usuário remoto (agente). |
Ações
Ping
Descrição
Teste a conectividade com o VMware Carbon Black Enterprise EDR usando os parâmetros fornecidos na página de configuração da integração na guia "Marketplace" do Google Security Operations.
Parâmetros
N/A
Exemplos de casos de uso de playbook
A ação é usada para testar a conectividade na página de configuração da integração na guia "Marketplace" do Google Security Operations. Ela pode ser executada como uma ação manual, não usada em playbooks.
Executar em
Essa ação não é executada em entidades nem tem parâmetros de entrada obrigatórios.
Resultados da ação
Resultado do script
| Nome do resultado do script | Opções de valor | Exemplo |
|---|---|---|
| is_success | Verdadeiro/Falso | is_success:False |
Painel de casos
| Tipo de resultado | Valor/descrição | Tipo |
|---|---|---|
| Mensagem de saída* | A ação não pode falhar nem interromper a execução de um playbook:
A ação precisa falhar e interromper a execução de um playbook:
|
Geral |
Pesquisa de processos
Descrição
Pesquise informações sobre a atividade do processo no host com o sensor do CB com base nos parâmetros de pesquisa fornecidos. A ação aceita entidades do Host Google SecOps.
Parâmetros
| Nome de exibição do parâmetro | Tipo | Valor padrão | É obrigatório | Descrição |
|---|---|---|---|---|
| Consulta | String | N/A | Não | Consulta a ser executada na pesquisa de processos. Por exemplo, process_name:svchost.exe para pesquisar com base no nome do processo ou process_hash:9520a99e77d6196d0d09833146424113 para pesquisar com base no hash do processo. |
| Período | Número inteiro | 4 | Não | Especifique um período em horas para buscar alertas. |
| Limite de registros | Número inteiro | 20 | Sim | Especifique quantos registros podem ser retornados pela ação. |
| Ordenar por | String | N/A | Não | Especifique um parâmetro para classificar os dados. |
| Ordem de classificação | DDL | ASC | Não | Ordem de classificação. |
Exemplos de casos de uso de playbook
Pesquise eventos causados por processos com base nos parâmetros de pesquisa fornecidos.
Durante a análise de um alerta relacionado a um host específico gerenciado pela plataforma do CB, o usuário quer investigar o host e pesquisar eventos específicos causados por processos em execução com base nos parâmetros de pesquisa fornecidos. Os usuários podem executar essa ação para atividades de busca de ameaças, pesquisando proativamente se há processos/eventos suspeitos no host em questão.
Executar em
Essa ação é executada na entidade "Host".
Resultados da ação
Resultado do script
| Nome do resultado do script | Opções de valor | Exemplo |
|---|---|---|
| is_success | Verdadeiro/Falso | is_success:False |
Resultado do JSON
{
"results": [
{
"alert_id": [
"null/WSD2CQMT"
],
"backend_timestamp": "2020-03-04T21:42:45.080Z",
"device_id": 3078944,
"device_name": "qaam\\manticorewin864",
"device_policy_id": 6525,
"device_timestamp": "2020-03-04T21:39:33.180Z",
"enriched": true,
"enriched_event_type": "CREATE_PROCESS",
"event_description": "The script \"<share><link hash=\"74fcbbb574bfd505cf0680575a1c025f6cead071fce78ee0cc2c7bac7dd24ce9\">C:\\programdata\\wmirepair.bat</link></share>\" invoked the application \"<share><link hash=\"7eadc73f8aa77148ca289d5ce5c2632f3a157d313079583454c0421bb97d5646\">C:\\windows\\syswow64\\regsvr32.exe</link></share>\". ",
"event_id": "ecc6954f5e6011eaa0de89cc027330db",
"event_type": "childproc",
"ingress_time": 1583358118950,
"legacy": true,
"org_id": "7DESJ9GN",
"parent_guid": "7DESJ9GN-002efb20-00001604-00000000-1d5f26cab1067fe",
"parent_pid": 5636,
"process_guid": "7DESJ9GN-002efb20-00000d58-00000000-1d5f26d6615c568",
"process_hash": [
"629ae017d28848b68485bd2aeede9129",
"74fcbbb574bfd505cf0680575a1c025f6cead071fce78ee0cc2c7bac7dd24ce9"
],
"process_name": "c:\\programdata\\wmirepair.bat",
"process_pid": [
3416
],
"process_username": [
"NT AUTHORITY\\SYSTEM"
]
},
...
] }
Painel de casos
| Tipo de resultado | Valor / Descrição | Tipo |
|---|---|---|
| Mensagem de saída* | A ação não pode falhar nem interromper a execução de um playbook:
A ação precisa falhar e interromper a execução de um playbook:
|
Ambos |
| Tabela | Nome da tabela:processar resultados da pesquisa para {entityIdentifier} Colunas:
|
Entidade |
Receber eventos associados ao processo por GUID do processo
Descrição
Receba eventos associados a processos específicos com base nas informações do VMware Carbon Black Enterprise EDR. Essa ação pode gerar resultados mais detalhados sobre a atividade de um processo específico do que a ação "Pesquisa de processos". Para que a ação funcione, o artefato processado pelo Google SecOps transmitido a ela precisa ser um tipo de GUID de processo.
Parâmetros
| Nome de exibição do parâmetro | Tipo | Valor padrão | É obrigatório | Descrição |
|---|---|---|---|---|
| Critérios de pesquisa | String | N/A | Não | Especifique um critério de pesquisa para a solicitação. No momento, apenas os valores de "event_type" são aceitos como critérios de pesquisa, por exemplo, netconn. Vários valores são aceitos como uma string separada por vírgulas. |
| Consulta | Pesquisar | N/A | Sim | Consulta a ser executada na pesquisa de processos.Por exemplo, "netconn_action:ACTION_CONNECTION_CREATE OR netconn_action:ACTION_CONNECTION_ESTABLISHED" |
| Período | Número inteiro | 4 | Não | Especifique um período em horas para buscar alertas. |
| Limite de registros | Número inteiro | 20 | Não | Especifique quantos registros podem ser retornados pela ação. |
| Ordenar por | String | N/A | Não | Especifique um parâmetro para classificar os dados. |
| Ordem de classificação | DDL | ASC | Não | Ordem de classificação |
Exemplos de casos de uso de playbook
Investigue a atividade de um processo específico.
Durante a análise de um alerta relacionado a um host específico gerenciado pela plataforma CB, foi descoberto que o host tem um processo suspeito em execução. O usuário do Google SecOps precisa de uma ação que use a funcionalidade do CB Enterprise EDR para receber eventos associados a um determinado processo do Google SecOps.
Executar em
Essa ação não é executada em entidades.
Resultados da ação
Resultado do script
| Nome do resultado do script | Opções de valor | Exemplo |
|---|---|---|
| is_success | Verdadeiro/Falso | is_success:False |
Resultado do JSON
{
"results": [
{
"backend_timestamp": "2020-04-26T18:38:50.128Z",
"created_timestamp": "2020-05-19T03:56:53.483Z",
"event_guid": "ufzid3pPQs-yrRlPBe8-ww",
"event_hash": "ce6a949bcd3879897c9eac258ec6a091",
"event_timestamp": "2020-04-26T18:34:16.258Z",
"event_type": "netconn",
"legacy": false,
"netconn_action": "ACTION_CONNECTION_CREATE",
"netconn_inbound": true,
"netconn_local_ipv6": "FF020000000000000000000000010003",
"netconn_local_port": 5355,
"netconn_protocol": "PROTO_UDP",
"netconn_remote_ipv6": "FE800000000000000000000000000000",
"netconn_remote_port": 58994,
"process_guid": "7DESJ9GN-002efb20-000003ec-00000000-1d5fb6d63ba535c",
"process_pid": 1004
},
...
]
}
Painel de casos
| Tipo de resultado | Valor / Descrição | Tipo |
|---|---|---|
| Mensagem de saída* | A ação não pode falhar nem interromper a execução de um playbook:
A ação precisa falhar e interromper a execução de um playbook:
|
Geral |
| Tabela | Nome da tabela:eventos encontrados para o processo {process artifact identifier} Colunas:são geradas automaticamente com base nos resultados retornados. |
Entidade |
Enriquecer hash
Descrição
Enriquece a entidade de hash de arquivo do Google SecOps com base nas informações do VMware Carbon Black Enterprise EDR.
Exemplos de casos de uso de playbook
Aprimore a entidade de hash de arquivo do Google SecOps com informações do CB Enterprise EDR.
Durante o processamento de um possível alerta de infecção por malware associado a um host com sensor da plataforma CB, o usuário precisa ter dados de enriquecimento do CB Enterprise EDR (parte da plataforma) sobre hashs de arquivo específicos associados ao alerta em questão por motivos de investigação. Por exemplo, como parte do enriquecimento, o usuário pode receber metadados relacionados ao hash do arquivo, quando esse hash foi detectado pela primeira vez na organização e em qual host.
Executar em
Essa ação é executada na entidade "Filehash" no formato Sha256.
Resultados da ação
Enriquecimento de entidades
| Nome do campo de enriquecimento | Origem (chave JSON) | Lógica: quando aplicar |
|---|---|---|
| CB_ENT_EDR.sha256 | sha256 | sempre |
| CB_ENT_EDR.md5 | md5 | sempre |
| CB_ENT_EDR.architecture | arquitetura | sempre |
| CB_ENT_EDR.available_file_size | available_file_size | sempre |
| CB_ENT_EDR.charset_id | charset_id | sempre |
| CB_ENT_EDR.comments | comentários | Se não for nulo |
| CB_ENT_EDR.company_name | company_name | sempre |
| CB_ENT_EDR.copyright | direitos autorais | sempre |
| CB_ENT_EDR.file_available | file_available | sempre |
| CB_ENT_EDR.file_description | file_description | sempre |
| CB_ENT_EDR.file_size | file_size | sempre |
| CB_ENT_EDR.file_version | file_version | sempre |
| CB_ENT_EDR.internal_name | internal_name | sempre |
| CB_ENT_EDR.lang_id | lang_id | Se não for nulo |
| CB_ENT_EDR.original_filename | original_filename | sempre |
| CB_ENT_EDR.os_type | os_type | sempre |
| CB_ENT_EDR.private_build | private_build | Se não for nulo |
| CB_ENT_EDR.product_description | product_description | Se não for nulo |
| CB_ENT_EDR.product_name | product_name | sempre |
| CB_ENT_EDR.product_version | product_version | sempre |
| CB_ENT_EDR.special_build | special_build | Se não for nulo |
| CB_ENT_EDR.trademark | trademark | Se não for nulo |
| CB_ENT_EDR.found_times | num_devices | sempre |
| CB_ENT_EDR.first_seen_device_timestamp | first_seen_device_timestamp | sempre |
| CB_ENT_EDR.first_seen_device_id | first_seen_device_id | sempre |
| CB_ENT_EDR.first_seen_device_name | first_seen_device_name | sempre |
| CB_ENT_EDR.last_seen_device_timestamp | last_seen_device_timestamp | sempre |
| CB_ENT_EDR.last_seen_device_id | last_seen_device_id | sempre |
| CB_ENT_EDR.last_seen_device_name | last_seen_device_name | sempre |
Resultado do script
| Nome do resultado do script | Opções de valor | Exemplo |
|---|---|---|
| is_success | Verdadeiro/Falso | is_success:False |
Resultado do JSON
{
"sha256": "e24dd278cec867486b68418c9066ffa9bd4f394dac3ba94125d58415f677f0f4",
"architecture": [
"amd64"
],
"available_file_size": 207800,
"charset_id": 1200,
"comments": null,
"company_name": "Example Organization",
"copyright": "Copyright © 2019",
"file_available": true,
"file_description": "OpenJDK Platform binary",
"file_size": 207800,
"file_version": "8.0.2320.9",
"internal_name": "java",
"lang_id": null,
"md5": "afede6f64ed8878bc0cac57e1831a3bc",
"original_filename": "java.exe",
"os_type": "WINDOWS",
"private_build": null,
"product_description": null,
"product_name": "OpenJDK Platform 8",
"product_version": "8.0.2320.9",
"special_build": null,
"trademark": null
}
Painel de casos
| Tipo de resultado | Valor / Descrição | Tipo |
|---|---|---|
| Mensagem de saída* | A ação não pode falhar nem interromper a execução de um playbook:
A ação precisa falhar e interromper a execução de um playbook:
|
Geral |