Coletar registros de combinação tóxica do Security Command Center

Compatível com:

Este documento explica como exportar e ingerir registros de combinação tóxica do Security Command Center no Google Security Operations usando o Cloud Storage. O analisador extrai e estrutura dados de descobertas de segurança de registros JSON. Ele normaliza os dados em um modelo unificado (UDM), processando diferentes formatos e enriquecendo-os com contexto adicional, como informações de rede e detalhes do user agent.

Antes de começar

Verifique se você atende aos seguintes pré-requisitos:

  • O Security Command Center está ativado e configurado no seu ambiente Google Cloud .
  • Instância do Google SecOps.
  • Acesso privilegiado ao Security Command Center e ao Cloud Logging.

Criar um bucket do Cloud Storage

  1. Faça login no console doGoogle Cloud .
  2. Acesse a página Buckets do Cloud Storage.

    Acessar buckets

  3. Clique em Criar.

  4. Na página Criar um bucket, insira as informações do seu bucket. Após cada uma das etapas a seguir, clique em Continuar para prosseguir para a próxima etapa:

    1. Na seção Começar, faça o seguinte:

      1. Insira um nome exclusivo que atenda aos requisitos de nome de bucket. Por exemplo, gcp-scc-toxic-combination-logs.
      2. Para ativar o namespace hierárquico, clique na seta de expansão para abrir a seção Otimizar para cargas de trabalho orientadas a arquivos e com uso intensivo de dados e selecione Ativar namespace hierárquico neste bucket.

      3. Para adicionar um rótulo de bucket, clique na seta de expansão para abrir a seção Rótulos.

      4. Clique em Adicionar rótulo e especifique uma chave e um valor para o rótulo.

    2. Na seção Escolha onde armazenar seus dados, faça o seguinte:

      1. Selecione um tipo de local.
      2. Use o menu do tipo de local para selecionar um Local em que os dados de objetos no bucket serão armazenados permanentemente.

      3. Para configurar a replicação entre buckets, abra a seção Configurar a replicação entre buckets.

    3. Na seção Escolha uma classe de armazenamento para seus dados, selecione uma classe de armazenamento padrão para o bucket ou selecione Classe automática para gerenciamento automático da classe de armazenamento dos dados do bucket.

    4. Na seção Escolha como controlar o acesso a objetos, selecione não para aplicar a prevenção de acesso público e selecione um modelo de controle de acesso para os objetos do bucket.

    5. Na seção Escolha como proteger os dados do objeto, faça o seguinte:

      1. Selecione qualquer uma das opções em Proteção de dados que você quer definir para o bucket.
      2. Para escolher como os dados do objeto serão criptografados, clique na seta de expansão identificada como Criptografia de dados e selecione um Método de criptografia de dados.
  5. Clique em Criar.

Configurar o registro em registros do Security Command Center

  1. Faça login no console doGoogle Cloud .
  2. Acesse a página Security Command Center.

    Acesse Security Command Center

  3. Selecione a organização.

  4. Clique em Configurações.

  5. Clique na guia Exportações contínuas.

  6. Em Nome da exportação, clique em Exportação do Logging.

  7. Em Coletores, ative a opção Registrar descobertas no Logging.

  8. Em Projeto do Logging, insira ou pesquise o projeto em que você quer registrar as descobertas.

  9. Clique em Salvar.

Configurar a exportação de registros de combinação tóxica do Security Command Center

  1. Faça login no console doGoogle Cloud .
  2. Acesse Logging > Roteador de registros.
  3. Clique em Criar coletor.
  4. Forneça os seguintes parâmetros de configuração:

    • Nome do coletor: insira um nome significativo, por exemplo, scc-toxic-combination-logs-sink.
    • Destino do gravador: selecione Cloud Storage e insira o URI do bucket. Por exemplo, gs://gcp-scc-toxic-combination-logs.
    • Filtro de registros:

      logName="projects/<your-project-id>/logs/cloudsecurityscanner.googleapis.com%2Ftoxic_combinations"
      resource.type="security_command_center_toxic_combination"
      
    • Definir opções de exportação: inclua todas as entradas de registro.

  5. Clique em Criar.

Configurar permissões para o Cloud Storage

  1. Acesse IAM e administrador > IAM.
  2. Localize a conta de serviço do Cloud Logging.
  3. Conceda o papel roles/storage.admin no bucket.

Configurar feeds

Há dois pontos de entrada diferentes para configurar feeds na plataforma do Google SecOps:

  • Configurações do SIEM > Feeds
  • Central de conteúdo > Pacotes de conteúdo

Configure feeds em "Configurações do SIEM" > "Feeds".

Para configurar um feed, siga estas etapas:

  1. Acesse Configurações do SIEM > Feeds.
  2. Clique em Adicionar novo feed.
  3. Na próxima página, clique em Configurar um único feed.
  4. No campo Nome do feed, insira um nome para o feed, por exemplo, Registros de combinação tóxica do Security Command Center.
  5. Selecione Google Cloud Storage como o Tipo de origem.
  6. Selecione Combinação tóxica do Security Command Center como o Tipo de registro.
  7. Clique em Receber conta de serviço ao lado do campo Conta de serviço do Chronicle.
  8. Clique em Próxima.
  9. Especifique valores para os seguintes parâmetros de entrada:

    • URI do bucket de armazenamento: URL do bucket do Cloud Storage. Por exemplo, gs://gcp-scc-toxic-combination-logs.
    • URI é um: selecione Diretório que inclui subdiretórios.
    • Opções de exclusão de fontes: selecione a opção de exclusão de acordo com sua preferência.

  10. Clique em Próxima.

  11. Revise a nova configuração do feed na tela Finalizar e clique em Enviar.

Configurar feeds na Central de conteúdo

Especifique valores para os seguintes campos:

  • URI do bucket de armazenamento: URL do bucket do Cloud Storage. Por exemplo, gs://gcp-scc-toxic-combination-logs.
  • URI é um: selecione Diretório que inclui subdiretórios.
  • Opções de exclusão de fontes: selecione a opção de exclusão de acordo com sua preferência.

Opções avançadas

  • Nome do feed: um valor pré-preenchido que identifica o feed.
  • Tipo de origem: método usado para coletar registros no Google SecOps.
  • Namespace do recurso: namespace associado ao feed.
  • Rótulos de ingestão: rótulos aplicados a todos os eventos deste feed.

Tabela de mapeamento do UDM

Campo de registro Mapeamento do UDM Lógica
categoria read_only_udm.metadata.product_event_type Mapeado diretamente do campo category no registro bruto.
createTime read_only_udm.security_result.detection_fields.value Mapeado diretamente do campo createTime no registro bruto, em que a chave é "createTime".
mute read_only_udm.security_result.detection_fields.value Mapeado diretamente do campo mute no registro bruto, em que a chave é "mute".
nome read_only_udm.metadata.product_log_id Mapeado diretamente do campo name no registro bruto.
primária read_only_udm.target.resource_ancestors.name Mapeado diretamente do campo parent no registro bruto.
parentDisplayName read_only_udm.metadata.description Mapeado diretamente do campo parentDisplayName no registro bruto.
resource.displayName read_only_udm.target.resource.attribute.labels.value Mapeado diretamente do campo resource.displayName no registro bruto, em que a chave é "resource_displayName".
resource.folders read_only_udm.target.resource_ancestors O analisador extrai informações da pasta de recursos da matriz folders no objeto resource. Ele itera por cada pasta e mapeia resourceFolder para name e resourceFolderDisplayName para attribute.labels.value, em que a chave é "folder_resourceFolderDisplayName".
resource.name read_only_udm.target.resource.name Mapeado diretamente do campo resource.name no registro bruto.
resource.parent read_only_udm.target.resource.attribute.labels.value Mapeado diretamente do campo resource.parent no registro bruto, em que a chave é "resource_parent".
resource.parentDisplayName read_only_udm.target.resource.attribute.labels.value Mapeado diretamente do campo resource.parentDisplayName no registro bruto, em que a chave é "resource_parentDisplayName".
resource.project read_only_udm.target.resource.attribute.labels.value Mapeado diretamente do campo resource.project no registro bruto, em que a chave é "resource_project".
resource.projectDisplayName read_only_udm.target.resource.attribute.labels.value Mapeado diretamente do campo resource.projectDisplayName no registro bruto, em que a chave é "resource_projectDisplayName".
resource.service read_only_udm.target.application Mapeado diretamente do campo resource.service no registro bruto.
resource.type read_only_udm.target.resource.attribute.labels.value Mapeado diretamente do campo resource.type no registro bruto, em que a chave é "resource_type".
resourceName read_only_udm.target.resource.name Mapeado diretamente do campo resourceName no registro bruto.
securityMarks.name read_only_udm.security_result.detection_fields.value Mapeado diretamente do campo securityMarks.name no registro bruto, em que a chave é "securityMarks_name".
gravidade, read_only_udm.security_result.severity Mapeado diretamente do campo severity no registro bruto.
estado read_only_udm.security_result.detection_fields.value Mapeado diretamente do campo state no registro bruto, em que a chave é "state".
eventTime read_only_udm.metadata.event_timestamp.seconds O analisador extrai o carimbo de data/hora do campo eventTime e o converte em segundos da época Unix.
read_only_udm.metadata.product_name O analisador define o product_name como Security Command Center com base na origem do registro.
read_only_udm.metadata.vendor_name O analisador define o vendor_name como Google com base na origem do registro.
read_only_udm.security_result.alert_state O analisador define o alert_state como ALERTING porque esse registro representa um alerta ativo.
read_only_udm.security_result.category_details O analisador define o category_details como POSTURE_VIOLATION com base na origem do registro.
read_only_udm.security_result.url_back_to_product O analisador cria dinamicamente o url_back_to_product usando os IDs da organização, da origem e da descoberta extraídos do registro.
primária read_only_udm.target.resource.product_object_id O analisador extrai o ID da origem do campo parent e o define como product_object_id.
resourceName read_only_udm.target.resource_ancestors.name O analisador extrai o ID do projeto do campo resourceName e o define como uma entrada resource_ancestors com resource_type como CLOUD_PROJECT.
read_only_udm.target.resource_ancestors.resource_subtype O analisador define o resource_subtype como google.cloud.resourcemanager.Project para ancestrais de pastas com base na origem do registro.
read_only_udm.target.resource.attribute.labels.key O analisador define várias chaves para o campo labels no objeto attribute do recurso de destino. Essas chaves incluem "resource_parentDisplayName", "resource_type", "resource_projectDisplayName", "resource_displayName", "finding_id", "source_id", "resource_parent" e "resource_project".

Precisa de mais ajuda? Receba respostas de membros da comunidade e profissionais do Google SecOps.