Recolha registos de segurança na nuvem do Lacework

Compatível com:

Vista geral

Este analisador extrai campos dos registos JSON do Lacework Cloud Security, transformando-os no formato UDM. Mapeia os campos de registo não processados para campos do UDM, processando vários tipos de dados e enriquecendo o evento com contexto adicional das etiquetas. Em última análise, classifica o tipo de evento com base na presença de informações principais e de destino.

Antes de começar

Certifique-se de que tem os seguintes pré-requisitos:

  • Instância do Google Security Operations.
  • Acesso privilegiado ao FortiCNAPP Lacework.

Configure feeds

Para configurar um feed, siga estes passos:

  1. Aceda a Definições do SIEM > Feeds.
  2. Clique em Adicionar novo feed.
  3. Na página seguinte, clique em Configurar um único feed.
  4. No campo Nome do feed, introduza um nome para o feed (por exemplo, Registos da Lacework).
  5. Selecione Webhook como o Tipo de origem.
  6. Selecione Lacework como o Tipo de registo.
  7. Clicar em Seguinte.
  8. Opcional: especifique valores para os seguintes parâmetros de entrada:
    • Delimitador de divisão: o delimitador usado para separar linhas de registo, como \n.
  9. Clicar em Seguinte.
  10. Reveja a configuração do feed no ecrã Finalizar e, de seguida, clique em Enviar.
  11. Clique em Gerar chave secreta para gerar uma chave secreta para autenticar este feed.
  12. Copie e armazene a chave secreta. Não pode ver esta chave secreta novamente. Se necessário, pode regenerar uma nova chave secreta, mas esta ação torna a chave secreta anterior obsoleta.
  13. No separador Detalhes, copie o URL do ponto final do feed do campo Informações do ponto final. Tem de especificar este URL do ponto final na sua aplicação cliente.
  14. Clique em Concluído.

Crie uma chave da API para o feed de webhook

  1. Aceda à Google Cloud consola > Credenciais.

    Aceder a Credenciais

  2. Clique em Criar credenciais e, de seguida, selecione Chave de API.

  3. Restrinja o acesso da chave da API à API Chronicle.

Especifique o URL do ponto final

  1. Na aplicação cliente, especifique o URL do ponto final HTTPS fornecido no feed do webhook.
  2. Ative a autenticação especificando a chave da API e a chave secreta como parte do cabeçalho personalizado no seguinte formato:

    X-goog-api-key = API_KEY
    X-Webhook-Access-Key = SECRET
    

    Recomendação: especifique a chave da API como um cabeçalho em vez de a especificar no URL.

  3. Se o seu cliente de webhook não suportar cabeçalhos personalizados, pode especificar a chave da API e a chave secreta através de parâmetros de consulta no seguinte formato:

    ENDPOINT_URL?key=API_KEY&secret=SECRET
    

    Substitua o seguinte:

    • ENDPOINT_URL: o URL do ponto final do feed.
    • API_KEY: a chave da API para autenticar no Google SecOps.
    • SECRET: a chave secreta que gerou para autenticar o feed.

Configure um webhook do Lacework para o Google SecOps

  1. Inicie sessão na consola do Lacework FortiCNAPP com privilégios administrativos.
  2. Aceda a Definições > Notificações > Canais de alerta.
  3. Clique em + Adicionar novo.
  4. Selecione Webhook.
  5. Clicar em Seguinte.
  6. Especifique um nome exclusivo para o canal (por exemplo, Google SecOps).
  7. URL do webhook: introduza <ENDPOINT_URL> seguido de <API_KEY> e <SECRET>.
  8. Clique em Guardar.
  9. Selecione Regras de alerta e configure os detalhes de encaminhamento de alertas necessários.

Tabela de mapeamento da UDM

Campo de registo Mapeamento de UDM Lógica
AGENT_VERSION metadata.product_version Mapeado diretamente a partir do campo AGENT_VERSION.
CREATED_TIME metadata.event_timestamp Mapeado diretamente a partir do campo CREATED_TIME, convertido numa data/hora.
FILEDATA_HASH target.file.sha256 Mapeado diretamente a partir do campo FILEDATA_HASH.
FILE_PATH target.file.full_path Mapeado diretamente a partir do campo FILE_PATH.
IP_ADDR principal.ip Mapeado diretamente a partir do campo IP_ADDR.
OS target.platform Mapeado a partir do campo OS. A lógica converte várias strings de SO (Linux, Windows, Mac) em valores de enumeração da UDM (LINUX, WINDOWS, MAC). A predefinição é UNKNOWN_PLATFORM se não for encontrada nenhuma correspondência.
STATUS additional.fields[].key:"STATUS", value.string_value Mapeado diretamente a partir do campo STATUS como um campo adicional.
TAGS.Account metadata.product_deployment_id Mapeado diretamente a partir do campo TAGS.Account.
TAGS.AmiId additional.fields[].key:"AmiId", value.string_value Mapeado diretamente a partir do campo TAGS.AmiId como um campo adicional.
TAGS.ExternalIp target.ip Mapeado diretamente a partir do campo TAGS.ExternalIp.
TAGS.Hostname principal.hostname Mapeado diretamente a partir do campo TAGS.Hostname.
TAGS.InstanceId target.asset_id Mapeado diretamente a partir do campo TAGS.InstanceId, com o prefixo "ID da instância do dispositivo: ".
TAGS.LwTokenShort additional.fields[].key:"LwTokenShort", value.string_value Mapeado diretamente a partir do campo TAGS.LwTokenShort como um campo adicional.
TAGS.MID additional.fields[].key:"MID", value.string_value Mapeado diretamente a partir do campo MID como um campo adicional.
TAGS.MODE additional.fields[].key:"MODE", value.string_value Mapeado diretamente a partir do campo MODE como um campo adicional.
TAGS.Name additional.fields[].key:"Name", value.string_value Mapeado diretamente a partir do campo TAGS.Name como um campo adicional.
TAGS.QSConfigName-vfzg0 additional.fields[].key:"QSConfigName", value.string_value Mapeado diretamente a partir do campo TAGS.QSConfigName-vfzg0 como um campo adicional.
TAGS.ResourceType target.resource.resource_subtype Mapeado diretamente a partir do campo TAGS.ResourceType.
TAGS.SubnetId target.resource.attribute.labels[].key:"Subnet Id", value Mapeado diretamente a partir do campo TAGS.SubnetId como uma etiqueta em target.resource.attribute.
TAGS.VmInstanceType target.resource.attribute.labels[].key:"VmInstanceType", value Mapeado diretamente a partir do campo TAGS.VmInstanceType como uma etiqueta em target.resource.attribute.
TAGS.VmProvider target.resource.attribute.labels[].key:"VmProvider", value Mapeado diretamente a partir do campo TAGS.VmProvider como uma etiqueta em target.resource.attribute.
TAGS.VpcId target.resource.product_object_id Mapeado diretamente a partir do campo TAGS.VpcId.
TAGS.Zone target.cloud.availability_zone Mapeado diretamente a partir do campo TAGS.Zone.
TAGS.alpha.eksctl.io/nodegroup-name additional.fields[].key:"eksctl_nodegroup_name", value.string_value Mapeado diretamente a partir do campo TAGS.alpha.eksctl.io/nodegroup-name como um campo adicional.
TAGS.alpha.eksctl.io/nodegroup-type additional.fields[].key:"eksctl_nodegroup_type", value.string_value Mapeado diretamente a partir do campo TAGS.alpha.eksctl.io/nodegroup-type como um campo adicional.
TAGS.arch principal.platform_version Mapeado diretamente a partir do campo TAGS.arch.
TAGS.aws:autoscaling:groupName additional.fields[].key:"autoscaling_groupName", value.string_value Mapeado diretamente a partir do campo TAGS.aws:autoscaling:groupName como um campo adicional.
TAGS.aws:ec2:fleet-id additional.fields[].key:"ec2_fleetid", value.string_value Mapeado diretamente a partir do campo TAGS.aws:ec2:fleet-id como um campo adicional.
TAGS.aws:ec2launchtemplate:id additional.fields[].key:"ec2launchtemplate_id", value.string_value Mapeado diretamente a partir do campo TAGS.aws:ec2launchtemplate:id como um campo adicional.
TAGS.aws:ec2launchtemplate:version additional.fields[].key:"ec2launchtemplate_ver", value.string_value Mapeado diretamente a partir do campo TAGS.aws:ec2launchtemplate:version como um campo adicional.
TAGS.aws:eks:cluster-name additional.fields[].key:"eks_cluster_name", value.string_value Mapeado diretamente a partir do campo TAGS.aws:eks:cluster-name como um campo adicional.
TAGS.enableCrowdStrike additional.fields[].key:"enableCrowdStrike", value.string_value Mapeado diretamente a partir do campo TAGS.enableCrowdStrike como um campo adicional.
TAGS.falconx.io/application additional.fields[].key:"io/application", value.string_value Mapeado diretamente a partir do campo TAGS.falconx.io/application como um campo adicional.
TAGS.falconx.io/environment additional.fields[].key:"io/environment", value.string_value Mapeado diretamente a partir do campo TAGS.falconx.io/environment como um campo adicional.
TAGS.falconx.io/managedBy additional.fields[].key:"io/managedBy", value.string_value Mapeado diretamente a partir do campo TAGS.falconx.io/managedBy como um campo adicional.
TAGS.falconx.io/project additional.fields[].key:"io/project", value.string_value Mapeado diretamente a partir do campo TAGS.falconx.io/project como um campo adicional.
TAGS.falconx.io/proxy-type additional.fields[].key:"io/proxy_type", value.string_value Mapeado diretamente a partir do campo TAGS.falconx.io/proxy-type como um campo adicional.
TAGS.falconx.io/service additional.fields[].key:"io/service", value.string_value Mapeado diretamente a partir do campo TAGS.falconx.io/service como um campo adicional.
TAGS.falconx.io/team additional.fields[].key:"io/team", value.string_value Mapeado diretamente a partir do campo TAGS.falconx.io/team como um campo adicional.
TAGS.k8s.io/cluster-autoscaler/enabled additional.fields[].key:"k8s_autoscaler_enabled", value.string_value Mapeado diretamente a partir do campo TAGS.k8s.io/cluster-autoscaler/enabled como um campo adicional.
TAGS.k8s.io/cluster-autoscaler/falcon additional.fields[].key:"k8s_cluster_autoscaler", value.string_value Mapeado diretamente a partir do campo TAGS.k8s.io/cluster-autoscaler/falcon como um campo adicional.
TAGS.kubernetes.io/cluster/falcon additional.fields[].key:"kubernetes_io_cluster", value.string_value Mapeado diretamente a partir do campo TAGS.kubernetes.io/cluster/falcon como um campo adicional.
TAGS.lw_KubernetesCluster additional.fields[].key:"lw_KubernetesCluster", value.string_value Mapeado diretamente a partir do campo TAGS.lw_KubernetesCluster como um campo adicional.
LAST_UPDATE additional.fields[].key:"LAST_UPDATE", value.string_value Mapeado diretamente a partir do campo LAST_UPDATE como um campo adicional. Codificado de forma rígida para "LACEWORK". Codificado como "Lacework Cloud Security".
metadata.event_type metadata.event_type Determinado pela lógica. Definido como "NETWORK_CONNECTION" se principal.ip e target.ip estiverem presentes, "STATUS_UPDATE" se apenas principal.ip estiver presente e "GENERIC_EVENT" caso contrário.

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