Monitorize o estado e audite a integridade das suas regras de análise

Para garantir uma deteção de ameaças abrangente, ininterrupta e sem adulteração no serviço Microsoft Sentinel, controle o estado de funcionamento e a integridade das regras de análise. Mantém-nos a funcionar de forma ideal, monitorizando as informações sobre a execução das regras de análise, consultando os registos de estado de funcionamento e de auditoria, e recorrendo à reexecução manual para testar e otimizar as regras de análise.

Configure notificações de eventos de estado de funcionamento e auditoria para intervenientes relevantes, que podem então tomar medidas. Por exemplo, defina e envie e-mails ou mensagens do Microsoft Teams, crie novos pedidos de suporte no seu sistema de pedidos de suporte e assim sucessivamente.

Este artigo descreve como utilizar a auditoria e monitorização da saúde do Microsoft Sentinel no Microsoft Sentinel para acompanhar a saúde e integridade das suas regras de análise a partir do próprio Microsoft Sentinel.

Para obter informações detalhadas sobre as regras e sobre a reexecução manual de regras, consulte Monitorizar e otimizar a execução das suas regras de análise agendadas.

Resumo

O Microsoft Sentinel fornece dois tipos de registos para monitorizar regras de análise: registos de saúde e registos de auditoria. As secções seguintes resumem o que cada registo capta e onde os dados estão armazenados.

  • Microsoft Sentinel registos de estado de funcionamento da regra de análise:

    • Este registo captura eventos que registam a execução de regras de análise e o resultado final destas execuções— se foram bem-sucedidas ou falharam e, se falharam, porquê.
    • O registo também regista, para cada execução de uma regra de análise:
      • Quantos eventos a consulta da regra capturou.
      • Se o número de eventos passou o limiar definido na regra, fazendo com que a regra acione um alerta.

    Estes registos são recolhidos na tabela SentinelHealth no Log Analytics.

  • Microsoft Sentinel registos de auditoria das regras de análise:

    • Este registo captura eventos que registam as alterações efetuadas a qualquer regra de análise, incluindo os seguintes detalhes:
      • O nome da regra que foi alterada.
      • Que propriedades da regra foram alteradas.
      • O estado das definições da regra antes e depois da alteração.
      • O utilizador ou identidade que efetuou a alteração.
      • O IP de origem e a data/hora da alteração.
      • ... e muito mais.

    Estes registos são recolhidos na tabela SentinelAudit no Log Analytics.

Utilizar as tabelas de dados SentinelHealth e SentinelAudit

Para obter dados de auditoria e saúde das tabelas SentinelHealth e SentinelAudit, deve primeiro ativar a funcionalidade de saúde do Microsoft Sentinel para o seu espaço de trabalho. Para obter mais informações, consulte Ativar a auditoria e a monitorização da integridade para Microsoft Sentinel.

Uma vez ativada a funcionalidade de saúde, a tabela de dados SentinelHealth é criada no primeiro evento de sucesso ou falha gerado para as suas regras de análise.

Compreender os eventos das tabelas SentinelHealth e SentinelAudit

A tabela SentinelHealth regista os seguintes tipos de eventos de estado de funcionamento das regras de análise:

  • Execução da regra de análise agendada.
  • Execução de regras de análise em tempo quase real (NRT).

Para obter mais informações, veja SentinelHealth table columns schema (Esquema de colunas de tabela SentinelHealth).

A tabela SentinelAudit regista os seguintes tipos de eventos de auditoria de regras de análise:

  • Criar ou atualizar a regra de análise.
  • Regra de análise eliminada.

Para obter mais informações, veja SentinelAudit table columns schema (Esquema de colunas de tabela SentinelAudit).

Executar consultas para detetar problemas de integridade e estado de funcionamento

Para obter os melhores resultados, crie as consultas nas funções pré-criadas para estas tabelas , _SentinelHealth() e _SentinelAudit(), em vez de consultar diretamente as tabelas. Estas funções mantêm a retrocompatibilidade das consultas se forem feitas alterações ao esquema das tabelas.

Como primeiro passo, filtre as tabelas para obter dados relacionados com regras de análise. Utilize o SentinelResourceType parâmetro .

_SentinelHealth()
| where SentinelResourceType == "Analytics Rule"

Se quiser, pode filtrar ainda mais a lista para um determinado tipo de regra de análise. Utilize o SentinelResourceKind parâmetro para tal.

| where SentinelResourceKind == "Scheduled"

# OR

| where SentinelResourceKind == "NRT"

Seguem-se algumas consultas de exemplo para o ajudar a começar:

  • Encontre regras que sejam "regras de análise agendadas desativadas automaticamente":

    _SentinelHealth()
    | where SentinelResourceType == "Analytics Rule"
    | where Reason == "The analytics rule is disabled and was not executed."
    
  • Conte as regras e execuções que foram bem-sucedidas ou falharam, por motivo:

    _SentinelHealth()
    | where SentinelResourceType == "Analytics Rule"
    | summarize Occurrence=count(), Unique_rule=dcount(SentinelResourceId) by Status, Reason
    
  • Encontre a atividade de eliminação de regras na tabela SentinelAudit . Esta consulta devolve registos de auditoria onde uma regra de análise foi eliminada, para que possa acompanhar quem removeu uma regra e quando:

    _SentinelAudit()
    | where SentinelResourceType =="Analytic Rule"
    | where Description =="Analytics rule deleted"
    
  • Localize a atividade nas regras, por nome da regra e nome da atividade:

    _SentinelAudit()
    | where SentinelResourceType =="Analytic Rule"
    | summarize Count= count() by RuleName=SentinelResourceName, Activity=Description
    
  • Localizar atividade nas regras, pelo nome do autor da chamada (a identidade que efetuou a atividade):

    _SentinelAudit()
    | where SentinelResourceType =="Analytic Rule"
    | extend Caller= tostring(ExtendedProperties.CallerName)
    | summarize Count = count() by Caller, Activity=Description
    

Para mais informações sobre os operadores e funções Kusto usados nas consultas de exemplo, consulte a documentação Kusto:

Para obter mais informações sobre o KQL, veja Descrição geral do Linguagem de Pesquisa Kusto (KQL).

Outros recursos:

Consultar questões de saúde e integridade para regras agendadas

Quando uma regra de agendamento falha, é repetida mais cinco vezes na mesma janela. A regra não ignora a janela nem deixa passar um alerta, desde que uma das seis tentativas for bem-sucedida.

Uma falha numa das seis tentativas indica um atraso no acionamento do alerta. A consulta seguinte calcula o atraso exato:

_SentinelHealth()
| where SentinelResourceType == @"Analytics Rule" 
| where SentinelResourceKind == "Scheduled"
| extend startTime = todatetime(ExtendedProperties["QueryStartTimeUTC"]), executionStart = todatetime(ExtendedProperties["executionStart"])
| extend delay = datetime_diff('minute', startTime, executionStart)

Para procurar falhas completas (ou seja, uma janela que foi ignorada), utilize a seguinte consulta:

_SentinelHealth()| where SentinelResourceType == @"Analytics Rule" 
| where SentinelResourceKind == "Scheduled"
| where Status != "Success"
| extend startTime = tostring(ExtendedProperties["QueryStartTimeUTC"])
| summarize failuresByStartTime = count() by startTime, SentinelResourceId
| where failuresByStartTime == 6
| summarize count() by SentinelResourceId

Esta consulta pesquisa execuções agendadas de regras de análise em que nenhuma das seis tentativas foi bem-sucedida. Pode identificar uma nova tentativa ao ver a hora de início da janela da regra, uma vez que as novas tentativas consideram sempre a hora de início original. Esta consulta fornece-lhe o número de janelas ignoradas para cada regra analítica. Esperamos que as janelas ignoradas sejam raras. Se verificar que tem regras de análise com janelas ignoradas, utilize as consultas para compreender a causa da falha dessas regras específicas e a tabela de motivos de falha e respetivas mitigações para os corrigir.

Consultar questões de saúde e integridade para regras NRT

O mecanismo de nova tentativa das regras NRT funciona de forma diferente das regras agendadas. Se uma regra não for executada, o sistema também considera a janela com falha na execução seguinte (um minuto depois). Este comportamento continua até 60 falhas (uma hora).

Dado que uma falha numa execução específica corresponde a apenas um minuto de atraso, não tenha em conta falhas isoladas. Em vez disso, utilize a seguinte consulta para monitorizar o atraso de cada regra analítica:

_SentinelHealth()
| where SentinelResourceKind == "NRT"
| extend startTime = todatetime(ExtendedProperties["QueryStartTimeUTC"]), endTime = todatetime(ExtendedProperties["QueryEndTimeUTC"]), alertsCreated = toint(ExtendedProperties["AlertsGeneratedAmount"])
| where alertsCreated == 0 
| extend ruleDelay = datetime_diff('minute', endTime, startTime)
| project TimeGenerated, ruleDelay, SentinelResourceId
| render timechart

Também pode definir uma regra de análise para acionar alertas sobre atrasos significativos (por exemplo, se uma regra NRT tiver um atraso superior a 10 minutos).

Estados, erros e passos sugeridos

Na execução da regra de análise agendada ou na execução da regra de análise NRT, poderá ver os seguintes estados e descrições:

  • Êxito: regra executada com êxito, gerando <n> alertas.

  • Êxito: a regra foi executada com êxito, mas não atingiu o limiar (<n>) necessário para gerar um alerta.

  • Falha: estas descrições explicam a falha da regra e o que pode fazer em relação às mesmas.

    Descrição Remediação
    Ocorreu um erro interno do servidor ao executar a consulta.
    A execução da consulta excedeu o limite de tempo.
    Não foi encontrada uma tabela referenciada na consulta. Verifique se a origem de dados relevante está ligada.
    Ocorreu um erro semântico ao executar a consulta. Experimente repor a regra de análise ao editá-la e guardá-la (sem alterar as definições).
    Uma função chamada pela consulta tem o nome com uma palavra reservada. Remova ou mude o nome da função.
    Ocorreu um erro de sintaxe ao executar a consulta. Experimente repor a regra de análise ao editá-la e guardá-la (sem alterar as definições).
    A área de trabalho não existe.
    Esta consulta utiliza demasiados recursos do sistema e foi impedida de ser executada. Reveja e ajuste a regra de análise. Consulte a nossa visão geral da Linguagem de Consulta Kusto e a documentação das melhores práticas da Linguagem de Consulta Kusto .
    Não foi encontrada uma função chamada pela consulta. Verifique a existência na área de trabalho de todas as funções chamadas pela consulta.
    A área de trabalho utilizada na consulta não foi encontrada. Verifique se todas as áreas de trabalho na consulta existem.
    Não tem permissões para executar esta consulta. Experimente repor a regra de análise ao editá-la e guardá-la (sem alterar as definições).
    Não tem permissões de acesso a um ou mais dos recursos na consulta.
    A consulta referia-se a um caminho de armazenamento que não foi encontrado.
    Foi negado à consulta o acesso a um caminho de armazenamento.
    São definidas múltiplas funções com o mesmo nome nesta área de trabalho. Remova ou mude o nome da função redundante e reponha a regra ao editá-la e guardá-la.
    Esta consulta não devolveu nenhum resultado.
    Não são permitidos vários conjuntos de resultados nesta consulta.
    Os resultados da consulta contêm um número inconsistente de campos por linha.
    A execução da regra foi adiada devido a tempos de ingestão de dados longos.
    A execução da regra foi adiada devido a problemas temporários.
    O alerta não foi enriquecido devido a problemas temporários.
    O alerta não foi enriquecido devido a problemas de mapeamento de entidades.
    < number> entidades foram excluídas do alerta <name> devido ao limite de tamanho de alerta de 32 KB.
    < número> entidades foram excluídas no alerta <name> devido a problemas de mapeamento de entidades.
    A consulta devolveu <number> eventos, o que excede o máximo de <limit> resultados permitidos para regras do tipo <rule type> com a configuração de agrupamento de eventos "um alerta por linha". Foi gerado um alerta por linha para os primeiros <limit-1> eventos e foi gerado um alerta agregado adicional para abranger todos os eventos.
    - <number> = número de eventos devolvidos pela consulta
    - <limite> = atualmente 150 alertas para regras agendadas, 30 para regras NRT
    - <tipo de regra> = Agendada ou NRT

Utilize o livro de trabalho de auditoria e monitorização do estado de funcionamento

Para visualizar o estado de funcionamento das regras de análise e os dados de auditoria, instale e configure o livro Analytics Health & Audit a partir do hub de conteúdos do Microsoft Sentinel.

  1. Para disponibilizar o livro na área de trabalho, instale a solução de livro a partir do hub de conteúdos Microsoft Sentinel:

    1. No portal Microsoft Sentinel, selecione Hub de conteúdos (Pré-visualização) no menu Gestão de conteúdos.

    2. No Hub de Conteúdos, introduza health na barra de pesquisa e selecione Analytics Health & Audit nos resultados, entre as soluções de Livro de trabalho em Independente.

      Captura de ecrã a mostrar a seleção do livro de estado de funcionamento da análise a partir do hub de conteúdos.

    3. Selecione Instalar no painel de detalhes e, em seguida, selecione Guardar, que aparece no seu lugar.

  2. Quando a solução indicar que está instalada, selecione Cadernos no menu Gestão de ameaças.

    Captura de ecrã a mostrar a indicação de que a solução do livro de estado de funcionamento analítico está instalada a partir do hub de conteúdos.

  3. Na galeria Livros, selecione o separador Modelos, introduza health na barra de pesquisa e selecione Analytics Health & Audit de entre os resultados.

    Captura de ecrã da seleção do livro de análise do estado de funcionamento na galeria de modelos.

  4. Selecione Guardar no painel de detalhes para criar uma cópia editável e utilizável do livro. Quando a cópia for criada, selecione Ver livro de trabalho guardado.

  5. Uma vez no livro, primeiro selecione a subscrição e a área de trabalho que pretende ver (podem já estar selecionadas) e, em seguida, defina TimeRange para filtrar os dados de acordo com as suas necessidades. Use o interruptor Mostrar ajuda para mostrar a explicação no próprio livro de trabalho.

    Captura de ecrã do separador de descrição geral do estado de funcionamento da regra de análise.

Este livro tem três secções com separadores:

Consulte resumos de saúde e auditoria no separador Visão Geral

O separador Descrição Geral mostra resumos de estado de funcionamento e auditoria:

  • Resumos do estado de integridade das execuções das regras de análise na área de trabalho selecionada: número de execuções, execuções com êxito e falhas, e detalhes dos eventos de falha.
  • Auditar resumos de atividades sobre regras de análise na área de trabalho selecionada: número de atividades ao longo do tempo, número de atividades por tipo e número de atividades de diferentes tipos por regra.

Use o separador Saúde para identificar questões relacionadas com as regras de análise

O separador Saúde permite-lhe explorar eventos de saúde específicos.

Captura de ecrã a mostrar a seleção do separador estado de funcionamento no livro de estado de funcionamento da análise.

  • Filtre todos os dados da página por estado (êxito ou falha) e tipo de regra (agendado ou NRT).
  • Veja as tendências de execuções de regras com êxito e falhadas (dependendo do filtro de estado) durante o período de tempo selecionado. Pode selecionar, no gráfico de tendências, um intervalo temporal para ver uma parte do intervalo de tempo original. Captura de ecrã a mostrar as execuções de regras de análise ao longo do tempo no livro de estado de funcionamento da análise.
  • Filtre o resto da página por motivo.
  • Veja o número total de execuções de todas as regras de análise, apresentadas proporcionalmente por estado num gráfico circular.
  • Segue-se uma tabela que mostra o número de regras de análise exclusivas executadas, divididas por tipo de regra e estado.
    • Selecione um estado para filtrar os restantes gráficos por esse estado.
    • Limpe o filtro selecionando o ícone "Limpar seleção" (parece um ícone "Desfazer") no canto superior direito do gráfico. Captura de ecrã do número de regras executadas por estado e por tipo no livro do estado de funcionamento da análise.
  • Veja cada estado, com o número de possíveis motivos para esse estado. (Apenas são apresentados os motivos presentes nas execuções no intervalo de tempo selecionado.)
    • Selecione um estado para filtrar os restantes gráficos por esse estado.
    • Limpe o filtro selecionando o ícone "Limpar seleção" (parece um ícone "Desfazer") no canto superior direito do gráfico. Captura de ecrã do número de razões distintas por estados no livro de trabalho do estado de funcionamento da análise.
  • Em seguida, veja uma lista desses motivos, com o número total de execuções de regras combinadas e o número de regras exclusivas que foram executadas.
    • Selecione um motivo para filtrar os seguintes gráficos por esse motivo.
    • Limpe o filtro selecionando o ícone "Limpar seleção" (parece um ícone "Desfazer") no canto superior direito do gráfico. Captura de ecrã a mostrar as execuções de regras por motivo exclusivo no livro de estado de funcionamento da análise.
  • Depois disso, encontra-se uma lista das regras de análise exclusivas executadas, com os resultados mais recentes e as linhas de tendência do êxito e da falha (consoante o estado selecionado para filtrar a lista).
    • Selecione uma regra para desagregar e mostrar uma nova tabela com todas as execuções dessa regra (no período de tempo selecionado).
    • Limpe essa tabela selecionando o ícone "Limpar seleção" (parece um ícone "Desfazer") no canto superior direito do gráfico. Captura de ecrã da lista de regras exclusivas executadas, com o estado e as linhas de tendência, no livro de estado de funcionamento da análise.
  • Se selecionar uma regra na lista, será apresentada uma nova tabela com os detalhes do estado de funcionamento da regra selecionada. Captura de ecrã da lista de execuções da regra de análise selecionada, no livro de estado de funcionamento da análise.

Use o separador Auditoria para rever alterações às regras de análise

O separador Auditoria permite-lhe desagregar eventos de auditoria específicos.

Captura de ecrã a mostrar a seleção do separador auditoria no livro de estado de funcionamento da análise.

  • Filtra todos os dados da página por tipo de regra de auditoria (agendada ou Fusion, que são regras baseadas em correlação que detetam ataques em múltiplas etapas).
  • Veja as tendências da atividade auditada nas regras de análise durante o período de tempo selecionado. Pode selecionar, no gráfico de tendências, um intervalo temporal para ver uma parte do intervalo de tempo original. Captura de ecrã a mostrar a atividade de auditoria mais popular no livro de estado de funcionamento da análise.
  • Veja os números de eventos auditados, divididos por atividade e tipo de regra.
    • Selecione uma atividade para filtrar os seguintes gráficos para essa atividade.
    • Limpe o filtro selecionando o ícone "Limpar seleção" (parece um ícone "Desfazer") no canto superior direito do gráfico. Captura de ecrã das contagens de eventos de auditoria por atividade e tipo no livro de estado de funcionamento das análises.
  • Veja o número de eventos auditados por nome de regra.
    • Selecione um nome de regra para filtrar a seguinte tabela para essa regra e para desagregar e mostrar uma nova tabela com toda a atividade nessa regra (no período de tempo selecionado). (Veja depois da seguinte captura de ecrã.)
    • Limpe o filtro selecionando o ícone "Limpar seleção" (parece um ícone "Desfazer") no canto superior direito do gráfico. Captura de ecrã dos eventos auditados por nome da regra e autor da invocação no livro de estado de funcionamento do Analytics.
  • Veja o número de eventos auditados por autor da chamada (a identidade que efetuou a atividade).
  • Se tiver selecionado um nome de regra no gráfico anterior, é apresentada outra tabela a mostrar as atividades auditadas nessa regra. Selecione o valor que aparece como uma ligação na coluna ExtendedProperties para abrir um painel lateral que apresenta as alterações efetuadas à regra. Captura de ecrã da atividade de auditoria da regra selecionada no livro de estado de funcionamento da analítica.