Nota
O acesso a esta página requer autorização. Pode tentar iniciar sessão ou alterar os diretórios.
O acesso a esta página requer autorização. Pode tentar alterar os diretórios.
As tarefas KQL são consultas KQL únicas ou agendadas em dados no Microsoft Sentinel data lake e tabelas federadas. Utilize tarefas para cenários de investigação e análise, tais como:
- Consultas únicas de execução prolongada para investigações de incidentes e resposta a incidentes (IR)
- Tarefas de agregação de dados que suportam fluxos de trabalho de melhoramento com registos de baixa fidelidade
- Análises de correspondência de informações sobre ameaças históricas (TI) para análise retrospetiva
- Análises de deteção de anomalias que identificam padrões invulgares em várias tabelas
As tarefas KQL são especialmente eficazes quando as consultas utilizam associações ou uniões em diferentes conjuntos de dados.
Utilize tarefas para promover dados da camada do data lake para a camada de análise. Uma vez na camada de análise, utilize o editor de KQL de investigação avançada para consultar os dados. A promoção de dados para o escalão de análise tem as seguintes vantagens:
- Combine dados atuais e históricos na camada de análise ou a partir de tabelas federadas para executar modelos avançados de análise e machine learning nos seus dados.
- Reduza os custos das consultas ao executar consultas no escalão de análise.
- Combinar dados de várias áreas de trabalho para uma única área de trabalho na camada de análise.
- Combine Microsoft Entra ID, Microsoft 365 e Microsoft Resource Graph dados no escalão de análise para executar análises avançadas em origens de dados.
Observação
O armazenamento no escalão de análise incorre em taxas de faturação mais elevadas do que na camada do data lake. Para reduzir os custos, promova apenas os dados que precisa de analisar mais aprofundadamente. Utilize o KQL na consulta para projetar apenas as colunas de que precisa e filtre os dados para reduzir a quantidade de dados promovidos para a camada de análise.
Pode promover dados para uma nova tabela ou acrescentar os resultados a uma tabela existente na camada de análise. Ao criar uma nova tabela, o nome da tabela é sufixo com _KQL_CL para indicar que a tabela foi criada por uma tarefa KQL.
Opcionalmente, pode escrever a saída de uma tarefa KQL noutra tabela no data lake tier para acelerar a investigação ou utilizar os dados melhorados para a investigação de ameaças. Ao criar uma nova tabela, o nome da tabela é sufixo com _KQL se escrever na área de trabalho Tabelas do sistema.
Pré-requisitos
Para criar e gerir tarefas KQL no Microsoft Sentinel data lake, precisa dos seguintes pré-requisitos.
Integrar no data lake
Para criar e gerir tarefas KQL no Microsoft Sentinel data lake, primeiro tem de integrar no data lake. Para obter mais informações sobre a inclusão no data lake, veja Integrar no data lake do Microsoft Sentinel.
Permissões
Microsoft Entra ID funções fornecem acesso amplo a todas as áreas de trabalho no data lake. Para ler tabelas em todas as áreas de trabalho, escrever na camada de análise e agendar tarefas com consultas KQL, tem de ter uma das funções de Microsoft Entra ID suportadas. Para obter mais informações sobre funções e permissões, veja Microsoft Sentinel funções e permissões do data lake.
Para criar novas tabelas personalizadas no escalão de análise, atribua a função Contribuidor do Log Analytics na área de trabalho do Log Analytics à identidade gerida do data lake.
Para atribuir a função, siga estes passos:
- No portal do Azure, aceda à área de trabalho do Log Analytics à qual pretende atribuir a função.
- Selecione Controlo de acesso (IAM) no painel de navegação esquerdo.
- Selecione Adicionar atribuição de função.
- Na tabela Função , selecione *Contribuidor do Log Analytics e, em seguida, selecione Seguinte.
- Selecione Identidade gerida e, em seguida, selecione Selecionar membros.
- A identidade gerida do data lake é uma identidade gerida atribuída pelo sistema com o nome
msg-resources-<guid>. Selecione a identidade gerida e, em seguida, selecione Selecionar. - Selecione Rever e atribuir.
Para obter mais informações sobre como atribuir funções a identidades geridas, veja Atribuir funções de Azure com o portal do Azure.
Criar uma tarefa
Pode criar tarefas para execução com base numa agenda ou numa única vez. Quando cria uma tarefa, especifica a área de trabalho de destino e a tabela para os resultados. Pode escrever os resultados numa nova tabela ou anexá-los a uma tabela existente na camada de data lake ou análise. Não pode escrever os resultados em tabelas federadas. Pode criar uma nova tarefa KQL ou criar uma tarefa a partir de um modelo que contenha as definições da consulta e da tarefa. Para obter mais informações, veja Criar uma tarefa KQL a partir de um modelo.
Inicie o processo de criação de tarefas a partir do editor de consultas KQL ou a partir da página de gestão de tarefas.
Para criar uma tarefa a partir do editor de consultas KQL, selecione o botão Criar tarefa no canto superior direito do editor de consultas.
Para criar uma tarefa a partir da página de gestão de tarefas, selecione Microsoft Sentinel>Data lake exploration>Jobs e, em seguida, selecione o botão Criar tarefa.
Introduza um Nome da tarefa. O nome da tarefa tem de ser exclusivo para o inquilino. Os nomes das tarefas podem conter até 256 carateres. Não pode utilizar um
#ou um-num nome de tarefa.Introduza uma Descrição da Tarefa que forneça o contexto e o objetivo da tarefa.
Na lista pendente Selecionar área de trabalho , selecione a área de trabalho de destino. Esta área de trabalho pode ser tabelas de sistema ou uma área de trabalho Sentinel onde pretende escrever os resultados da consulta.
Selecione a tabela de destino:
- Para acrescentar a uma tabela existente, selecione Adicionar a uma tabela existente e selecione o nome da tabela na lista pendente. Ao adicionar a uma tabela existente, os resultados da consulta têm de corresponder ao esquema da tabela existente.
Reveja ou escreva a consulta no painel Preparar a consulta . Verifique se o seletor de hora está definido para o intervalo de tempo necessário para a tarefa se o intervalo de datas não estiver especificado na consulta.
Selecione as áreas de trabalho para executar a consulta no menu pendente Áreas de trabalho selecionadas . Estas áreas de trabalho são as áreas de trabalho de origem cujas tabelas pretende consultar. As áreas de trabalho que selecionar determinam as tabelas disponíveis para consulta. As áreas de trabalho selecionadas aplicam-se a todos os separadores de consulta no editor de consultas. Ao utilizar várias áreas de trabalho, o
union()operador é aplicado por predefinição a tabelas com o mesmo nome e esquema de diferentes áreas de trabalho. Utilize oworkspace()operador para consultar uma tabela a partir de uma área de trabalho específica, por exemploworkspace("MyWorkspace").AuditLogs.Observação
Se estiver a escrever numa tabela existente, a consulta tem de devolver resultados com um esquema que corresponda ao esquema da tabela de destino. Se a consulta não devolver resultados com o esquema correto, a tarefa falhará quando é executada.
A escrita de tarefas KQL em Tabelas de sistema está atualmente em pré-visualização.
Selecione Avançar.
Na página Agendar a tarefa de consulta , selecione se pretende executar a tarefa uma vez ou com base numa agenda. Se selecionar Uma vez, a tarefa é executada assim que a definição da tarefa estiver concluída. Se selecionar Agendar, pode especificar uma data e hora para a tarefa ser executada ou executar a tarefa com base numa agenda periódica.
Selecione Uma vez ou Tarefa agendada.
Observação
Editar uma tarefa única aciona imediatamente a respetiva execução.
Se tiver selecionado Agendar, introduza os seguintes detalhes:
- Selecione a opção Repetir frequência no menu pendente. Pode selecionar Por minuto, Hora a hora, Diariamente, Semanalmente ou Mensalmente.
- Defina Repetir cada valor para a frequência com que pretende que a tarefa seja executada relativamente à frequência selecionada.
- Em Definir agenda, selecione uma data De e introduza uma hora. A hora de início da tarefa no campo De tem de ser, pelo menos, 30 minutos após a criação da tarefa. A tarefa é executada a partir desta data e hora de acordo com a frequência selecionada na lista pendente Executar a cada .
- Selecione A data e introduza uma hora para especificar quando a agenda de tarefas é concluída. Se quiser que a agenda continue indefinidamente, selecione Definir tarefa para ser executada indefinidamente.
As tarefas de e para as horas são definidas para a região do utilizador.
Observação
Se agendar uma tarefa para ser executada com uma frequência elevada, por exemplo, a cada 30 minutos, tem de ter em conta o tempo necessário para que os dados fiquem disponíveis no data lake. Normalmente, existe uma latência de até 15 minutos antes de os dados recentemente ingeridos estarem disponíveis para consulta.
Selecione Seguinte para rever os detalhes da tarefa.
Reveja os detalhes da tarefa e selecione Submeter para criar a tarefa. Se a tarefa for uma tarefa única, é executada depois de selecionar Submeter. Se a tarefa estiver agendada, é adicionada à lista de tarefas na página Tarefas e executada de acordo com os dados de início e a hora.
A tarefa está agendada e é apresentada a página seguinte. Pode ver a tarefa ao selecionar a ligação.
Criar uma tarefa a partir de um modelo
Pode criar uma tarefa KQL a partir de um modelo de tarefa predefinido. Os modelos de tarefas contêm a consulta KQL e as definições da tarefa, como a área de trabalho de destino e a tabela, agenda e descrição. Pode criar os seus próprios modelos de trabalho ou utilizar modelos incorporados fornecidos pela Microsoft.
Para criar uma tarefa a partir de um modelo, siga estes passos:
Na página Tarefas ou no editor de consultas KQL, selecione Criar tarefa e, em seguida, selecione Criar a partir do modelo.
Na página Modelos de tarefas , selecione o modelo que pretende utilizar na lista de modelos disponíveis.
Reveja a descrição e a consulta KQL do modelo.
Selecione Criar tarefa a partir do modelo.
O assistente de criação de tarefas é aberto com a página Criar uma nova tarefa KQL . Os detalhes da tarefa foram pré-preenchidos a partir do modelo, exceto para a área de trabalho de destino.
Selecione a área de trabalho de destino na lista pendente Selecionar área de trabalho .
Reveja e modifique os detalhes da tarefa conforme necessário e, em seguida, selecione Seguinte para prosseguir com o assistente de criação de tarefas.
Os passos restantes são os mesmos que criar uma nova tarefa. Os campos são pré-preenchidos a partir do modelo e podem ser modificados conforme necessário. Para obter mais informações, veja Criar uma tarefa.
Estão disponíveis os seguintes modelos:
| Nome do modelo | Categoria |
|---|---|
Aumento de localizações anómalos de início de sessãoAnalise a análise de tendências de Entra registos de início de sessão de ID para detetar alterações de localização invulgares para os utilizadores em todas as aplicações através da computação de linhas de tendência de diversidade de localização. Realça as três principais contas com o aumento mais acentuado da variabilidade da localização e lista as respetivas localizações associadas dentro de janelas de 21 dias. Tabela de destino: UserAppSigninLocationTrend Pesquisa de consultas: 1 dia Agenda: diariamente Data de início: Data atual + 1 hora |
Procura |
Comportamento anómalo de início de sessão com base em alterações de localizaçãoIdentifique comportamentos anómalos de início de sessão com base em alterações de localização para Entra utilizadores de ID e aplicações para detetar alterações repentinas no comportamento. Tabela de destino: UserAppSigninLocationAnomalies Pesquisa de consultas: 1 dia Agenda: diariamente Data de início: Data atual + 1 hora |
Detecções de anomalia |
Auditar atividade rara por aplicaçãoEncontre aplicações que efetuem ações raras (por exemplo, consentimento, concessões) que podem criar privilégios silenciosamente. Compare o dia atual com os últimos 14 dias de auditorias para identificar novas atividades de auditoria. Útil para controlar atividades maliciosas relacionadas com adições ou remoção de utilizadores/grupos por Azure Apps e aprovações automatizadas. Tabela de destino: AppAuditRareActivity Pesquisa de consultas: 14 dias Agenda: diariamente Data de início: Data atual + 1 hora |
Procura |
Azure operações raras ao nível da subscriçãoIdentifique eventos confidenciais Azure ao nível da subscrição com base nos Registos de Atividades do Azure. Por exemplo, a monitorização com base no nome da operação "Criar ou Atualizar Instantâneo", que é utilizada para criar cópias de segurança, mas que pode ser utilizada indevidamente pelos atacantes para capturar hashes ou extrair informações confidenciais do disco. Tabela de destino: AzureSubscriptionSensitiveOps Pesquisa de consultas: 14 dias Agenda: diariamente Data de início: Data atual + 1 hora |
Procura |
Tendência de atividade diária por aplicação em AuditLogsNos últimos 14 dias, identifique qualquer operação de "Consentimento para a aplicação" que ocorra por um utilizador ou aplicação. Isto pode indicar que as permissões para aceder ao AzureApp listado foram fornecidas a um ator malicioso. O consentimento para a aplicação, a adição do principal de serviço e a adição de eventos Auth2PermissionGrant devem ser raros. Se disponível, o contexto adicional é adicionado a partir dos AuditLogs com base no CorrleationId da mesma conta que efetuou o "Consentimento para a aplicação". Tabela de destino: AppAuditActivityBaseline Pesquisa de consultas: 14 dias Agenda: diariamente Data de início: Data atual + 1 hora |
Linha de base |
Tendência de localização diária por utilizador ou aplicação em SignInLogsCrie tendências diárias para todos os inícios de sessão dos utilizadores, a contagem de localizações e a respetiva utilização de aplicações. Tabela de destino: UserAppSigninLocationBaseline Pesquisa de consultas: 1 dia Agenda: diariamente Data de início: Data atual + 1 hora |
Linha de base |
Tendência diária de tráfego de rede por IP de destinoCrie uma linha de base, incluindo bytes e elementos distintos para detetar beaconing e exfiltração. Tabela de destino: NetworkTrafficDestinationIPDailyBaseline Pesquisa de consultas: 1 dia Agenda: diariamente Data de início: Data atual + 1 hora |
Linha de base |
Tendência diária de tráfego de rede por IP de destino com estatísticas de transferência de dadosIdentifique o anfitrião interno que alcançou o destino de saída, incluindo tendências de volume, estimando o raio da explosão. Tabela de destino: NetworkTrafficDestinationIPTrend Pesquisa de consultas: 1 dia Agenda: diariamente Data de início: Data atual + 1 hora |
Procura |
Tendência diária de tráfego de rede por IP de origemCrie uma linha de base, incluindo bytes e elementos distintos para detetar beaconing e exfiltração. Tabela de destino: NetworkTrafficSourceIPDailyBaseline Pesquisa de consultas: 1 dia Agenda: diariamente Data de início: Data atual + 1 hora |
Linha de base |
Tendência diária de tráfego de rede por IP de origem com estatísticas de transferência de dadosAs ligações e bytes atuais são avaliados em relação à linha base diária do anfitrião para determinar se os comportamentos observados se desviam significativamente do padrão estabelecido. Tabela de destino: NetworkTrafficSourceIPTrend Pesquisa de consultas: 1 dia Agenda: diariamente Data de início: Data atual + 1 hora |
Procura |
Tendência diária de localização de início de sessão por utilizador e aplicaçãoCrie uma linha de base de início de sessão para cada utilizador ou aplicação com ip e geográficos típicos, permitindo a deteção de anomalias eficiente e económica em escala. Tabela de destino: UserAppSigninLocationDailyBaseline Pesquisa de consultas: 1 dia Agenda: diariamente Data de início: Data atual + 1 hora |
Linha de base |
Tendência de execução diária de processosIdentifique novos processos e prevalência, facilitando as deteções de "novo processo raro". Tabela de destino: EndpointProcessExecutionBaseline Pesquisa de consultas: 1 dia Agenda: diariamente Data de início: Data atual + 1 hora |
Linha de base |
Entra ID de agente de utilizador raro por aplicaçãoEstabeleça uma linha de base do tipo userAgent (ou seja, browser, aplicação do office, etc.) que é normalmente utilizada para uma determinada aplicação ao olhar para trás durante alguns dias. Em seguida, procura no dia atual quaisquer desvios deste padrão, ou seja, tipos de UserAgents não vistos antes em combinação com esta aplicação. Tabela de destino: UserAppRareUserAgentAnomalies Pesquisa de consultas: 7 dias Agenda: diariamente Data de início: Data atual + 1 hora |
Detecções de anomalia |
Correspondência do COI do registo de redeIdentifique quaisquer indicadores IP de comprometimento (IOCs) de informações sobre ameaças (TI), ao procurar correspondências no CommonSecurityLog. Tabela de destino: NetworkLogIOCMatches Pesquisa de consultas: 1 hora Agenda: hora a hora Data de início: Data atual + 1 hora |
Procura |
Novos processos observados nas últimas 24 horasNovos processos em ambientes estáveis podem indicar atividade maliciosa. Analisar sessões de início de sessão em que estes binários foram executados pode ajudar a identificar ataques. Tabela de destino: EndpointNewProcessExecutions Pesquisa de consultas: 14 dias Agenda: diariamente Data de início: Data atual + 1 hora |
Procura |
Operação de ficheiros do SharePoint através de IPs não vistos anteriormenteIdentifique anomalias com o comportamento do utilizador ao definir um limiar para alterações significativas nas atividades de carregamento/transferência de ficheiros a partir de novos endereços IP. Estabelece uma linha de base de comportamento típico, compara-a com a atividade recente e sinaliza desvios que excedem um limiar predefinido de 25. Tabela de destino: SharePointFileOpsNewIPs Pesquisa de consultas: 14 dias Agenda: diariamente Data de início: Data atual + 1 hora |
Procura |
Palo Alto potencial rede beaconingIdentifique os padrões de beaconing dos registos de tráfego da Rede Palo Alto com base em padrões de diferença de tempo recorrentes. A consulta utiliza várias funções KQL para calcular diferenças de tempo e, em seguida, compara-as com o total de eventos observados num dia para encontrar a percentagem de beaconing. Tabela de destino: PaloAltoNetworkBeaconingTrend Pesquisa de consultas: 1 dia Agenda: diariamente Data de início: Data atual + 1 hora |
Procura |
Início de sessão suspeito do Windows fora do horário normalIdentifique eventos de início de sessão invulgares do Windows fora das horas normais de um utilizador ao comparar com a atividade de início de sessão dos últimos 14 dias, sinalizando anomalias com base em padrões históricos. Tabela de destino: WindowsLoginOffHoursAnomalies Pesquisa de consultas: 14 dias Agenda: diariamente Data de início: Data atual + 1 hora |
Detecções de anomalia |
Considerações e limitações
Quando criar tarefas no data lake Microsoft Sentinel, considere as seguintes limitações e melhores práticas:
Camada de dados
As tarefas KQL podem escrever dados na camada Analytics ou na camada data lake, consoante a camada da tabela de destino. Ao criar uma nova tabela através do assistente de criação de tarefas, pode selecionar tabelas de sistema como a área de trabalho de destino para escrever dados diretamente no data lake. As tabelas criadas desta forma são criadas e armazenadas diretamente na camada do data lake e são automaticamente sufixas com _KQL.
KQL
Todos os operadores e funções KQL são suportados, exceto os seguintes:
adx()arg()externaldata()ingestion_time()
Quando utilizar o
stored_query_resultscomando , forneça o intervalo de tempo na consulta KQL. O seletor de tempo acima do editor de consultas não funciona com este comando.As funções definidas pelo utilizador não são suportadas.
Tarefas
- Os nomes das tarefas têm de ser exclusivos para o inquilino.
- Os nomes das tarefas podem ter até 256 carateres.
- Os nomes dos trabalhos não podem conter um
#ou um-. - A hora de início da tarefa tem de ser, pelo menos, 30 minutos após a criação ou edição da tarefa.
Latência da ingestão do Data Lake
A camada do data lake armazena dados no armazenamento a frio. Ao contrário das camadas de análise frequente ou quase em tempo real, o armazenamento a frio é otimizado para retenção de longo prazo e eficiência de custos e não fornece acesso imediato aos dados recentemente ingeridos. Quando são adicionadas novas linhas a tabelas existentes no data lake ou em tabelas federadas, existe uma latência típica de até 15 minutos antes de os dados estarem disponíveis para consulta. Contabilize a latência da ingestão quando executa consultas e agenda tarefas KQL ao garantir que as janelas de pesquisa e os horários das tarefas estão configurados para evitar dados que ainda não estão disponíveis.
Para evitar consultar dados que possam ainda não estar disponíveis, inclua um parâmetro de atraso nas consultas ou tarefas KQL. Por exemplo, quando agenda tarefas automatizadas, defina a hora de fim da consulta como now() - delay, em que delay corresponde à latência de preparação de dados típica de 15 minutos. Esta abordagem garante que as consultas apenas visam dados totalmente ingeridos e prontos para análise.
let lookback = 15m;
let delay = 15m;
let endTime = now() - delay;
let startTime = endTime - lookback;
CommonSecurityLog
| where TimeGenerated between (startTime .. endTime)
Esta abordagem é eficaz para tarefas com janelas de pesquisa curtas ou intervalos de execução frequentes.
Considere sobrepor-se ao período de procura com a frequência da tarefa para reduzir o risco de falta de dados atrasados.
Para obter mais informações, veja Lidar com o atraso da ingestão nas regras de análise agendada.
Nomes de colunas
Os nomes das colunas têm de começar com uma letra.
As seguintes colunas padrão não são suportadas para exportação. O processo de ingestão substitui estas colunas na camada de destino:
TenantId
_TimeReceived
Tipo
SourceSystem
_ResourceId
_SubscriptionId
_ItemId
_BilledSize
_IsBillable
_WorkspaceId
TimeGeneratedé substituído se tiver mais de dois dias. Para preservar a hora do evento original, escreva o carimbo de data/hora de origem numa coluna separada.
Para obter os limites de serviço, veja Microsoft Sentinel data lake service limits (Limites do serviço data lake).
Observação
Os resultados parciais poderão ser promovidos se a consulta da tarefa exceder o limite de uma hora.
Parâmetros de serviço e limites para tarefas KQL
A tabela seguinte lista os parâmetros de serviço e os limites das tarefas KQL no Microsoft Sentinel data lake.
| Categoria | Parâmetro/limite |
|---|---|
| Execução simultânea de trabalhos por inquilino | 3 |
| Tempo limite de execução da consulta da tarefa | 1 hora |
| Tarefas por inquilino (tarefas ativadas) | 100 |
| Número de tabelas de saída por tarefa | 1 |
| Âmbito da consulta | Várias áreas de trabalho |
| Intervalo de tempo da consulta | Até 12 anos |
Para obter sugestões de resolução de problemas e mensagens de erro, veja Resolução de problemas de consultas KQL para o Microsoft Sentinel data lake.