Usar o BigQuery Export avançado
Neste documento, descrevemos como acessar e usar seus dados do Google SecOps no BigQuery com o recurso Exportação avançada do BigQuery. Como cliente do Enterprise Plus, você pode usar o recurso para acessar seus dados de segurança quase em tempo real por um pipeline de dados de streaming totalmente gerenciado. Essa capacidade ajuda a resolver o desafio crítico da latência de dados nas operações de segurança e leva a uma detecção e resposta a ameaças mais oportunas e eficazes.
Antes de começar
Recomendamos que você analise os seguintes pontos que definem os requisitos de qualificação e as ações necessárias:
Somente clientes do Enterprise Plus: esse recurso está disponível apenas para clientes do Google SecOps Enterprise Plus. Para todos os outros clientes, consulte Configurar a exportação de dados para o BigQuery em um projeto Google Cloud autogerenciado.
Ativação de recurso necessária: esse recurso é ativado mediante solicitação e pode exigir configuração inicial na instância do Google SecOps da sua organização. Entre em contato com seu representante do Google SecOps para confirmar a ativação do recurso, se necessário.
Alerta de migração: quando você ativa esse recurso, ele substitui o método mais antigo, descrito em Dados do Google SecOps no BigQuery. Durante a migração para o Advanced BigQuery Export, vamos manter seu pipeline mais antigo ativo por um período de transição. Essa operação dupla foi criada para facilitar a transição para o novo recurso sem interrupções. Você vai receber uma notificação antes que o pipeline de exportação antigo seja desativado na sua conta.
Visão geral do recurso
A exportação avançada do BigQuery provisiona e gerencia automaticamente conjuntos de dados essenciais do Google SecOps, incluindo eventos do modelo unificado de dados (UDM), detecções de regras e correspondências de indicador de comprometimento (IoC, na sigla em inglês), em um projeto seguro do BigQuery gerenciado pelo Google. Você ganha acesso seguro e somente leitura a esses dados por um conjunto de dados vinculado do BigQuery, que aparece diretamente no seu projeto Google Cloud . Com essa funcionalidade, é possível consultar seus dados de segurança como se eles estivessem armazenados localmente, mas sem a sobrecarga de gerenciar o pipeline de dados ou o armazenamento.
O Google SecOps exporta as seguintes categorias de dados de segurança para o BigQuery:
- Registros de eventos da UDM: registros da UDM criados com base em dados de registro ingeridos pelos clientes. Esses registros são enriquecidos com informações de alias.
- Correspondências de regra (detecções): instâncias em que uma regra corresponde a um ou mais eventos.
- Correspondências de IoC: artefatos (por exemplo, domínios ou endereços IP) de eventos que correspondem a feeds de IoC. Isso inclui correspondências com e de feeds globais e específicos do cliente.
- Métricas de ingestão: estatísticas, como o número de linhas de registro ingeridas, o número de eventos produzidos com base em registros e o número de erros de registro que indicam que os registros não puderam ser analisados.
- Gráfico de entidades e relações entre entidades: a descrição das entidades e das relações delas com outras entidades.
Principais vantagens
Os principais benefícios do Advanced BigQuery Export incluem:
- Atualização de dados quase em tempo real: uma arquitetura de streaming disponibiliza seus dados de segurança para consulta em minutos após a ingestão. Os eventos de UDM, as detecçõ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 custo simplificado e previsível: o Google SecOps cobre todos os custos de ingestão e armazenamento de dados no projeto gerenciado do BigQuery. Sua organização é responsável apenas pelos custos de análise do BigQuery incorridos ao executar consultas.
- Acesso a dados sem manutenção: a infraestrutura subjacente é totalmente gerenciada pelo Google, o que permite que sua equipe se concentre na análise de dados em vez da engenharia de dados.
Casos de uso típicos
A exportação avançada do BigQuery foi criada 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 alta performance a dados de segurança atualizados para investigações ad hoc, análises personalizadas e integração com ferramentas de business intelligence.
Os casos de uso típicos da exportação avançada do BigQuery incluem:
- Executar consultas ad hoc diretamente no BigQuery.
- Use suas próprias ferramentas de business intelligence, como o Microsoft Power BI, para criar painéis, relatórios e análises.
- Combine dados do Google SecOps com conjuntos de dados de terceiros.
Arquitetura
A arquitetura do Advanced BigQuery Export usa um pipeline de streaming contínuo. Os dados da sua instância do Google SecOps são enviados para um projeto de locatário seguro gerenciado pelo Google usando a API BigQuery Storage Write de alta capacidade.
O Google SecOps usa o compartilhamento do BigQuery para criar uma listagem de dados segura e conceder acesso a você. No painel Explorer do BigQuery, seu projeto Google Cloud é inscrito automaticamente nessa listagem, que aparece como o conjunto de dados vinculadosecops_linked_data
.
Esse modelo oferece isolamento de dados forte e acesso de leitura sem problemas.
Usar o BigQuery Export avançado
Esta seção descreve como acessar e usar seus dados do Google SecOps no BigQuery.
Principais termos e conceitos
Confira alguns termos e conceitos importantes da exportação avançada do BigQuery:
- Conjunto de dados vinculado: um conjunto de dados somente leitura do BigQuery que serve como link simbólico ou ponteiro para um conjunto de dados compartilhado em outro projeto. Ele permite consultar dados sem copiá-los, oferecendo acesso seguro enquanto o provedor gerencia o armazenamento físico.
- Compartilhamento do BigQuery: o serviço Google Cloud que permite que as organizações compartilhem recursos de dados e análises, como conjuntos de dados do BigQuery, de maneira segura, tanto interna quanto externamente.
- Projeto do locatário: um projeto Google Cloud de propriedade e gerenciado pelo Google SecOps. É nesse projeto que os dados de segurança exportados são armazenados e gerenciados fisicamente. Você não tem acesso direto a este projeto.
- Seu projeto: o projeto Google Cloud que sua organização possui e vincula à sua instância do Google SecOps. É o projeto em que o conjunto de dados vinculado aparece e onde você executa as 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 e extensível do Google para analisar e normalizar dados de telemetria de segurança de centenas de produtos de fornecedores em um formato consistente.
Configurar o sistema
Siga estas etapas para configurar seu sistema e usar a exportação avançada do BigQuery e começar a consultar seus dados:
- Confirme sua licença: verifique se sua organização tem uma licença do Google SecOps Enterprise Plus.
- Identifique seu projeto: faça login no console Google Cloud e selecione o projeto Google Cloud vinculado à sua instância do Google SecOps.
- Localize o conjunto de dados vinculado: no console do BigQuery, use o painel Explorer para navegar até os recursos do seu projeto. Um conjunto de dados vinculado chamado
secops_linked_data
vai aparecer. Esse conjunto de dados é um ponteiro somente leitura para os dados de segurança ativos gerenciados pelo Google SecOps. Verifique as permissões do Identity and Access Management (IAM): para consultar os dados, seu usuário ou conta de serviço precisa ter os seguintes papéis do IAM concedidos no projeto:
roles/bigquery.dataViewer
roles/bigquery.jobUser
Com essas funções, os usuários (como analistas de segurança e consumidores de dados) podem consultar dados no conjunto vinculado e executar jobs do BigQuery no projeto.
Execute uma consulta de teste: abra o espaço de trabalho SQL do BigQuery e execute uma consulta básica para verificar se o acesso está configurado corretamente. Use o snippet de código a seguir, substituindo PROJECT_ID pelo ID do projeto Google Cloud :
SELECT * FROM `PROJECT_ID.secops_linked_data.events` LIMIT 10;
Consultar seus dados do BigQuery
É possível executar consultas diretamente no BigQuery ou conectar sua própria ferramenta de business intelligence, como o Microsoft Power BI, ao BigQuery.
Consulte o seguinte para mais informações sobre consultas:
- Para informações sobre como acessar e executar consultas no BigQuery, abra Executar uma consulta e saiba como executar uma consulta interativa e executar uma consulta em lote.
- Para saber como consultar tabelas particionadas, consulte Consultar tabelas particionadas.
Período de armazenamento de dados no BigQuery
O período de armazenamento dos dados no BigQuery é idêntico ao período de armazenamento de dados configurado para seu locatário do Google SecOps. Não há uma configuração separada e configurável para personalizar sua política de retenção de dados no BigQuery. Os dados são automaticamente removidos das tabelas do BigQuery à medida que envelhecem além do período de retenção do seu locatário.
Conjuntos de dados vinculados
Os conjuntos de dados vinculados contêm várias tabelas, cada uma correspondendo a um tipo diferente de dados de segurança.
A tabela a seguir fornece um resumo dos conjuntos de dados disponíveis, a atualização de dados de destino e as chaves primárias usadas para garantir a integridade dos dados:
Nome do conjunto de dados | Descrição | Melhor atualização esperada | Chaves primárias para eliminação de duplicação |
---|---|---|---|
events |
Eventos de segurança normalizados no esquema UDM. Para informações sobre o esquema, consulte Esquema de eventos do Google SecOps. |
Menos de 5 minutos | metadata.id (representação de string) |
rule_detections |
Detecções geradas pelas regras do mecanismo de detecção do Google SecOps. Para informações sobre o esquema, consulte Ver alertas e IoCs no Google SecOps. |
Menos de 5 minutos | Nenhum |
ioc_matches |
Correspondências de IoC encontradas em eventos do UDM. Para informações sobre o esquema, consulte Ver alertas e IoCs no Google SecOps. |
Menos de 5 minutos | Nenhum |
entity_graph |
Dados contextuais sobre entidades (usuários, recursos) e seus relacionamentos. Para informações sobre o esquema, consulte Enriquecer dados de eventos e entidades com o Google SecOps. |
Cerca de 4 horas (em lote) |
Nenhum |
ingestion_metrics |
Estatísticas sobre o volume de ingestão de registros e as fontes de dados. Para informações sobre os esquemas, consulte Esquema de métricas de ingestão e Referência de métricas de ingestão para Looker e BigQuery no Google SecOps. |
Aproximadamente 5 minutos | Nenhum (série temporal somente de anexação) |
Amostras de consultas
Os exemplos a seguir demonstram como consultar os conjuntos de dados para casos de uso de segurança comuns. Substitua PROJECT_ID pelo ID do projeto Google Cloud .
Exemplo: encontrar todas as conexões de rede de um endereço IP específico nas últimas 24 horas
Essa consulta pesquisa na tabela events atividades de rede recentes 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: contar as 10 detecções de regras mais frequentes
Essa consulta na tabela rule_detections ajuda a identificar as ameaças ou violações de política mais comuns detectadas 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
Confira algumas práticas recomendadas para consultas com o Advanced BigQuery Export:
- Otimize para custo:evite
SELECT *
. Na consulta, especifique apenas as colunas necessárias para reduzir a quantidade de dados verificados e os custos da consulta. - Use filtros de partição:a tabela events é particionada pela coluna
hour_time_bucket
. Sempre inclua um filtro de cláusulaWHERE
nessa coluna para limitar as consultas à menor janela de tempo possível, o que melhora significativamente o desempenho e reduz o custo. - Escreva consultas eficientes:o esquema da UDM é amplo e esparso. Para filtrar com eficiência tipos de eventos específicos, use
WHERE... IS NOT NULL
nos campos relevantes. Por exemplo, para encontrar apenas consultas DNS, filtreWHERE network.dns.questions.name IS NOT NULL
. - Validar consultas:use o validador de consultas na interface do BigQuery antes de executar uma consulta. O validador de consultas fornece uma estimativa do processo de dados, ajudando você a evitar consultas inesperadamente grandes e caras.
Limitações conhecidas
Confira as limitações conhecidas do recurso de exportação avançada do BigQuery:
- Latência do gráfico de entidades:o conjunto de dados
entity_graph
é exportado usando um processo em lote e tem uma atualização de dados de aproximadamente quatro horas. - Chaves de criptografia gerenciadas pelo cliente (CMEK): a exportação avançada do BigQuery não está disponível para clientes que ativaram a CMEK na 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 da UDM tem mais de 27.000 campos e é pouco preenchido. O pipeline de exportação inclui de forma inteligente apenas colunas preenchidas para um determinado evento, mantendo a maioria dos clientes bem abaixo do limite. O Google SecOps monitora o uso de colunas e solicita proativamente um aumento de limite para o projeto do locatário se ele se aproximar desse limite.
- Política de retenção:o período de armazenamento de dados para todos os dados de segurança exportados para o BigQuery é sincronizado automaticamente com o período de armazenamento de dados do seu projeto do Google SecOps e não pode ser configurado separadamente.
- Dados que chegam atrasados:em circunstâncias raras, se os dados chegarem muito atrasados ao pipeline de processamento, há uma pequena chance de que eles não sejam mesclados corretamente. O sistema foi projetado para minimizar isso, mas é uma característica conhecida de sistemas de streaming de alta capacidade que dependem da consistência posterior.
- Dados enriquecidos:a cobertura é limitada a eventos únicos do UDM enriquecidos. Os eventos da UDM repletos não são exportados para a instância do BigQuery do projeto do locatário.
- Dados históricos: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 atual. Para consultar dados exportados antes da ativação da exportação avançada do BigQuery, use uma única consulta que una dados dos dois projetos ou execute duas consultas separadas nos respectivos projetos (uma para o conjunto de dados mais antigo e outra para o novo).
Solução de problemas e suporte
A tabela a seguir oferece soluções para problemas comuns que você pode encontrar:
Sintoma observado | Possível causa | Ação recomendada |
---|---|---|
As consultas falham com Access Denied: User does not have permission. |
O usuário ou a conta de serviço não tem os papéis necessários do IAM do BigQuery no projeto Google Cloud vinculado à sua instância do Google SecOps. | Conceda os papéis Leitor de dados do BigQuery e Usuário de jobs do BigQuery ao principal. Verifique isso usando 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. Você não está no projeto Google Cloud correto. 2. Sua organização não está no nível do Enterprise Plus. 3. Sua organização está no nível Enterprise Plus, mas o Advanced BigQuery Export não está ativado na sua instância do Google SecOps. |
1. No console Google Cloud , verifique se você selecionou o projeto vinculado à sua instância do Google SecOps. 2. Entre em contato com seu representante do Google para confirmar o nível da sua licença do Google SecOps. 3. Entre em contato com seu representante do Google SecOps e peça para ativar a exportação avançada do BigQuery na sua instância do Google SecOps. |
Ver o que parecem ser eventos duplicados nos resultados da consulta. | Isso pode acontecer devido a dados que chegam tarde em um fluxo de alta capacidade. O sistema usa a semântica de entrega pelo menos uma vez. | Se você suspeitar de duplicatas, agrupe sua consulta pelas chaves primárias listadas em Conjuntos de dados para receber uma contagem. |
Precisa de mais ajuda? Receba respostas de membros da comunidade e profissionais do Google SecOps.