Use o BigQuery Export avançado

Compatível com:

Este documento descreve como aceder e usar os seus dados do Google SecOps no BigQuery com a funcionalidade Advanced BigQuery Export. Enquanto cliente do Enterprise Plus, pode usar a funcionalidade para aceder aos seus dados de segurança quase em tempo real através de um pipeline de dados de streaming totalmente gerido. Esta capacidade pode ajudar a resolver o desafio crítico da latência de dados nas operações de segurança e levar a uma deteção e resposta a ameaças mais oportunas e eficazes.

Antes de começar

Recomendamos que reveja os seguintes pontos que definem os requisitos de elegibilidade e as ações necessárias:

  • Apenas para clientes do Enterprise Plus: esta funcionalidade está disponível apenas para clientes do Google SecOps Enterprise Plus. Para todos os outros clientes, consulte o artigo Configure a exportação de dados para o BigQuery num Google Cloud projeto autogerido.

  • Ativação da funcionalidade necessária: esta funcionalidade é ativada mediante pedido e pode exigir uma configuração inicial na instância do Google SecOps da sua organização. Contacte o seu representante da Google SecOps para confirmar a ativação da funcionalidade, se necessário.

  • Alerta de migração: quando ativa esta funcionalidade, substitui o método mais antigo, que é descrito no artigo Dados do Google SecOps no BigQuery. Durante a migração para a Exportação avançada do BigQuery, vamos manter a sua pipeline mais antiga ativa durante um período de transição. Esta operação dupla foi concebida para suportar a sua mudança para a nova funcionalidade sem interrupções. Recebe uma notificação antes de o pipeline de exportação antigo ser desativado para a sua conta.

Vista geral das funcionalidades

A exportação avançada do BigQuery aprovisiona e gere automaticamente conjuntos de dados essenciais do Google SecOps, incluindo eventos do modelo de dados unificado (UDM), deteções de regras e correspondências de indicadores de comprometimento (IoC), num projeto do BigQuery seguro e gerido pela Google. Obtém acesso seguro e só de leitura a estes dados através de um conjunto de dados associado do BigQuery, que aparece diretamente no seu próprio Google Cloud projeto. Esta funcionalidade permite-lhe consultar os seus dados de segurança como se estivessem armazenados localmente, mas sem a sobrecarga da gestão do pipeline de dados ou do armazenamento.

O Google SecOps exporta as seguintes categorias de dados de segurança para o BigQuery:

  • Registos de eventos da UDM: registos da UDM criados a partir de dados de registo carregados pelos clientes. Estes registos são enriquecidos com informações de pseudónimos.
  • Correspondências de regras (deteções): instâncias em que uma regra corresponde a um ou mais eventos.
  • Correspondências de IoC: artefactos (por exemplo, domínios ou endereços IP) de eventos que correspondem a feeds de IoC. Isto inclui correspondências com feeds globais e feeds específicos do cliente.
  • Métricas de carregamento: estatísticas, como o número de linhas de registo carregadas, o número de eventos produzidos a partir de registos e o número de erros de registo que indicam que não foi possível analisar os registos.
  • Grafo de entidades e relações entre entidades: a descrição das entidades e das respetivas relações com outras entidades.

Principais vantagens

As principais vantagens do BigQuery Export avançado incluem:

  • Atualidade dos dados quase em tempo real: uma arquitetura de streaming disponibiliza os seus dados de segurança para consulta em poucos minutos após o carregamento. Os eventos UDM, as deteções de regras e as correspondências de IoC estão disponíveis com uma latência esperada de 5 a 10 minutos.
  • Modelo de custos simplificado e previsível: o Google SecOps abrange todos os custos de carregamento e armazenamento de dados no projeto do BigQuery gerido. A sua organização é responsável apenas pelos custos de análise do BigQuery incorridos quando executa consultas.
  • Acesso a dados sem manutenção: a infraestrutura subjacente é totalmente gerida pela Google, o que permite à sua equipa focar-se na análise de dados em vez da engenharia de dados.

Exemplos de utilização típicos

A Exportação avançada do BigQuery foi concebida para analistas de segurança, caçadores de ameaças, cientistas de dados e engenheiros de segurança que precisam de acesso direto e de alto desempenho a dados de segurança atualizados para investigações ad hoc, estatísticas personalizadas e integração com ferramentas de Business Intelligence.

Os exemplos de utilização típicos do BigQuery Export avançado incluem o seguinte:

  • Executar consultas ad hoc diretamente no BigQuery.
  • Use as suas próprias ferramentas de inteligência empresarial, como o Microsoft Power BI, para criar painéis de controlo, relatórios e estatísticas.
  • Junte dados do Google SecOps a conjuntos de dados de terceiros.

Arquitetura

A arquitetura do BigQuery Export avançado usa um pipeline de streaming contínuo. Os dados da sua instância do Google SecOps são enviados para um projeto de inquilino seguro e gerido pela Google através da API BigQuery Storage Write de elevado débito.

O Google SecOps usa a partilha do BigQuery para criar uma ficha de dados segura e conceder-lhe acesso. No painel do Explorador do BigQuery, o seu Google Cloud projeto subscreve automaticamente esta ficha, que é apresentada como o secops_linked_data conjunto de dados associado.

Este modelo suporta um forte isolamento de dados, ao mesmo tempo que lhe dá um acesso de consulta de leitura simples.

Use o BigQuery Export avançado

Esta secção descreve como aceder aos seus dados do Google SecOps e usá-los no BigQuery.

Palavras-chave e conceitos

Seguem-se alguns termos e conceitos importantes para o BigQuery Export avançado:

  • Conjunto de dados associado: um conjunto de dados do BigQuery só de leitura que funciona como um link simbólico ou um ponteiro para um conjunto de dados partilhado noutro projeto. Permite-lhe consultar dados sem os copiar, oferecendo acesso seguro enquanto o fornecedor de dados gere o armazenamento físico.
  • Partilha do BigQuery: o Google Cloud serviço que permite às organizações partilhar de forma segura dados e recursos de estatísticas, como conjuntos de dados do BigQuery, interna e externamente.
  • Projeto de inquilino: um Google Cloud projeto detido e gerido pelo Google SecOps. Este projeto é onde os seus dados de segurança exportados são armazenados e geridos fisicamente. Não tem acesso direto a este projeto.
  • O seu projeto: o Google Cloud projeto que a sua organização detém e associa à sua instância do Google SecOps. Este é o projeto onde o conjunto de dados associado é apresentado e onde executa as suas consultas e incorre em custos de análise.
  • ID do projeto: o identificador globalmente exclusivo do seu projeto.
  • Modelo de dados unificado (UDM): esquema padrão extensível da Google para analisar e normalizar dados de telemetria de segurança de centenas de produtos de fornecedores num formato consistente.

Configure o seu sistema

Siga estes passos para configurar o seu sistema de modo a usar o BigQuery Export avançado e começar a consultar os seus dados:

  1. Confirme a sua licença: certifique-se de que a sua organização tem uma licença do Google SecOps Enterprise Plus.
  2. Identifique o seu projeto: inicie sessão na Google Cloud consola e selecione o Google Cloud projeto associado à sua instância do Google SecOps.
  3. Localize o conjunto de dados associado: na consola do BigQuery, use o painel do Explorador para navegar para os recursos do seu projeto. É apresentado um conjunto de dados associado com o nome secops_linked_data. Este conjunto de dados é um ponteiro só de leitura para os dados de segurança em direto geridos pelo Google SecOps.
  4. Verifique as autorizações de gestão de identidade e de acesso (IAM): para consultar os dados, a sua conta de utilizador ou de serviço tem de ter as seguintes funções de IAM concedidas no seu projeto:

    • roles/bigquery.dataViewer
    • roles/bigquery.jobUser

    Estas funções permitem aos utilizadores (como analistas de segurança e consumidores de dados) consultar dados no conjunto de dados associado e executar tarefas do BigQuery no respetivo projeto.

  5. Execute uma consulta de teste: abra o espaço de trabalho SQL do BigQuery e execute uma consulta básica para verificar se o seu acesso está configurado corretamente. Pode usar o seguinte fragmento do código (substituindo PROJECT_ID pelo seu Google Cloud ID do projeto real):

    SELECT *
    FROM `PROJECT_ID.secops_linked_data.events`
    LIMIT 10;
    

Consulte os seus dados do BigQuery

Pode executar consultas diretamente no BigQuery ou associar a sua própria ferramenta de inteligência empresarial, como o Microsoft Power BI, ao BigQuery.

Consulte o seguinte para mais informações sobre as consultas:

Período de retenção de dados no BigQuery

O período de retenção dos seus dados no BigQuery é idêntico ao período de retenção de dados configurado para o seu inquilino do Google SecOps. Não existe uma definição configurável separada para personalizar a política de retenção de dados no BigQuery. Os dados são automaticamente eliminados das tabelas do BigQuery à medida que ultrapassam o período de retenção do seu inquilino.

Conjuntos de dados associados

Os conjuntos de dados associados contêm várias tabelas, cada uma correspondente a um tipo diferente de dados de segurança.

A tabela seguinte apresenta um resumo dos conjuntos de dados disponíveis, a respetiva atualidade dos dados de destino e as chaves principais usadas para garantir a integridade dos dados:

Nome do conjunto de dados Descrição Melhor frescura esperada Chaves principais para a remoção de duplicados
events Eventos de segurança normalizados no esquema UDM.
Para ver informações sobre o esquema, consulte o esquema de eventos do Google SecOps.
< 5 minutos metadata.id
(Representação de string)
rule_detections Deteções geradas pelas regras do motor de deteção do Google SecOps.
Para obter informações sobre o esquema, consulte o artigo Veja alertas e IoCs no Google SecOps.
< 5 minutos Nenhum
ioc_matches Correspondências de IoC encontradas em eventos UDM.
Para obter informações sobre o esquema, consulte o artigo Veja alertas e IoCs no Google SecOps.
< 5 minutos Nenhum
entity_graph Dados contextuais sobre entidades (utilizadores, recursos) e as respetivas relações.
Para obter informações sobre o esquema, consulte o artigo Enriqueça os dados de eventos e entidades com o Google SecOps.
~4 horas
(em lote)
Nenhum
ingestion_metrics Estatísticas sobre o volume de carregamento de registos e as origens de dados.
Para ver informações sobre os esquemas, consulte os artigos Esquema de métricas de carregamento e Referência de métricas de carregamento para o Looker e o BigQuery no Google SecOps.
Cerca de 5 minutos Nenhum
(série cronológica apenas de anexação)

Consultas de exemplo

Os exemplos seguintes demonstram como consultar os conjuntos de dados para exemplos de utilização de segurança comuns. Não se esqueça de substituir PROJECT_ID pelo seu Google Cloud ID do projeto real.

Exemplo: encontre todas as ligações de rede de um endereço IP específico nas últimas 24 horas

Esta consulta pesquisa a tabela events para encontrar atividade de rede recente a partir de um endereço IP suspeito.

SELECT
  metadata.product_event_type,
  principal.ip,
  target.ip,
  network.application_protocol
FROM
  `PROJECT_ID.secops_linked_data.events`
WHERE
  principal.ip = '192.0.2.1'
  AND metadata.event_timestamp > TIMESTAMP_SUB(CURRENT_TIMESTAMP(), INTERVAL 24 HOUR);

Exemplo: contabilize as 10 deteções de regras mais frequentes

Esta consulta na tabela rule_detections ajuda a identificar as ameaças ou as violações de políticas mais comuns que são detetadas no seu ambiente.

SELECT
  rule_name,
  COUNT(*) AS detection_count
FROM
  `PROJECT_ID.secops_linked_data.rule_detections`
WHERE
  detection.id IS NOT NULL
GROUP BY
  1
ORDER BY
  2 DESC
LIMIT
  10;

Práticas recomendadas

Seguem-se algumas práticas recomendadas para consultar com o BigQuery Export avançado:

  • Otimize em função do custo: evite SELECT *. Na consulta, especifique apenas as colunas de que precisa para reduzir a quantidade de dados analisados e diminuir os custos das consultas.
  • Use filtros de partição: a tabela events é particionada pela coluna hour_time_bucket. Inclua sempre um filtro de cláusula WHERE nesta coluna para limitar as consultas ao menor intervalo de tempo possível, o que melhora significativamente o desempenho e reduz o custo.
  • Escreva consultas eficientes: o esquema do UDM é amplo e esparso. Para filtrar de forma eficiente tipos de eventos específicos, use WHERE... IS NOT NULL nos campos relevantes. Por exemplo, para encontrar apenas consultas DNS, filtre WHERE network.dns.questions.name IS NOT NULL.
  • Validar consultas: use o validador de consultas na IU do BigQuery antes de executar uma consulta. O validador de consultas fornece uma estimativa do processo de dados, o que ajuda a evitar consultas inesperadamente grandes e dispendiosas.

Limitações conhecidas

Seguem-se as limitações conhecidas da funcionalidade BigQuery Export avançado:

  • Latência do gráfico de entidades: o conjunto de dados entity_graph é exportado através de um processo em lote e tem uma atualização de dados de aproximadamente quatro horas.
  • Chaves de encriptação geridas pelo cliente (CMEK): a exportação avançada do BigQuery não está disponível para clientes que ativaram as CMEK na respetiva instância do Google SecOps.
  • Colunas do esquema da UDM: o BigQuery tem um limite flexível de 10 000 colunas por tabela. O esquema de UDM contém mais de 27 000 campos e está pouco preenchido. O pipeline de exportação inclui de forma inteligente apenas colunas preenchidas para um determinado evento, o que mantém a maioria dos clientes bem abaixo do limite. O Google SecOps monitoriza a utilização de colunas e pede proativamente um aumento do limite para o seu projeto de inquilino se este se aproximar deste limite.
  • Política de retenção: o período de retenção de dados para todos os dados de segurança exportados para o BigQuery é sincronizado automaticamente com o período de retenção de dados do seu projeto do Google SecOps e não é configurável em separado.
  • Dados recebidos com atraso: em circunstâncias raras, se os dados chegarem significativamente atrasados ao pipeline de processamento, existe uma pequena probabilidade de não serem corretamente unidos. O sistema foi concebido para minimizar esta situação, mas é uma característica conhecida dos sistemas de streaming de elevado débito que dependem da consistência eventual.
  • Dados enriquecidos: a cobertura está limitada a eventos UDM enriquecidos únicos. Os eventos da UDM re-enriquecidos não são exportados para a instância do BigQuery do projeto do inquilino.
  • Dados do histórico: a exportação de dados começa no momento em que a exportação avançada do BigQuery é ativada, e os dados mais antigos permanecem acessíveis no seu projeto existente. Para consultar dados exportados antes da ativação da exportação avançada do BigQuery, tem de usar uma única consulta que junte dados em ambos os projetos ou executar duas consultas separadas nos respetivos projetos (uma para o conjunto de dados mais antigo e outra para o novo conjunto de dados).

Resolução de problemas e apoio técnico

A tabela seguinte apresenta soluções para problemas comuns que pode encontrar:

Sintoma observado Causa possível Ação recomendada
As consultas falham com Access Denied: User does not have permission. O utilizador ou a conta de serviço não tem as funções de IAM do BigQuery necessárias no Google Cloud projeto associado à sua instância do Google SecOps. Conceda as funções Visualizador de dados do BigQuery e Utilizador de tarefas do BigQuery ao principal. Valide esta ação através do gcloud projects get-iam-policy YOUR_PROJECT_ID --flatten="bindings.members" --format='table(bindings.role)' --filter="bindings.members:user:your-user@example.com"
O conjunto de dados secops_linked_data não está visível no meu projeto do BigQuery. 1. Não está no Google Cloud projeto
correto.2. A sua organização não está no nível Enterprise Plus.
3. A sua organização está no nível Enterprise Plus, mas a exportação avançada do BigQuery não está ativada na sua instância do Google SecOps.
1. Na Google Cloud consola, verifique se selecionou o projeto associado à sua instância do Google SecOps.
2. Contacte o seu representante da Google para confirmar o nível da sua licença do Google SecOps.
3. Contacte o seu representante do Google SecOps e peça-lhe para ativar o BigQuery Export avançado na sua instância do Google SecOps.
Ver o que parecem ser eventos duplicados nos resultados da consulta. Isto pode dever-se a dados que chegam tarde numa stream de elevado débito. O sistema usa a semântica de entrega at-least-once. Se suspeitar de duplicados, agrupe a sua consulta pelas chaves primárias indicadas em Conjuntos de dados para obter uma contagem.

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