Recolha registos de erros do Security Command Center
Este documento explica como exportar e carregar registos de erros do Security Command Center para o Google Security Operations através do Cloud Storage. O analisador transforma os registos formatados JSON não processados num modelo de dados unificado (UDM). Extrai campos relevantes do registo não processado, realiza a limpeza e a normalização de dados, e estrutura a saída de acordo com o esquema da GDU para uma análise de segurança consistente.
Antes de começar
Certifique-se de que tem os 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.
Crie um contentor do Cloud Storage
- Inicie sessão na Google Cloud consola.
Aceda à página Contentores do Cloud Storage.
Clique em Criar.
Na página Criar um depósito, introduza as informações do depósito. Após cada um dos passos seguintes, clique em Continuar para avançar para o passo seguinte:
Na secção Começar, faça o seguinte:
- Introduza um nome exclusivo que cumpra os requisitos de nome do contentor; por exemplo, gcp-scc-error-logs.
Para ativar o espaço de nomes hierárquico, clique na seta de expansão para expandir a secção Otimizar para cargas de trabalho orientadas para ficheiros e com grande volume de dados e, de seguida, selecione Ativar espaço de nomes hierárquico neste contentor.
Para adicionar uma etiqueta de grupo, clique na seta de expansão para expandir a secção Etiquetas.
Clique em Adicionar etiqueta e especifique uma chave e um valor para a etiqueta.
Na secção Escolha onde quer armazenar os seus dados, faça o seguinte:
- Selecione um Tipo de localização.
Use o menu de tipo de localização para selecionar uma Localização onde os dados de objetos no seu contentor vão ser armazenados permanentemente.
Para configurar a replicação entre contentores, expanda a secção Configurar replicação entre contentores.
Na secção Escolha uma classe de armazenamento para os seus dados, selecione uma classe de armazenamento predefinida para o contentor ou selecione Autoclass para a gestão automática da classe de armazenamento dos dados do seu contentor.
Na secçã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 controlo de acesso para os objetos do seu contentor.
Na secção Escolha como proteger os dados de objetos, faça o seguinte:
- Selecione qualquer uma das opções em Proteção de dados que quer definir para o seu contentor.
- Para escolher como os dados de objetos vão ser encriptados, clique na seta de expansão com a etiqueta Encriptação de dados e selecione um Método de encriptação de dados.
Clique em Criar.
Configure o registo do Security Command Center
- Inicie sessão na Google Cloud consola.
Aceda à página do Security Command Center.
Selecione a sua organização.
Clique em Definições.
Clique no separador Exportações contínuas.
Em Nome da exportação, clique em Exportação de registos.
Em Sinks, ative a opção Registar resultados no registo.
Em Projeto de registo, introduza ou pesquise o projeto onde quer registar as descobertas.
Clique em Guardar.
Configure a exportação de registos de erros do Security Command Center
- Inicie sessão na Google Cloud consola.
- Aceda a Registo > Router de registos.
- Clique em Criar destino.
Forneça os seguintes parâmetros de configuração:
- Nome do destino: introduza um nome significativo; por exemplo,
scc-error-logs-sink
. - Destino da sincronização: selecione Armazenamento do Cloud Storage e introduza o URI do seu contentor; por exemplo,
gs://gcp-scc-error-logs
. Filtro de registo:
logName="projects/<your-project-id>/logs/cloudsecurityscanner.googleapis.com%2Ferror_logs" resource.type="security_command_center_error"
Definir opções de exportação: inclui todas as entradas do registo.
- Nome do destino: introduza um nome significativo; por exemplo,
Clique em Criar.
Configure autorizações para o Cloud Storage
- Aceda a IAM e administrador > IAM.
- Localize a conta de serviço do Cloud Logging.
- Conceda a função roles/storage.admin no contentor.
Configure feeds
Para configurar um feed, siga estes passos:
- Aceda a Definições do SIEM > Feeds.
- Clique em Adicionar novo feed.
- Na página seguinte, clique em Configurar um único feed.
- No campo Nome do feed, introduza um nome para o feed; por exemplo, Registos de erros do Security Command Center.
- Selecione Google Cloud Storage V2 como Tipo de origem.
- Selecione Erro do Security Command Center como o Tipo de registo.
- Clique em Obter conta de serviço junto ao campo Conta de serviço do Chronicle.
- Clicar em Seguinte.
- Especifique valores para os seguintes parâmetros de entrada:
- URI do contentor de armazenamento: URL do contentor do Cloud Storage; por exemplo,
gs://gcp-scc-error-logs
. - Opções de eliminação da origem: selecione a opção de eliminação de acordo com a sua preferência.
Nota: se selecionar a opção
Delete transferred files
ouDelete transferred files and empty directories
, certifique-se de que concedeu as autorizações adequadas à conta de serviço. - Idade máxima do ficheiro: inclui ficheiros modificados no último número de dias. A predefinição é 180 dias.
- URI do contentor de armazenamento: URL do contentor do Cloud Storage; por exemplo,
- Clicar em Seguinte.
- Reveja a nova configuração do feed no ecrã Finalizar e, de seguida, clique em Enviar.
Tabela de mapeamento da UDM
Campo de registo | Mapeamento de UDM | Lógica |
---|---|---|
access.principalEmail | about.user.email_addresses | Valor retirado do campo access.principalEmail . |
categoria | metadata.product_event_type | Valor retirado do campo category ou findings.category , consoante o formato do registo. |
contacts.security.contacts.email | security_result.about.user.email_addresses | Valor retirado do campo contacts.security.contacts.email . A função está definida como Security . |
contacts.technical.contacts.email | security_result.about.user.email_addresses | Valor retirado do campo contacts.technical.contacts.email . A função está definida como Technical . |
createTime | security_result.detection_fields.value | Valor retirado do campo createTime ou findings.createTime , consoante o formato do registo. A tecla está definida como createTime . |
descrição | security_result.description | Valor retirado do campo description ou findings.description , consoante o formato do registo. |
eventTime | metadata.event_timestamp | Valor retirado do campo eventTime ou findings.eventTime , consoante o formato do registo, e convertido numa data/hora. |
externalUri | about.url | Valor retirado do campo externalUri ou findings.externalUri , consoante o formato do registo. |
findingClass | security_result.category_details | Valor retirado do campo findingClass ou findings.findingClass , consoante o formato do registo. |
findingProviderId | target.resource.attribute.labels.value | Valor retirado do campo findingProviderId ou findings.findingProviderId , consoante o formato do registo. A tecla está definida como finding_provider_id . |
mudo/muda | security_result.detection_fields.value | Valor retirado do campo mute ou findings.mute , consoante o formato do registo. A tecla está definida como mute . |
nextSteps | security_result.outcomes.value | Valor retirado do campo nextSteps ou findings.nextSteps , consoante o formato do registo. A tecla está definida como nextSteps . |
resourceName | target.resource.name | Valor retirado do campo resourceName , findings.resourceName , resource_name ou findings.resource_name , consoante o formato do registo. |
securityMarks.name | security_result.detection_fields.value | Valor retirado do campo securityMarks.name ou findings.securityMarks.name , consoante o formato do registo. A tecla está definida como securityMarks_name . |
gravidade | security_result.severity | Valor retirado do campo severity ou findings.severity , consoante o formato do registo, e mapeado para o nível de gravidade da UDM correspondente. |
sourceDisplayName | target.resource.attribute.labels.value | Valor retirado do campo sourceDisplayName ou findings.sourceDisplayName , consoante o formato do registo. A tecla está definida como source_display_name . |
sourceProperties.ReactivationCount | target.resource.attribute.labels.value | Valor retirado do campo sourceProperties.ReactivationCount ou findings.sourceProperties.ReactivationCount , consoante o formato do registo. A tecla está definida como sourceProperties_ReactivationCount . |
estado | security_result.detection_fields.value | Valor retirado do campo state ou findings.state , consoante o formato do registo. A tecla está definida como state . |
metadata.event_type | Definir como GENERIC_EVENT como valor predefinido. |
|
metadata.log_type | Valor codificado GCP_SECURITYCENTER_ERROR . |
|
metadata.description | Valor codificado Security Command Center . |
|
metadata.product_name | Valor codificado Security Command Center . |
|
metadata.vendor_name | Valor codificado Google . |
|
target.resource.attribute.labels.key | Valor codificado finding_id . |
|
target.resource.attribute.labels.value | Extraído do campo name ou findings.name , capturando a última parte após o último caráter / . |
|
target.resource.product_object_id | Extraído do campo parent ou findings.parent , capturando o valor após o último caráter / . |
|
target.resource.ancestors.name | Valor retirado do campo parent ou findings.parent , consoante o formato do registo. |
|
target.resource_ancestors.name | Extraído do campo resourceName ou findings.resourceName , capturando o valor após o prefixo //cloudresourcemanager.googleapis.com/projects/ . |
|
target.resource_ancestors.resource_type | Valor codificado CLOUD_PROJECT . |
|
target.resource.attribute.labels.key | Valor codificado source_id . |
|
target.resource.attribute.labels.value | Extraído do campo parent ou findings.parent , capturando o valor após o segundo caráter / . |
|
security_result.alert_state | Mapeada com base no campo state ou findings.state . Se o estado for ACTIVE , o alert_state é definido como ALERTING , caso contrário, NOT_ALERTING . |
|
about.user.email_addresses | Valor retirado do campo iamBindings.member . |
|
about.user.attribute.roles.name | Valor codificado Security . |
Precisa de mais ajuda? Receba respostas de membros da comunidade e profissionais da Google SecOps.