Coletar registros do CrowdStrike Falcon
Este documento descreve como ingerir registros do CrowdStrike Falcon no Google Security Operations. É possível ingerir vários tipos de registros do CrowdStrike Falcon. Este documento descreve a configuração específica para cada um deles.
Para uma visão geral de alto nível da ingestão de dados no Google Security Operations, consulte Ingestão de dados no Google Security Operations.
Tipos de registros do CrowdStrike Falcon compatíveis
O Google Security Operations é compatível com os seguintes tipos de registros do CrowdStrike Falcon usando os analisadores com os seguintes rótulos de ingestão:
- Detecção e resposta de endpoints (EDR):
CS_EDR. Esse analisador faz a análise de dados de telemetria quase em tempo real do CrowdStrike Falcon Data Replicator (FDR), como acesso a arquivos e modificações de registro. Os dados geralmente são ingeridos de um bucket do S3 ou do Cloud Storage. Detecções:
CS_DETECTS. Esse analisador faz a análise de eventos de resumo de detecção da CrowdStrike usando a API Detect. Embora esteja relacionada à atividade de endpoint, aCS_DETECTSoferece resumos de detecção de nível mais alto em comparação com a telemetria bruta analisada usandoCS_EDR.Alertas:
CS_ALERTS. Esse analisador faz a análise de alertas da CrowdStrike usando a API Alerts. O analisador de alertas do CrowdStrike é compatível com os seguintes tipos de produtos:eppidpoverwatchxdrmobilecwppngsiem
Indicadores de comprometimento (IoC):
CS_IOC. Esse analisador faz a análise de IoCs e indicadores de ataque (IOAs) da inteligência contra ameaças do CrowdStrike usando a CrowdStrike Chronicle Intel Bridge. O analisador de indicadores de comprometimento (IoC) da CrowdStrike é compatível com os seguintes tipos de indicadores:domainemail_addressfile_namefile_pathhash_md5hash_sha1hash_sha256ip_addressmutex_nameurl
O Google SecOps recomenda usar feeds para CS_EDR, CS_DETECTS e CS_IOC para uma ingestão de dados abrangente do CrowdStrike.
Antes de começar
Verifique se você atende os seguintes pré-requisitos:
- Tem direitos de administrador na instância do CrowdStrike para instalar o sensor de host do CrowdStrike Falcon
- Todos os sistemas na arquitetura de implantação estão configurados no fuso horário UTC.
- O dispositivo de destino executa um sistema operacional compatível
- Precisa ser um servidor de 64 bits.
- O Microsoft Windows Server 2008 R2 SP1 é compatível com o sensor de host do CrowdStrike Falcon versão 6.51 ou mais recente.
- As versões legadas do SO precisam ser compatíveis com a assinatura de código SHA-2.
- Tem arquivo da conta de serviço do Google SecOps e seu ID de cliente da equipe de suporte do Google SecOps
Configurar feeds
Há dois pontos de entrada diferentes para configurar feeds na plataforma Google SecOps:
- Configurações do SIEM > Feeds > Adicionar novo feed
- Hub de conteúdo > Pacotes de conteúdo > Comece já
Para mais informações sobre como configurar vários feeds para diferentes tipos de registros nessa família de produtos, consulte Configurar feeds por produto.
Ingerir registros do CrowdStrike Falcon
Esta seção descreve como configurar a ingestão para os diferentes tipos de registros do CrowdStrike Falcon.
Ingerir registros de EDR (CS_EDR)
É possível ingerir registros de EDR do CrowdStrike Falcon usando um dos seguintes métodos, dependendo de onde você quer enviar os registros do CrowdStrike:
- Amazon SQS: usando um feed do Falcon Data Replicator.
- Amazon S3: usando um feed do Google Security Operations configurado para um bucket do S3.
- Google Cloud Storage: o CrowdStrike envia registros para um bucket do Cloud Storage.
Escolha um dos procedimentos a seguir.
Opção 1: ingerir registros de EDR do Amazon SQS
Esse método usa o replicador de dados do CrowdStrike Falcon para enviar registros de EDR a uma fila do Amazon SQS, que o Google Security Operations pesquisa.
- Clique no pacote CrowdStrike.
No tipo de registro CrowdStrike Falcon, especifique valores para os seguintes campos:
- Fonte: Amazon SQS
- Região: a região do S3 associada ao URI.
- Nome da fila: nome da fila do SQS de onde os dados de registro são lidos.
- URI do S3: o URI de origem do bucket do S3.
- Número da conta: o número da conta do SQS.
- ID da chave de acesso à fila: ID da chave de acesso à conta de 20 caracteres. Por exemplo,
AKIAOSFOODNN7EXAMPLE. - Chave de acesso secreta da fila: chave de acesso secreta de 40 caracteres. Por exemplo,
wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY. - Opção de exclusão da fonte: opção para excluir arquivos e diretórios após a transferência dos dados.
Opções avançadas
- Nome do feed: um valor pré-preenchido que identifica o feed.
- Namespace do recurso: namespace associado ao feed.
- Rótulos de ingestão: rótulos aplicados a todos os eventos deste feed.
Clique em Criar feed.
Para mais informações sobre como configurar vários feeds para diferentes tipos de registros nessa família de produtos, consulte Configurar feeds por produto.
Opção 2: ingerir registros de EDR de um bucket do Amazon S3
Esse método envolve a configuração de um feed do Google Security Operations para extrair registros de EDR diretamente de um bucket do Amazon S3.
Para configurar um feed de ingestão usando um bucket do S3, 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, Registros do Crowdstrike Falcon.
- Em Tipo de origem, selecione Amazon S3.
- Em Tipo de registro, selecione CrowdStrike Falcon.
- Com base na conta de serviço e na configuração do bucket do Amazon S3 que você criou, especifique valores para os seguintes campos:
Campo Descrição regionURI da região do S3. S3 uriURI de origem do bucket do S3. uri is aTipo de objeto para o qual o URI aponta (por exemplo, arquivo ou pasta). source deletion optionOpção para excluir arquivos e diretórios após a transferência dos dados. access key idChave de acesso (string alfanumérica de 20 caracteres). Por exemplo, AKIAOSFOODNN7EXAMPLEsecret access keyChave de acesso do secret (string alfanumérica de 40 caracteres). Por exemplo, wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEYoauth client idID do cliente OAuth público. oauth client secretChave secreta do cliente OAuth 2.0. oauth secret refresh uriURI de atualização da chave secreta do cliente OAuth 2.0. asset namespaceNamespace associado ao feed. - Clique em Próxima e em Enviar.
Opção 3: ingerir registros de EDR do Cloud Storage
É possível configurar o CrowdStrike para enviar registros de EDR a um bucket do Cloud Storage e ingerir esses registros no Google Security Operations usando um feed. Esse processo exige coordenação com o suporte do CrowdStrike.
Entre em contato com o suporte do CrowdStrike:abra um tíquete de suporte com o CrowdStrike para ativar e configurar o envio de registros de EDR para seu bucket do Cloud Storage. Eles vão orientar você sobre as configurações necessárias.
Crie e conceda permissões ao bucket do Cloud Storage:
- No console Google Cloud , crie um bucket do Cloud Storage. Anote o nome do bucket (por exemplo,
gs://my-crowdstrike-edr-logs/). - Conceda permissões de gravação à conta de serviço fornecida pelo CrowdStrike. Siga as instruções do suporte do CrowdStrike.
- No console Google Cloud , crie um bucket do Cloud Storage. Anote o nome do bucket (por exemplo,
Configure o feed do Google SecOps:
- Na sua instância do Google SecOps, acesse Configurações > Feeds e clique em Adicionar novo.
- Insira um Nome do feed descritivo, por exemplo,
CS-EDR-GCS. - Em Tipo de origem, selecione Google Cloud Storage V2.
- Em Tipo de registro, selecione CrowdStrike Falcon.
- Na seção "Conta de serviço", clique em Receber conta de serviço. Copie o endereço de e-mail exclusivo da conta de serviço exibido.
- No console Google Cloud , navegue até seu bucket do Cloud Storage e conceda o papel do IAM
Storage Object Viewerao endereço de e-mail da conta de serviço que você copiou. Isso permite que o feed leia os arquivos de registro. - Volte para a página de configuração do feed do Google SecOps.
- Insira o URL do bucket de armazenamento (por exemplo,
gs://my-crowdstrike-edr-logs/). Esse URL precisa terminar com uma barra (/). - Selecione uma Opção de exclusão de origem. Recomendamos selecionar Nunca excluir arquivos.
- Clique em Próxima, revise as configurações e clique em Enviar.
Verificar a ingestão de registros:depois que o CrowdStrike confirmar que os registros estão sendo enviados, verifique os registros recebidos no Google SecOps com o tipo de registro
CROWDSTRIKE_EDR.
Ingerir registros de alertas (CS_ALERTS)
Para ingerir alertas do CrowdStrike Falcon, configure um feed que use a API do CrowdStrike.
No console do CrowdStrike Falcon:
- Faça login no console do CrowdStrike Falcon.
- Acesse Suporte e recursos > Recursos e ferramentas > Clientes e chaves de API e clique em Criar cliente de API.
- Insira um Nome do cliente e uma Descrição.
- Em Escopos da API, marque as caixas Leitura e Gravação para Alertas.
- Clique em Criar. Anote o ID do cliente, a chave secreta do cliente e o URL de base gerados.
No Google Security Operations:
- Acesse Configurações > Feeds e clique em Adicionar novo.
- Selecione API de terceiros em Tipo de origem.
- Selecione API CrowdStrike Alerts em Tipo de registro.
- Clique em Próxima e preencha os seguintes campos usando os valores do cliente da API CrowdStrike:
- Endpoint do token OAuth
- ID do cliente OAuth
- Chave secreta do cliente OAuth
- URL de base
- Clique em Próxima e em Enviar.
Ingerir registros de detecções (CS_DETECTS)
Para ingerir registros de detecção do CrowdStrike Falcon, também é necessário usar a API do CrowdStrike.
No console do CrowdStrike Falcon:
- Faça login no console do CrowdStrike Falcon.
- Acesse Apps de suporte > Clientes e chaves de API.
- Crie um novo par de chaves de cliente de API. Esse par de chaves precisa ter permissões
READparaDetections.
No Google Security Operations:
- Acesse Configurações > Feeds e clique em Adicionar novo.
- Selecione API de terceiros em Tipo de origem.
- Selecione Monitoramento de detecção do CrowdStrike em Tipo de registro.
- Clique em Próxima e em Enviar. As credenciais da API que você criou serão solicitadas.
Ingerir registros de IoC (CS_IOC)
Para ingerir registros de indicadores de comprometimento (IoC) do CrowdStrike, use a Google SecOps Intel Bridge.
- No console do CrowdStrike Falcon, crie um novo par de chaves de cliente de API. Esse par de chaves precisa ter a permissão
READparaIndicators (Falcon Intelligence). - Configure a Google SecOps Intel Bridge seguindo as instruções em CrowdStrike to Google SecOps Intel Bridge.
Execute os comandos do Docker a seguir para enviar os registros do CrowdStrike ao Google SecOps.
sa.jsoné o arquivo da conta de serviço do Google SecOps.docker build . -t ccib:latest docker run -it --rm \ -e FALCON_CLIENT_ID="$FALCON_CLIENT_ID" \ -e FALCON_CLIENT_SECRET="$FALCON_CLIENT_SECRET" \ -e FALCON_CLOUD_REGION="$FALCON_CLOUD" \ -e CHRONICLE_CUSTOMER_ID="$CHRONICLE_CUSTOMER_ID" \ -e GOOGLE_APPLICATION_CREDENTIALS=/ccib/sa.json \ -v ~/my/path/to/service/account/filer/sa.json:/ccib/sa.json \ ccib:latestDepois que o contêiner estiver em execução, os registros de IoC vão começar a ser transmitidos para o Google SecOps.
Se você tiver problemas com alguma dessas configurações, entre em contato com a equipe de suporte do Google SecOps.
Delta de mapeamento do UDM para registros de alertas do CrowdStrike.
Referência do delta de mapeamento da UDM: CS_ALERTS
A tabela a seguir lista o delta entre o analisador padrão do CS ALERTS e a versão premium do CS ALERTS.
| Default UDM Mapping | Log Field | Premium Mapping Delta |
|---|---|---|
about.resource.product_object_id |
cid |
Removed mapping to avoid duplication, as the cid log field is also mapped to metadata.product_deployment_id. |
principal.asset.platform_software.platform |
platform |
If the device.platform_name log field value is empty and the platform log field value is not empty and if the platform log field value matches the regular expression pattern (?i)Windows then, the principal.asset.platform_software.platform UDM field is set to WINDOWS. Else, if platform log field value matches the regular expression pattern (?i)Linux then, the principal.asset.platform_software.platform UDM field is set to LINUX. Else, if platform log field value matches the regular expression pattern (?i)Mac then, the principal.asset.platform_software.platform UDM field is set to MAC. Else, if platform log field value matches the regular expression pattern (?i)ios then, the principal.asset.platform_software.platform UDM field is set to IOS. |
security_result.detection_fields[agent_id] |
agent_id |
If the device.device_id log field value is empty and the host_id log field value is empty and the mdm_device_id log field value is empty then, CS:%{agent_id} log field is mapped to the principal.asset_id UDM field. Else, the principal.asset.attribute.labels.key UDM field is set to agent_id and agent_id log field is mapped to the principal.asset.attribute.labels.value UDM field. |
security_result.detection_fields[idp_policy_account_event_type] |
idp_policy_account_event_type |
security_result.rule_labels[idp_policy_account_event_type] |
security_result.detection_fields[idp_policy_mfa_factor_type] |
idp_policy_mfa_factor_type |
security_result.rule_labels[idp_policy_mfa_factor_type] |
security_result.detection_fields[idp_policy_mfa_provider_name] |
idp_policy_mfa_provider_name |
security_result.rule_labels[idp_policy_mfa_provider_name] |
security_result.detection_fields[idp_policy_mfa_provider] |
idp_policy_mfa_provider |
security_result.rule_labels[idp_policy_mfa_provider] |
security_result.detection_fields[idp_policy_rule_action] |
idp_policy_rule_action |
security_result.rule_labels[idp_policy_rule_action] |
security_result.detection_fields[idp_policy_rule_trigger] |
idp_policy_rule_trigger |
security_result.rule_labels[idp_policy_rule_trigger] |
security_result.detection_fields[idp_policy_rule_id] |
idp_policy_rule_id |
security_result.rule_id |
security_result.detection_fields[idp_policy_rule_name] |
idp_policy_rule_name |
security_result.rule_name |
security_result.detection_fields[status] |
status |
If the status log field value matches the regular expression pattern (?i)new then, status log field is mapped to the security_result.about.investigation.status UDM field with the value NEW. Else, if status log field value matches the regular expression pattern (?i)closed then, status log field is mapped to the security_result.about.investigation.status UDM field with the value CLOSED. Else, status log field is mapped to the security_result.detection_fields[status] UDM field. |
target.process.file.mime_type |
alleged_filetype |
If the technique_name log field value contain one of the following values
alleged_filetype log field is mapped to the target.file.mime_type UDM field. Else, alleged_filetype log field is mapped to the target.process.file.mime_type UDM field. |
principal.resource.product_object_id |
device.cid |
principal.asset.attribute.labels[device_cid] |
security_result.detection_fields[active_directory_dn_display] |
device.hostinfo.active_directory_dn_display |
Iterate through log field device.hostinfo.active_directory_dn_display, then the security_result.detection_fields.key UDM field is set to device_hostinfo_active_directory_dn_display and device.hostinfo.active_directory_dn_display log field is mapped to the security_result.detection_fields.value UDM field. |
principal.asset.platform_software.platform |
device.platform_name |
If the device.platform_name log field value is not empty and if the device.platform_name log field value matches the regular expression pattern (?i)Windows then, the principal.asset.platform_software.platform UDM field is set to WINDOWS. Else, if device.platform_name log field value matches the regular expression pattern (?i)Linux then, the principal.asset.platform_software.platform UDM field is set to LINUX. Else, if device.platform_name log field value matches the regular expression pattern (?i)Mac then, the principal.asset.platform_software.platform UDM field is set to MAC. Else, if device.platform_name log field value matches the regular expression pattern (?i)ios then, the principal.asset.platform_software.platform UDM field is set to IOS. if the platform log field value is not empty and the device.platform_name log field value is equal to the then, the principal.asset.attribute.labels.key UDM field is set to platform and platform log field is mapped to the principal.asset.attribute.labels.value UDM field. |
principal.asset.platform_software.platform_version |
device.system_product_name |
principal.asset.hardware.model |
target.process.file.names |
filename |
If the technique_name log field value contain one of the following values
filename log field is mapped to the target.file.names UDM field. Else, filename log field is mapped to the target.process.file.names UDM field. |
target.file.full_path |
filepath |
If the technique_name log field value contain one of the following values
filepath log field is mapped to the target.file.full_path UDM field. Else, filepath log field is mapped to the target.process.file.full_path UDM field.If the product log field value is equal to epp and the type log field value is equal to ofp and if the macros.ioc_description log field value is not empty then, macros.ioc_description log field is mapped to the target.file.full_path UDM field and the security_result.detection_fields.key UDM field is set to filepath and filepath log field is mapped to the security_result.detection_fields.value UDM field. |
target.process_ancestors.command_line |
grandparent_details.cmdline |
target.process.parent_process.parent_process.command_line |
target.process_ancestors.file.names |
grandparent_details.filename |
target.process.parent_process.parent_process.file.names |
target.process_ancestors.file.full_path |
grandparent_details.filepath |
target.process.parent_process.parent_process.file.full_path |
target.process_ancestors.file.md5 |
grandparent_details.md5 |
target.process.parent_process.parent_process.file.md5 |
target.process_ancestors.product_specific_process_id |
grandparent_details.process_graph_id |
If the grandparent_details.process_graph_id log field value is not empty then, PRODUCT_SPECIFIC_PROCESS_ID: %{grandparent_details.process_graph_id} log field is mapped to the target.process.parent_process.parent_process.product_specific_process_id UDM field. |
target.process_ancestors.pid |
grandparent_details.process_id |
target.process.parent_process.parent_process.pid |
target.process_ancestors.file.sha256 |
grandparent_details.sha256 |
target.process.parent_process.parent_process.file.sha256 |
security_result.detection_fields[ioc_description] |
ioc_context.ioc_description |
Iterate through log field ioc_context, then the security_result.detection_fields.key UDM field is set to ioc_context_ioc_description and ioc_context.ioc_description log field is mapped to the security_result.detection_fields.value UDM field. |
security_result.detection_fields[ioc_source] |
ioc_context.ioc_source |
Iterate through log field ioc_context, then the security_result.detection_fields.key UDM field is set to ioc_context_ioc_source and ioc_context.ioc_source log field is mapped to the security_result.detection_fields.value UDM field. |
target.process.file.md5 |
md5 |
If the technique_name log field value contain one of the following values
md5 log field is mapped to the target.file.md5 UDM field. Else, md5 log field is mapped to the target.process.file.md5 UDM field. |
target.process.file.sha1 |
sha1 |
If the technique_name log field value contain one of the following values
sha1 log field is mapped to the target.file.sha1 UDM field. Else, sha1 log field is mapped to the target.process.file.sha1 UDM field. |
target.file.sha256 |
sha256 |
If the technique_name log field value contain one of the following values
sha256 log field is mapped to the target.file.sha256 UDM field. Else, sha256 log field is mapped to the target.process.file.sha256 UDM field.If the product log field value is equal to epp and the type log field value is equal to ofp and if the ioc_type log field value is equal to hash_sha256 and the macros.ioc_value log field value is not empty then, macros.ioc_value log field is mapped to the target.file.sha256 UDM field and the security_result.detection_fields.key UDM field is set to sha256 and sha256 log field is mapped to the security_result.detection_fields.value UDM field. |
target.asset.platform_software.platform |
operating_system |
If the operating_system log field value matches the regular expression pattern (?i)Windows then, the principal.asset.platform_software.platform UDM field is set to WINDOWS. Else, if operating_system log field value matches the regular expression pattern (?i)linux then, the principal.asset.platform_software.platform UDM field is set to LINUX. Else, if operating_system log field value matches the regular expression pattern (?i)ios then, the principal.asset.platform_software.platform UDM field is set to IOS. Else, if operating_system log field value matches the regular expression pattern (?i)mac then, the principal.asset.platform_software.platform UDM field is set to MAC. |
security_result.detection_fields[agent_version] |
agent_version |
principal.asset.attribute.labels[agent_version] |
about.email |
enrollment_email |
principal.user.email_addresses |
principal.asset.type |
|
If the mdm_device_id log field value is not empty or the mobile_hardware log field value is not empty or the mobile_manufacturer log field value is not empty or the mobile_serial log field value is not empty then, the principal.asset.type UDM field is set to MOBILE. |
security_result.detection_fields[detection_context_user_is_admin] |
detection_context.user_is_admin |
security_result.about.user.attribute.label[detection_context_user_is_admin] |
security_result.detection_fields[detection_context_user_sid] |
detection_context.user_sid |
security_result.about.user.attribute.label[detection_context_user_sid] |
principal.asset.attribute.labels[pod_id] |
device.pod_id |
principal.resource.product_object_id |
principal.asset.attribute.labels[pod_labels] |
device.pod_labels |
principal.resource.attribute.labels[pod_labels] |
principal.asset.attribute.labels[pod_name] |
device.pod_name |
principal.resource.name |
principal.asset.attribute.labels[pod_namespace] |
device.pod_namespace |
principal.resource.attribute.labels[pod_namespace] |
principal.asset.attribute.labels[pod_service_account_name] |
device.pod_service_account_name |
principal.resource.attribute.labels[pod_service_account_name] |
Formatos de registro do CrowdStrike compatíveis
O analisador do CrowdStrike é compatível com registros no formato JSON.
Precisa de mais ajuda? Receba respostas de membros da comunidade e profissionais do Google SecOps.