Criar e gerenciar regras de detecção
Visualização
O Lakewatch está em visualização privada. Para solicitar acesso, entre em contato com a equipe da sua account Databricks.
As regras de detecção são filtros em execução em suas tabelas para identificar anomalias e possíveis ameaças à segurança. As regras geralmente consomem dados das tabelas analisadas escritas por suas fontes de dados, mas podem ser executadas em qualquer tabela que você possa query. As regras identificam sinais com base nos critérios especificados.
Esta página aborda como criar, view, atualizar e gerenciar regras de detecção na interface do usuário.
Crie e gerencie regras de detecção na IU
Esta página aborda a configuração e implantação de regras de detecção na IU. Você configurará os parâmetros de execução da regra, programar, os recursos de compute e as configurações de geração de sinal.
Antes de começar
Pré-requisitos : Você já deve ter projetado sua lógica de detecção. Esta página configura como essa lógica é executada em produção.
Fluxo de trabalho : Após concluir este formulário, o Lakewatch agenda e execução sua regra de detecção de acordo com suas configurações. As correspondências geram sinais, que o Lakewatch agrupa em alertas que aparecem no painel lateral de alertas para revisão do analista. Você também pode query sinais diretamente na signals tabela de sistema no Unity Catalog.
Como posso criar regras de detecção?
Vá para Regras de detecção e clique em Criar regra de detecção . O formulário inclui configuração de SQL e query, com configurações organizadas em tab:
- Execução : programar, estado ativo, supressão de alerta e principal de execução como.
- Sinais : Resumo da saída, campos de contexto e desduplicação.
- MITRE ATT&CK (opcional): Mapeie a detecção para o framework MITRE ATT&CK.
- Detalhes : Metadados da classificação (severidade, categoria, fidelidade, objetivo).
Esses controles de cabeçalho se aplicam em toda a extensão:
- Criar com Genie : Abre um painel lateral acoplado onde o Genie (um assistente de AI) ajuda você a escrever e refinar a lógica de detecção. Slogan do Genie: "Crie, revise e refine regras de detecção com um parceiro de AI."
- Editar como YAML : Alterne entre o formulário e a edição da regra como YAML; os dois permanecem sincronizados. Consulte Editar uma regra como YAML.
- Ativo (alternar): Se a regra está habilitada e é execução em seu programar.
- Editar supressão de alerta (botão): Quando a supressão está ativada, uma regra ativa ainda está em execução e produz sinais, mas esses sinais não abrem alertas. Defina uma data e hora até para quando a supressão termina (obrigatório). As horas usam o seu fuso horário local e são armazenadas como UTC.
Configuração da regra
Dê um nome à regra, defina sua lógica de detecção e selecione seu warehouse de compute:
- Nome da regra (obrigatório): insira um nome para a regra. Não pode ser alterado após a criação.
- SQL de detecção (obrigatório): escreva sua lógica de detecção como SQL inline. Veja Escrever regras de detecção para saber como funciona o SQL de detecção.
- SQL warehouse (obrigatório): Uma regra de detecção executa o SQL de detecção em um SQL warehouse selecionado por você, em seu próprio job isolado. As regras não usam agrupamento de clusters ou configurações de compute personalizadas. Se você não tiver um warehouse dimensionado para cargas de trabalho de detecção, consulte o guia de warehouse de detecção.
- Descrição (opcional): Uma breve descrição da função da sua regra, por exemplo "Detecta preenchimento de credenciais" ou "Identifica grandes anexos de email."
- Principal de execução (opcional): O usuário ou service principal que a regra usa como execução. default para o criador da regra.
Tab de execução
Configure quando a regra entra em execução, se está ativa e como os alertas são suprimidos:
-
Ativo (alternar): Se a regra está habilitada e é execução em sua programar. default: ativado.
-
Programar (botão "Editar programar"): Defina com que frequência a regra é colocada em execução, utilizando um de dois tipos de programar:
- Pelo menos a cada : a regra tem execução pelo menos com essa frequência (mínimo de 5 minutos), mas pode ter execução com mais frequência em determinadas circunstâncias. Defina uma quantidade e uma unidade: minutos, horas ou dias.
- Exatamente em : A regra é execução em um programar cron. Crie-o com o controle Cada N e uma unidade (minuto, hora, dia, semana ou mês) mais o controle em , ou selecione Mostrar sintaxe cron para inserir uma expressão cron do Quartz diretamente.
- De qualquer forma, a regra é um trabalho em lote que entra em execução no SQL Warehouse selecionado no passo Regra e entrada , em seu próprio Job isolado. O agrupamento de clusters e as configurações de compute não se aplicam.
-
Supressão de alertas (botão “Editar supressão de alertas”): Quando ativado, a regra ainda está em execução e produz sinais, mas esses sinais não abrem alertas. Defina uma data e hora até que a supressão termine (obrigatório). Os horários usam seu fuso horário local e são armazenados como UTC.
Tab de sinais
Configure os sinais produzidos pela regra e controle a desduplicação:
Resumo
O resumo do sinal aparece na lista de resultados de detecção e fornece aos analistas um título rápido e descritivo do que foi detectado. Este campo permite criar mensagens de alerta dinâmicas incorporando dados do evento original usando expressões SQL entre chaves {sql-expression}. Sinais que compartilham um resumo, ID de regra e versão são agrupados em um único alerta; se todas as suas linhas de saída também corresponderem dentro da janela de desduplicação, a duplicata será descartada. Para evitar a criação de um número excessivo de alertas, mantenha o resumo geral e evite expansões de campo que produzam um valor exclusivo em cada correspondência, como um timestamp ou ID de evento.
Exemplo :
Brute force attempt detected for `{user.name}`
Contexto
O campo context anexa metadados estruturados ao evento de sinal como pares key-value. Cada key é um rótulo e cada valor pode incluir expressões SQL entre chaves {sql-expression} para inserir detalhes do evento. Por exemplo, uma key de source_ip com um valor de {src_endpoint.ip}.
Como alternativa, alterne Incluir todos os dados para gravar automaticamente todas as colunas da linha de entrada que dispararam o sinal.
Deduplicação
Controle se o Lakewatch ignora sinais duplicados produzidos por esta regra. Consulte Desduplicação de sinal para ver como as duplicatas são identificadas e como a janela de tempo funciona.
- Desduplicação : Ative para descartar sinais cujas linhas de saída inteiras são idênticas dentro da janela de tempo; desative para registrar todos os sinais.
- Janela de tempo de deduplicação : Automático (recomendado) deriva a janela do programar da regra. Uma janela personalizada não pode exceder 7 dias.
Tab MITRE ATT&CK
Mapeie a detecção para o framework MITRE ATT&CK para uma categorização de ameaças padronizada:
O MITRE ATT&CK® é uma base de conhecimento globalmente acessível de táticas e técnicas de adversários com base em observações do mundo real. A base de conhecimento ATT&CK é usada como base para o desenvolvimento de modelos e metodologias de ameaças específicas no setor privado, no governo e na comunidade de produtos e serviços de cibersegurança.
Se a detecção mapear para o framework MITRE ATT&CK, preencha os campos a seguir para ajudar os analistas a entender o contexto da ameaça e permitir uma melhor caça a ameaças:
Clique em Adicionar para criar um mapeamento e, em seguida, preencha essas listas suspensas. Adicione quantos mapeamentos forem aplicáveis:
- Taxonomia : A matriz MITRE ATT&CK, como Enterprise.
- Tática : O objetivo tático do adversário.
- Técnica : o método usado para atingir a tática.
- Subtécnica : uma variação específica da técnica.
Tab de detalhes
Defina os metadados de classificação da regra:
Campos obrigatórios:
-
Gravidade : Uma avaliação da gravidade da ameaça, usada para atribuir pontuações de risco aos sinais. Valores:
Informational,Low,Medium,High,Critical. -
Categoria : uma classificação que descreve a metodologia de detecção. Todos os Workspace do Lakewatch incluem estas categorias default:
- Assinatura estática - Para regras que correspondem a padrões exatos (ex.: hashes de malware conhecidos)
- Assinatura Difusa - Para correspondência de padrões com tolerância de variação (por exemplo, assuntos de phishing semelhantes)
- Comportamental - para detecção baseada em ação (por exemplo, sequências de escalonamento de privilégios)
- Estatística - para detecção baseada em limite (por exemplo, volume de login incomum)
- Aprendizado (AI/ML) - Para detecção baseada em ML (por exemplo, modelos de detecção de anomalia)
Categorias personalizadas podem ser adicionadas na configuração do workspace. As categorias ajudam a organizar regras, filtrar detecções por metodologia e entender a cobertura de detecção.
Obrigatório condicionalmente:
- Fidelidade : O nível de maturidade da regra. Regras recém-criadas e não testadas devem ser marcadas como
DevelopmentouInvestigative. Regras mais antigas e bem testadas devem ser marcadas comoHigh. Isso ajuda os analistas a determinar a probabilidade de um sinal ser um falso positivo. Valores:Development,Investigative,Medium,High. (Obrigatório apenas para criação de regras; pode ficar em branco para rascunhos.)
Campos opcionais:
- Objetivo : uma descrição mais longa para a documentação detalhada da regra; você pode incluir seu raciocínio para a criação da regra, metodologia de teste e/ou notas de implementação.
- Anotações (Pares key-value) : Um método de categorização adicional que usa um sistema de tagging flexível para organização personalizada.
Criar ou cancelar a regra
Depois de preencher todos os campos obrigatórios, clique em Criar regra para salvar e implantar a regra. Clique em Cancelar para descartar as alterações.
Edite uma regra como YAML
O formulário de regra inclui um botão Editar como YAML que abre um editor YAML. O formulário e o editor YAML permanecem sincronizados: as alterações que você faz no YAML preenchem o formulário, e o YAML sempre reflete os valores atuais do formulário. Use o editor YAML para revisar uma regra completa de uma só vez ou para copiar uma regra e ajustar alguns campos.
O YAML de uma regra usa nomes de campo simples e snake_case, e cada campo mapeia para um controle no assistente. O exemplo a seguir define uma regra agendada que lê eventos de autenticação analisados e gera um sinal para cada login correspondente:
catalog_name: security
schema_name: detections
rule_name: suspicious_login_activity
description: Detects login attempts from unusual locations.
severity: High
category: Behavioral
fidelity: FIDELITY_INVESTIGATIVE
schedule:
enabled: true
at_least_every: 1h
batch:
sql:
query: |
SELECT
time,
actor.user.name AS user_name,
src_endpoint.ip AS source_ip
FROM security.parsed.authentication_events
WHERE IN_TIMERANGE(time)
AND activity_name = 'Logon'
output:
event_time_column: time
summary: 'Suspicious login from {source_ip} by {user_name}'
context:
user_name: '{user_name}'
source_ip: '{source_ip}'
default_context: false
Campos de regra
Cada campo mapeia para um controle de assistente descrito acima. Para saber o que um campo faz, consulte o passo do assistente.
Campo YAML | Controle de assistente | Obrigatório | Notas |
|---|---|---|---|
| Catálogo | Sim | Não pode ser alterado após a criação da regra. |
| Esquema | Sim | Não pode ser alterado após a criação da regra. |
| Nome | Sim | Não pode ser alterado após a criação da regra. |
| Descrição | Não | |
| Identidade de Run-as | Não | Um email de usuário ou ID de aplicativo de service principal. O default é o criador da regra. |
| SQL de detecção | Sim | A query de detecção. Use |
| Compute | Não | O ID do SQL warehouse em que a regra é executada. |
| Gravidade | Sim | Um de |
| Categoria | Não | Um rótulo de categoria, como |
| Fidelidade | Sim | Um de |
| Objetivo | Não | |
| MITRE ATT&CK | Não | Uma lista de mapeamentos, cada um com |
| Resumo | Não | Suporta |
| Contexto | Não | Um mapa de key/valor. Os valores oferecem suporte a substituições de |
| Incluir todos os dados | Não | Quando |
| — | Não | A coluna de saída que contém o timestamp do evento. |
| Deduplicação | Não | Um de |
| Janela de tempo de desduplicação | Não | Uma duração como |
| Ativas | Não | Se a regra está em execução conforme seu programar. O padrão é default |
| Pelo menos a cada | Um de | Um intervalo como |
| Exatamente em | Um de | Uma expressão cron do Quartz, para programar Exatamente em . |
| Suprimir até | Não | Um timestamp até o qual os sinais da regra não abrem alertas. |
| anotação | Não | Um mapa de key/valor. |