diff --git a/Instructions/Demos/Ignite_2024_Lab_452-04.md b/Instructions/Demos/Ignite_2024_Lab_452-04.md index a3b6174..64effe9 100644 --- a/Instructions/Demos/Ignite_2024_Lab_452-04.md +++ b/Instructions/Demos/Ignite_2024_Lab_452-04.md @@ -81,7 +81,7 @@ Nesta tarefa, você testará sua nova regra de consulta agendada. 1. Na janela de *Boas vindas ao Azure Cloud Shell*, selecione **PowerShell**. -1. Na página *Introdução*, selecione **Montar conta de armazenamento** e, em seguida, selecione o seu **Azure Pass – Sponsorship** no menu suspenso *Assinatura da conta de armazenamento* e clique no botão **Aplicar**. +1. Na página *Introdução*, selecione **Montar conta de armazenamento** e, em seguida, selecione o seu **MOC subscription-lodxxxxxxxx** no menu suspenso *Assinatura da conta de armazenamento* e selecione o botão **Aplicar**. >**Importante:** Não selecione o botão de opção *Não é necessária conta de armazenamento*. Isso causará uma falha na criação do incidente. diff --git a/Instructions/Demos/Ignite_2024_Lab_452-05.md b/Instructions/Demos/Ignite_2024_Lab_452-05.md index 3b481f0..b7d97bb 100644 --- a/Instructions/Demos/Ignite_2024_Lab_452-05.md +++ b/Instructions/Demos/Ignite_2024_Lab_452-05.md @@ -18,7 +18,7 @@ Nesta tarefa, você criará um Aplicativo lógico que será usado como um Guia e 1. No *Microsoft Sentinel*, vá para **Hub de conteúdo**. -1. Na barra de pesquisa, procure por **SentinelSOARessentials**. +1. Na barra de pesquisa, procure por **Sentinel SOAR Essentials**. 1. Selecione a solução que aparece nos resultados. @@ -56,9 +56,9 @@ Nesta tarefa, você atualizará o novo guia estratégico criado com as informaç 1. Selecione Atualizar na barra de comandos, caso não veja nenhum guia estratégico. Você deve ver o guia estratégico criado a partir da etapa anterior. -1. Selecione o nome de guia estratégico **Defender_XDR_Ransomware_Playbook_for_SecOps_Tasks**. +1. Selecione o nome de guia estratégico **Defender_XDR_Ransomware_Playbook_SecOps_Tasks**. -1. Na página Aplicativo lógico de **Defender_XDR_Ransomware_Playbook_for_SecOps_Tasks**, no menu de comandos, selecione Editar. +1. Na página Aplicativo lógico do **Defender_XDR_Ransomware_Playbook_SecOps_Tasks**, no menu de comandos, selecione Editar. >**Observação:** talvez seja necessário atualizar a página. @@ -102,7 +102,7 @@ Nesta tarefa, você atualizará o novo guia estratégico criado com as informaç 1. Localize o grupo de recursos, selecione-o e escolha aplicar. -1. Na lista suspensa, selecione o guia estratégico M65D Tarefas de Ransomware. +1. Na lista suspensa, selecione o guia estratégico **Defender_XDR_Ransomware_Playbook_SecOps_Tasks**. 1. Por fim, selecione Aplicar na parte inferior. A partir daqui, dependendo da sua função, você continuará fazendo mais exercícios de arquiteto ou passará para os exercícios de analista. diff --git a/Instructions/Demos/Ignite_2024_Lab_452-06.md b/Instructions/Demos/Ignite_2024_Lab_452-06.md index 1288409..6c79a9d 100644 --- a/Instructions/Demos/Ignite_2024_Lab_452-06.md +++ b/Instructions/Demos/Ignite_2024_Lab_452-06.md @@ -12,7 +12,31 @@ As consultas de busca de ameaças habilitam e capacitam os analistas SOC a monit ## Instruções para o exercício -### Tarefa 1: criar uma consulta de busca +### Tarefa 1: executar um ataque simulado de escalonamento de privilégio + +Nesta tarefa, você executará um ataque simulado na máquina virtual VM1 do Azure. + +1. No navegador Edge, acesse o portal do Azure em . + +1. Insira **Máquinas virtuais** na pesquisa e selecione **Máquinas virtuais**. + +1. Selecione a máquina virtual **VM1**. + +1. No menu de navegação à esquerda, expanda a seção **Operações** e selecione **Executar comando**. + +1. No painel **Executar comando**, selecione **RunPowerShellScript**. + +1. Na caixa de **script do PowerShell**, desmarque todos os comandos anteriores e, em seguida, copie e execute estes comandos para simular a criação de uma conta de administrador. Lembre-se de pressionar Enter após a última linha: + + ```CommandPrompt + net user theusernametoadd /add + net user theusernametoadd ThePassword1! + net localgroup administrators theusernametoadd /add + ``` + +1. Monitore a seção *Saída* para verificar se os comandos foram concluídos com êxito. + +### Tarefa 2: criar uma consulta de busca de KQL Nesta tarefa, você criará uma consulta de busca e marcará um resultado. @@ -30,17 +54,100 @@ Nesta tarefa, você criará uma consulta de busca e marcará um resultado. 1. Selecione **Logs** -1. Insira a instrução KQL a seguir no espaço *Nova consulta 1*: +1. Insira e *execute* a instrução KQL a seguir no espaço *Nova consulta 1*: + + >**Importante:** cole as consultas KQL no Bloco de notas primeiro e, em seguida, copie-as para a janela de Log da *Nova consulta 1* para evitar erros. + + ```KQL + search "administrators" + | summarize count() by $table + ``` + + >**Observação:** um resultado com o evento pode levar até 5 minutos para aparecer. Espere até que isso aconteça. + +1. O resultado pode mostrar eventos de tabelas diferentes, mas, no nosso caso, queremos investigar a tabela SecurityEvent. O EventID e o evento que estamos procurando é "4732 – Um membro foi adicionado a um grupo local habilitado para segurança". Com isso, identificaremos a adição de um membro a um grupo privilegiado. **Execute** a seguinte consulta KQL para confirmar: + + ```KQL + SecurityEvent + | where EventID == 4732 + | where TargetAccount == "Builtin\\Administrators" + ``` + +1. Expanda a linha para ver todas as colunas relacionadas ao registro. O nome de usuário da conta adicionada como Administrador não aparece. O problema é que, em vez de armazenar o nome de usuário, temos o Identificador de segurança (SID). **Execute** o seguinte KQL para corresponder o SID ao nome de usuário que foi adicionado ao grupo Administradores: + + ```KQL + SecurityEvent + | where EventID == 4732 + | where TargetAccount == "Builtin\\Administrators" + | extend Acct = MemberSid, MachId = SourceComputerId + | join kind=leftouter ( + SecurityEvent + | summarize count() by TargetSid, SourceComputerId, TargetUserName + | project Acct1 = TargetSid, MachId1 = SourceComputerId, UserName1 = TargetUserName) on $left.MachId == $right.MachId1, $left.Acct == $right.Acct1 + ``` - >**Importante:** cole as consultas KQL primeiro no Bloco de notas e, em seguida, copie-as para a janela Log de *Nova consulta 1* para evitar erros. +1. Estenda a linha para mostrar as colunas resultantes. Na última, vemos o nome do usuário adicionado na coluna *UserName1* que *projetamos* na consulta KQL. É importante ajudar o analista de operações de segurança fornecendo o máximo de contexto possível sobre o alerta. Isso inclui projetar Entidades para uso no gráfico de investigação. **Execute** a seguinte consulta: ```KQL - let lookback = 2d; SecurityEvent - | where TimeGenerated >= ago(lookback) - | where EventID == 4688 and Process =~ "powershell.exe" - | extend PwshParam = trim(@"[^/\\]*powershell(.exe)+" , CommandLine) - | project TimeGenerated, Computer, SubjectUserName, PwshParam - | summarize min(TimeGenerated), count() by Computer, SubjectUserName, PwshParam - | order by count_ desc nulls last + | where EventID == 4732 + | where TargetAccount == "Builtin\\Administrators" + | extend Acct = MemberSid, MachId = SourceComputerId + | join kind=leftouter ( + SecurityEvent + | summarize count() by TargetSid, SourceComputerId, TargetUserName + | project Acct1 = TargetSid, MachId1 = SourceComputerId, UserName1 = TargetUserName) on $left.MachId == $right.MachId1, $left.Acct == $right.Acct1 + | extend timestamp = TimeGenerated, HostCustomEntity = Computer, AccountCustomEntity = UserName1 ``` + +1. Agora que você tem uma boa regra de detecção, na janela Logs, selecione a **+ Nova regra de alerta** na barra de comandos e depois selecione **Criar alerta do Microsoft Sentinel**. **Dica:** talvez seja necessário selecionar o botão de reticências (...) na barra de comandos. + +1. Isso abrirá o "Assistente de regra de análise". Para a regra *Geral*, digite: + + |Configuração|Valor| + |---|---| + |Nome|**Adição de usuários administradores locais do evento de segurança**| + |Descrição|**Usuário adicionado ao grupo de administradores locais**| + |Táticas|**Elevação de privilégio**| + |Severidade|**Alta**| + +1. Clique no botão **Avançar: Definir lógica da regra >**. + +1. Na guia *Definir lógica de regra*, a *Consulta de regra* já deve estar preenchida com a consulta KQL, bem como as entidades em *Aprimoramento de alerta – Mapeamento de entidade*. + + |Entity|Identificador|Campo de dados| + |:----|:----|:----| + |Conta|FullName|AccountCustomEntity| + |Host|Nome do host|HostCustomEntity| + +1. Se a opção **Nome do host** não estiver selecionada em *Entidade de Host*, selecione-a na lista suspensa e use os parâmetros da tabela anterior para preencher os campos. + +1. Para *Agendamento de consulta*, defina o seguinte: + + |Configuração|Valor| + |---|---| + |Executar consulta a cada|5 minutos| + |Dados de pesquisa a partir do último|1 dia| + + >**Observação:** estamos gerando propositalmente muitos incidentes para os mesmos dados. Isso permite que o Laboratório use esses alertas. + +1. Deixe o restante das opções com os padrões. Clique no botão **Avançar: Configurações de incidente >**. + +1. Para a guia *Configurações de incidente*, deixe os valores padrão e clique no botão **Avançar: Resposta automatizada >**. + + + +1. 1. Na guia *Resposta automatizada*, clique no botão **Avançar: Revisar e criar >**. + +1. Na guia *Examinar e criar*, selecione o botão **Criar** para criar a nova regra de Análise agendada.