Transmitir dados com a exportação avançada do BigQuery
Neste documento, descrevemos como acessar e usar seus dados do Google SecOps no BigQuery com o recurso BigQuery Export avançado. 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. Esse recurso 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 de ameaças mais oportuna e eficaz.
Antes de começar
Confira 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 Exportar para um projeto autogerenciado do BigQuery.
- 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.
- Migração de dados: quando você ativa esse recurso, seus dados começam a ser exportados para um novo projeto de locatário do BigQuery na sua instância do Google SecOps, além das exportações atuais para o projeto do BigQuery gerenciado pelo Google, conforme descrito em Exportar para um projeto do BigQuery gerenciado pelo Google. Essa operação dupla permite 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.
- VPC Service Controls: o BigQuery Export avançado pode funcionar em um perímetro do VPC Service Controls. Para mais informações, consulte Configurar o VPC Service Controls.
- Chaves de criptografia gerenciadas pelo cliente (CMEK): o Advanced BigQuery Export está disponível para clientes que ativaram a CMEK na instância do Google SecOps. Para mais informações, consulte CMEK para o Google SecOps. Se você usa a CMEK com o VPC Service Controls, consulte Configurar o VPC Service Controls para o Google SecOps para recomendações e instruções.
Visão geral do recurso
O BigQuery Export avançado provisiona e gerencia automaticamente conjuntos de dados essenciais do Google SecOps, incluindo eventos do modelo unificado de dados (UDM), detecções de regras, gráficos de entidades e correspondências de indicadores 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 do 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 ou o armazenamento de dados.
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 relacionamentos entre entidades: a descrição das entidades e das relações delas com outras entidades.
Principais benefícios
Os principais benefícios do BigQuery Export avançado 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 aos 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.
- Integridade de dados e eliminação de duplicação: os dados de segurança são atualizados ou re-enriquecidos com frequência após a ingestão inicial. O recurso usa mesclagens refinadas da linguagem de manipulação de dados (DML) para atualizar registros no local. Você recebe dados limpos e sem duplicações sem escrever rotinas complexas de remoção de duplicações em SQL.
- Suporte integrado para MSSPs (hub-and-spoke): os provedores de serviços de segurança gerenciados (MSSPs) podem gerenciar análises de forma eficiente em vários locatários de clientes ao se inscreverem programaticamente nos conjuntos de dados vinculados dos clientes em um único projeto de hub centralizado.
- Conformidade integrada: o recurso oferece suporte nativo aos VPC Service Controls, às chaves de criptografia gerenciadas pelo cliente (CMEK) e à residência de dados (DRZ). Os registros de auditoria voltados ao cliente (Transparência no acesso) são entregues diretamente ao seu espaço de trabalho do Cloud Logging usando o Federated Resource Identification Service (FRIS).
Casos de uso comuns
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 comuns do BigQuery Export avançado incluem:
- Execute 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 avançada do 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 de processamento.
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_datalake.
Esse modelo oferece isolamento de dados eficiente e acesso de leitura sem problemas.
Terminologia importante
Confira alguns termos e conceitos importantes do BigQuery Export avançado:
- Projeto de locatário: um Google Cloud projeto de locatário que é de propriedade e gerenciado pelo Google SecOps. É nele que os dados de segurança exportados são armazenados e gerenciados fisicamente. Você não tem acesso direto a este projeto.
- BYOP (Bring Your Own Project): 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 exclusivo global do projeto Google Cloud vinculado à sua instância do Google SecOps.
- 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 de dados gerencia o armazenamento físico.
- DML refinada (FGDML): o processo de back-end automatizado que o Advanced BigQuery Export usa para realizar upserts (atualizações e inserções). Se um evento chegar atrasado ou for enriquecido novamente, o sistema vai atualizar a linha existente com base no identificador exclusivo dela (por exemplo,
metadata.id), em vez de criar uma duplicada. - 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.
- Provedores de serviços de segurança gerenciados (MSSPs, na sigla em inglês): Google Cloud os MSSPs certificados oferecem um conjunto abrangente de ferramentas e conhecimentos especializados para reforçar suas defesas contra ameaças de segurança cibernética em constante evolução.
Configurar o sistema
Para usar o BigQuery Export avançado, primeiro configure seu sistema. Dependendo do seu ambiente e dos requisitos, siga as instruções em uma das seções abaixo.
Configuração padrão
Siga estas etapas para configurar seu sistema e usar o Advanced BigQuery Export 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. Você vai encontrar um conjunto de dados vinculado chamado
secops_linked_datalake. 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: obrigatório para que usuários finais ou ferramentas de BI na sua organização executem consultas SQL nas visualizações de conjuntos de dados vinculados.roles/bigquery.jobUser: obrigatório para que usuários finais ou ferramentas de BI na sua organização executem consultas SQL nas visualizações de conjuntos de dados vinculados.Chronicle API Admin: obrigatório no Google SecOps para executar as APIs do plano de dados (por exemplo,ProvisionPartnerSubscription) e gerenciar assinaturas de MSSP.
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 seguinte snippet de código:
SELECT * FROM `PROJECT_ID.secops_linked_datalake.events` LIMIT 10;Substitua PROJECT_ID pelo ID do projeto Google Cloud .
Configurar a exportação avançada do BigQuery em um perímetro do VPC Service Controls
Para configurar o Advanced BigQuery Export no perímetro do VPC Service Controls, configure uma regra de entrada específica. Essa regra permite que as contas de serviço necessárias do Google SecOps interajam com o BigQuery e serviços relacionados nos projetos protegidos pelo perímetro. Para instruções detalhadas e mais informações, consulte Configurar o VPC Service Controls para o Google Security Operations.
Para configurar o Advanced BigQuery Export no perímetro do VPC Service Controls, configure a seguinte regra de entrada:
- ingressFrom: identities: - serviceAccount:malachite-advanced-bq-exporter@system.gserviceaccount.com - serviceAccount:malachite-data-export-service@system.gserviceaccount.com sources: - accessLevel: "*" ingressTo: operations: - serviceName: analyticshub.googleapis.com methodSelectors: - method: "*" - serviceName: bigquery.googleapis.com methodSelectors: - method: "*" resources: - projects/PROJECT_NUMBERSubstitua
PROJECT_NUMBERpelo número do projeto do Google SecOps vinculado ao Google Cloud .
Para MSSPs: configure o acesso centralizado aos dados do BigQuery dos seus sublocatários
Se você for provisionado como um MSSP, poderá usar as APIs do plano de dados do Google SecOps para criar programaticamente conjuntos de dados vinculados do BigQuery no seu projeto central de "hub". Esses conjuntos de dados vinculados apontam para os dados do BigQuery dos seus clientes (spokes), permitindo que você faça consultas em vários locatários em um painel único. Esse processo exige que o cliente conceda acesso à sua instância do MSSP.
Os principais benefícios incluem:
- Visibilidade centralizada:analise os dados de segurança de todos os seus clientes em um só lugar.
- Fluxos de trabalho eficientes:simplifique a busca e a criação de relatórios de ameaças em toda a sua base de clientes.
- Gerenciamento programático:automatize a configuração e a desativação do acesso aos dados.
Pré-requisitos
MSSP
- Um projeto do Google Cloud para servir como seu "hub" central.
- Uma instância do Google SecOps.
- Permissões adequadas do IAM para gerenciar conjuntos de dados do BigQuery no projeto do hub.
Cliente (sublocatário)
- Uma licença do Google SecOps Enterprise Plus.
- Um projeto Google Cloud (BYOP) vinculado à sua instância do Google SecOps.
- Permissões adequadas do IAM para gerenciar o acesso à API do Google SecOps.
- A CLI
gcloudinstalada e autenticada.
Etapa 1: o cliente concede acesso ao MSSP
O cliente pode chamar a API ProvisionPartnerSubscription para conceder permissões à instância do Google SecOps do MSSP. O Google SecOps provisiona automaticamente um conjunto de dados vinculado do BigQuery, nomeado no formato secops_linked_datalake_<customer_id> no projeto Google Cloud do MSSP vinculado à instância do Google SecOps do MSSP. Esse conjunto de dados está vinculado aos dados do Google SecOps do cliente.
Endpoint de API:
POST
https://chronicle.googleapis.com/v1alpha/projects/CUSTOMER_PROJECT/locations/REGION/instances/CUSTOMER_INSTANCE_ID/bigQueryExport:provisionPartnerSubscription
Método
POST
Corpo da solicitação
Objeto JSON vazio.
{}
Exemplo de comando CURL (a ser executado pelo cliente):
curl -X POST \
-H "Authorization: Bearer ${OAUTH_TOKEN}" \
-H "Content-Type: application/json" \
-d '{}' \
"https://chronicle.googleapis.com/v1alpha/projects/CUSTOMER_PROJECT/locations/REGION/instances/CUSTOMER_INSTANCE_ID/bigQueryExport:provisionPartnerSubscription"
Substitua os seguintes marcadores de posição:
- CUSTOMER_PROJECT: o ID do projeto ou o número do projeto do cliente. Google Cloud Consulte Como criar e gerenciar projetos.
- REGION: a região Google Cloud em que a instância do Google SecOps do cliente está localizada (por exemplo, us, europe-west2). Confira a lista de regiões.
- CUSTOMER_INSTANCE_ID: o ID da instância do Google SecOps do cliente.
Corpo da resposta
Retorna ProvisionPartnerSubscriptionResponse com os detalhes da assinatura.
{
"subscriptionDetails": {
"subscription": "projects/SUBSCRIBER_PROJECT_ID/locations/SUBSCRIBER_REGION/subscriptions/SUBSCRIPTION_ID",
"linkedDataset": "string"
}
}
- SUBSCRIBER_PROJECT_ID: o ID do projeto do MSSP do assinante Google Cloud .
- SUBSCRIBER_REGION: a região em que o Google Cloud Project do assinante está localizado.
- SUBSCRIPTION_ID: um identificador exclusivo da assinatura atual.
Etapa 2: o MSSP consulta dados em vários locatários
Depois que os conjuntos de dados vinculados de vários clientes forem provisionados no seu projeto (MSSP) Google Cloud , você poderá usar consultas SQL padrão do BigQuery para analisar os dados. Para consultar vários clientes, use o operador UNION ALL.
Exemplo de consulta (a ser executada pelo MSSP no projeto do hub):
SELECT event_type, timestamp
FROM `PARTNER_PROJECT_ID.secops_linked_datalake_CUSTOMER_ID_1.events`
WHERE <your_conditions>
UNION ALL
SELECT event_type, timestamp
FROM `PARTNER_PROJECT_ID.secops_linked_datalake_CUSTOMER_ID_2.events`
WHERE <your_conditions>
-- Add more UNION ALL clauses for other customers
Etapa 3: o cliente audita o acesso
O cliente pode chamar a API fetchSubscriptions para ver todas as assinaturas ativas e instâncias do MSSP que acessam os dados dele.
endpoint de API
GET https://chronicle.googleapis.com/v1alpha/projects/CUSTOMER_PROJECT/locations/REGION/instances/CUSTOMER_INSTANCE_ID/bigQueryExport:fetchSubscriptions
Método
GET
Exemplo de comando CURL (a ser executado pelo cliente):
curl -X GET \
-H "Authorization: Bearer ${OAUTH_TOKEN}" \
"https://chronicle.googleapis.com/v1alpha/projects/CUSTOMER_PROJECT/locations/REGION/instances/CUSTOMER_INSTANCE_ID/bigQueryExport:fetchSubscriptions"
Substitua os seguintes marcadores de posição:
- CUSTOMER_PROJECT: o ID do projeto ou o número do projeto do cliente. Google Cloud Consulte Como criar e gerenciar projetos.
- REGION: a região Google Cloud em que a instância do Google SecOps do cliente está localizada (por exemplo, us, europe-west2). Confira a lista de regiões.
- CUSTOMER_INSTANCE_ID: o ID da instância do Google SecOps do cliente.
Corpo da resposta
Retorna FetchSubscriptionsResponse com uma lista de assinaturas ativas.
{
"subscriptions": [
{
"subscription": "projects/SUBSCRIBER_PROJECT_ID/locations/SUBSCRIBER_REGION/subscriptions/SUBSCRIPTION_ID",
"linkedDataset": "string"
}
]
}
- SUBSCRIBER_PROJECT_ID: o ID do projeto do assinante Google Cloud . O assinante pode se referir ao cliente ou a um MSSP.
- SUBSCRIBER_REGION: a região em que o Google Cloud Project do assinante está localizado.
- SUBSCRIPTION_ID: um identificador exclusivo da assinatura atual.
Etapa 4: o cliente revoga o acesso (se necessário)
Se um cliente precisar revogar o acesso de um MSSP, ele poderá usar a API "revokePartnerSubscription". Essa ação revoga imediatamente a permissão para consultar o conjunto de dados vinculado usando o projeto do hub do MSSP. O ID da assinatura revogada fica inativo.
endpoint de API
POST https://chronicle.googleapis.com/v1alpha/projects/CUSTOMER_PROJECT/locations/REGION/instances/CUSTOMER_INSTANCE_ID/bigQueryExport:revokePartnerSubscription
Método
POST
Corpo da solicitação
Requer o URI da assinatura a ser revogada, que foi obtido na chamada de API fetchSubscriptions.
{
"subscriptionUri": "projects/SUBSCRIBER_PROJECT_ID/locations/SUBSCRIBER_REGION/subscriptions/SUBSCRIPTION_ID"
}
Exemplo de comando CURL (a ser executado pelo cliente):
# Set subscription details obtained from Fetch Subscriptions
export SUBSCRIBER_PROJECT_ID="partner-byop-project-id"
export SUBSCRIBER_REGION="subscription-location"
export SUBSCRIPTION_ID="subscription-id"
curl -X POST \
-H "Authorization: Bearer ${OAUTH_TOKEN}" \
-H "Content-Type: application/json" \
-d '{
"subscriptionUri": "projects/SUBSCRIBER_PROJECT_ID/locations/SUBSCRIBER_REGION/subscriptions/SUBSCRIPTION_ID"
}' \
"https://chronicle.googleapis.com/v1alpha/projects/CUSTOMER_PROJECT/locations/REGION/instances/CUSTOMER_INSTANCE_ID/bigQueryExport:revokePartnerSubscription"
Substitua os seguintes marcadores de posição:
- SUBSCRIBER_PROJECT_ID: o ID do projeto do assinante Google Cloud .
- SUBSCRIBER_REGION: a região em que o Google Cloud Project do assinante está localizado.
- SUBSCRIPTION_ID: um identificador exclusivo da assinatura atual.
- CUSTOMER_PROJECT: o ID do projeto ou o número do projeto do cliente. Google Cloud
- REGION: a região do Google Cloud em que a instância do Google SecOps do cliente está localizada.
- CUSTOMER_INSTANCE_ID: o ID da instância do Google SecOps do cliente.
Corpo da resposta
Objeto JSON vazio.
{}
Consultar 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 projeto de locatário do BigQuery
O período de armazenamento dos dados no BigQuery é idêntico ao período de retenção 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 tabelas correspondentes a diferentes tipos de dados de segurança.
A tabela a seguir oferece um resumo dos conjuntos de dados disponíveis, da atualização de dados desejada e dos identificadores exclusivos usados para garantir a integridade dos dados:
| Nome do conjunto de dados | Descrição | Melhor atualização esperada | Identificadores exclusivos para remoção de duplicação |
|---|---|---|---|
events | Eventos de segurança normalizados no esquema do UDM. Para informações sobre o esquema, consulte Esquema de eventos do Google SecOps. | Menos de 5 minutos | id (representação de string) |
rule_detections | Detecções geradas pelas regras do mecanismo de detecção do Google SecOps. | Menos de 5 minutos | detection.id |
ioc_matches | Correspondências de indicador de comprometimento (IOC) encontradas em eventos do UDM. | Menos de 5 minutos | Chave composta de day_bucket_seconds, feed_log_type, ioc_type, ioc_value |
entity_graph | Dados contextuais sobre entidades (usuários, recursos) e os relacionamentos delas. | Cerca de 4 horas (em lote) | Chave composta de partition_day, metadata.product_entity_id, metadata.event_metadata.id |
ingestion_metrics | Estatísticas sobre o volume de ingestão de registros e fontes de dados. | ~5 minutos | Nenhum (série temporal somente de anexos) |
entity_enum_value_to_name_mapping | Mapeia valores numéricos para valores de string para tipos enumerados de gráfico de entidade. | N/A | Nenhum |
udm_enum_value_to_name_mapping | Mapeia valores numéricos para valores de string em tipos enumerados de eventos da UDM. | N/A | Nenhum |
Amostras de consultas
Os exemplos a seguir demonstram como consultar os conjuntos de dados para casos de uso de segurança comuns.
Exemplo: encontrar todas as conexões de rede de um endereço IP específico nas últimas 24 horas
Essa consulta pesquisa na tabela de eventos 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_datalake.events`
WHERE
principal.ip = '192.0.2.1'
AND metadata.event_timestamp > TIMESTAMP_SUB(CURRENT_TIMESTAMP(), INTERVAL 24 HOUR);
- Substitua PROJECT_ID pelo ID do projeto Google Cloud .
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_datalake.rule_detections`
WHERE
detection.id IS NOT NULL
GROUP BY
1
ORDER BY
2 DESC
LIMIT
10;
- Substitua PROJECT_ID pelo ID do projeto Google Cloud .
Práticas recomendadas
Confira algumas práticas recomendadas para consultar com o Advanced BigQuery Export:
Otimize os custos de consulta:embora o armazenamento seja sem custo financeiro, os custos de computação são faturados ao seu projeto. Portanto, faça o seguinte:
- Evite SELECT *. Na sua consulta, especifique apenas as colunas necessárias para reduzir a quantidade de dados verificados e os custos da consulta.
- Verifique se as consultas aproveitam o particionamento do BigQuery (usando a coluna de tempo de partição hour_time_bucket) e o clustering (hour_time_bucket, log_type, event_type, id) para verificar menos dados e reduzir significativamente os custos de consulta.
Usar filtros de partição:a tabela de eventos é particionada pela coluna hour_time_bucket. Sempre inclua um filtro de cláusula WHERE 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 tipos de eventos específicos de maneira eficiente, 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 interface do BigQuery antes de executar uma consulta. O validador de consultas fornece uma estimativa dos dados processados, ajudando você a evitar consultas inesperadamente grandes e caras.
Usar tabelas de mapeamento de enumeração:a exportação avançada do BigQuery inclui as tabelas entity_enum_value_to_name_mapping e udm_enum_value_to_name_mapping. Use-as para fazer junção com seus eventos e traduzir valores numéricos de enumeração em strings legíveis sem escrever lógica de tradução manual nas consultas.
Integração de geração de registros de auditoria:o BigQuery Export avançado se integra ao Serviço de identificação de recursos federados (FRIS, na sigla em inglês). Os registros de auditoria voltados ao cliente, que usam o recurso de Transparência no acesso do Google, são entregues nativamente no seu espaço de trabalho do Cloud Logging BYOP se a equipe do Google acessar o projeto de locatário gerenciado.
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.
- Limites de colunas do esquema da UDM:o BigQuery tem um limite flexível de 10.000 colunas por tabela. O esquema da UDM contém mais de 27.000 campos e é pouco preenchido. O pipeline de exportação inclui de maneira inteligente apenas as colunas preenchidas de 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 seu projeto de locatário se ele se aproximar desse limite.
- O período de armazenamento não é configurável: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 armazenamento de dados do seu projeto do Google SecOps e não pode ser configurado separadamente.
- Dados do SOAR não são compatíveis:os dados do SOAR (search_everything_db) do Google Security Operations não são compatíveis com a exportação avançada do BigQuery.
- A federação entre regiões não é compatível:as assinaturas de MSSP hub-and-spoke são compatíveis na mesma região. A federação entre regiões (por exemplo, dos EUA para a Europa) não é compatível.
- É possível ter eventos duplicados (menos de 1% de probabilidade): embora o sistema use mesclagens de DML para processar a remoção de duplicação automaticamente, devido à natureza do streaming distribuído, há uma possibilidade remota (< 1%) de eventos duplicados aparecerem durante janelas de ingestão de casos extremos antes da conclusão da mesclagem em segundo plano.
- Os dados históricos podem ser acessados, mas exigem métodos específicos:a exportação de dados começa no momento em que o Advanced BigQuery Export é ativado, e os dados mais antigos permanecem acessíveis no projeto atual. Para consultar dados exportados antes da ativação da exportação avançada do BigQuery, use uma única consulta que une 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 ao principal os papéis de Leitor de dados do BigQuery e Usuário de jobs do BigQuery. Verificar 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_datalake 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 o BigQuery Export avançado na sua instância do Google SecOps. |
A chamada de API falha com um erro de permissão para ProvisionPartnerSubscription ou FetchSubscriptions | A identidade de chamada não tem as permissões necessárias. | Verifique se a conta de serviço ou o usuário que faz a chamada tem o papel de administrador da API Chronicle do IAM, que inclui permissões no recurso de instância do hub. |
| Colunas personalizadas ausentes ou incompatibilidade de esquema | Um novo tipo de registro ou um campo UDM profundamente aninhado foi ingerido. | O BigQuery Export avançado usa atualizações dinâmicas de esquema. Quando novos campos de UDM são preenchidos, o sistema detecta automaticamente a incompatibilidade de esquema, faz uma pausa breve, atualiza o esquema do BigQuery e tenta inserir novamente. Nenhuma ação é necessária. |
Perguntas frequentes
Confira a seguir algumas perguntas frequentes.
Preciso modificar minhas consultas SQL legadas do BigQuery para usar a exportação avançada do Google SecOps?
Não. Para manter 100% de compatibilidade com versões anteriores, o Google SecOps expõe visualizações (por exemplo, eventos, ioc_matches) no conjunto de dados vinculado que correspondem perfeitamente ao esquema das tabelas do recurso de exportação legado do Google SecOps.
Posso ajustar o período de armazenamento de dados da minha exportação avançada do BigQuery?
Não. O período de armazenamento de dados na BigQuery Export avançada reflete diretamente sua política de retenção de dados do Google SecOps. Quando os dados expiram no Google SecOps, eles expiram automaticamente e são excluídos do projeto de locatário do BigQuery.
Vou receber cobranças pelas atualizações de DML e pela remoção de duplicações no back-end?
Não. Todos os custos de armazenamento de back-end, operações de inserção por streaming e computação DML refinada são absorvidos pelo Google SecOps. Você paga apenas pelas consultas que executa explicitamente no BYOP.
Esse recurso está disponível para os níveis Standard ou Enterprise do Google SecOps?
Não. O BigQuery Export avançado (armazenamento gerenciado e streaming) é um recurso premium exclusivo do nível Enterprise Plus do Google SecOps. Os clientes Standard e Enterprise podem usar o modelo BYOBQ (Bring Your Own BigQuery), em que fornecem o projeto do BigQuery e cobrem os custos de armazenamento e computação.
Por que posso encontrar diferenças temporárias nas contagens entre os dados da exportação avançada do BigQuery e as estatísticas mostradas na interface do Google Security Operations?
Discrepâncias temporárias podem ocorrer devido à natureza de streaming quase em tempo real do pipeline do BigQuery Export avançado. Confira os principais motivos:
Dados que chegam tarde:o pipeline de exportação foi projetado para ter alta capacidade de processamento. A maioria dos dados aparece no BigQuery em 5 a 10 minutos. No entanto, às vezes, os eventos podem chegar atrasados ao pipeline de processamento devido a atrasos na rede ou problemas no sistema de origem. Embora o sistema tente mesclar esses eventos atrasados, pode haver um breve período em que as estatísticas da UI em tempo real, que refletem o estado mais recente, sejam diferentes dos dados do BigQuery, que estão passando por atualizações contínuas.
Reenriquecimento de dados:o Google SecOps enriquece continuamente os dados de eventos com as informações contextuais e de inteligência contra ameaças mais recentes. A exportação avançada do BigQuery exporta eventos com base no estado deles no momento do enriquecimento inicial. Se um evento for enriquecido novamente com novas informações depois de ser transmitido para o BigQuery, essa versão atualizada poderá não ser refletida imediatamente no BigQuery. Isso pode levar a diferenças ao comparar com elementos da UI que sempre mostram os dados totalmente repletos.
Latência de mesclagem da DML:para manter os dados no BigQuery atualizados e lidar com dados atrasados ou possíveis duplicidades, o pipeline usa operações
MERGEda linguagem de manipulação de dados (DML) em segundo plano. Essas operações, embora eficientes, não são instantâneas. Há uma latência inerente à medida que essas fusões são processadas, especialmente para atualizações refinadas. Durante esse intervalo de fusão, as consultas no BigQuery podem não capturar as microatualizações mais recentes que já estão visíveis na interface do Google Security Operations.
Devido aos fatores mencionados (dados atrasados, processamento de re-enriquecimento e latências de mesclagem), uma correspondência perfeita de 1:1 entre o BigQuery e as estatísticas da UI em tempo real em qualquer segundo preciso nem sempre ocorre. A exportação avançada do BigQuery fornece dados quase em tempo real, otimizados para casos de uso como busca de ameaças, análises personalizadas e painéis em que a atualização dos dados em minutos é crucial. Para fins de auditoria que exigem consistência absoluta em um determinado momento, considere a possibilidade de diferenças pequenas e temporárias.
Precisa de mais ajuda? Receba respostas de membros da comunidade e profissionais do Google SecOps.