Skip to content
KitploitKITPLOIT
FerramentasBlog
Enviar
FerramentasBlog
Enviar

Ferramentas de Hacking, PenTest e Cibersegurança para o seu Arsenal de Segurança!

Kitploit é um diretório de ferramentas de hacking, cibersegurança e pentesting. Descubra as últimas atualizações de projetos para encontrar vulnerabilidades, analisar sistemas, automatizar testes e fortalecer sua segurança.

··Feeds·Contato·Privacidade·© 2026 Kitploit

Diretório de Ferramentas

Categorias

Ver todas as categorias
Loading categories
AzureHunter — Um módulo Powershell de Cloud Forensics para executar playbooks de caça a ameaças em dados do Azure e O365 | Kitploit
Ferramentas/GitHubGitHub/darkquasar/azurehunter
Coleta de InformaçõesForensia DigitalSegurança na NuvemInteligência de AmeaçasResposta a IncidentesAnálise de Logs
GitHubdarkquasar/azurehunter

AzureHunter

Um módulo Powershell de Cloud Forensics para executar playbooks de caça a ameaças em dados do Azure e O365

Ver Repositório
795845há 3 anosRevisado pelo Kitploit

Mais Populares

Ver todos →

Descubra as ferramentas mais usadas pela nossa comunidade.

Explore todas as ferramentas

Navegue pela nossa coleção de ferramentas

Ver todas as ferramentas →
Compartilhar

azurehunter-logo

Um módulo do Powershell para executar playbooks de caça a ameaças em dados do Azure e O365 para fins de Perícia Forense em Nuvem.

ko-fi

CI PS Gallery Coverage Status Documentation Status azurehunter-demo-gif

Introdução

1. Verifique se você tem as permissões corretas do O365

As seguintes funções são necessárias no Exchange Online para ter acesso somente leitura ao UnifiedAuditLog: View-Only Audit Logs ou Audit Logs.

Essas funções são atribuídas por padrão ao grupo de funções Compliance Management no Centro de Administração do Exchange.

NOTA: se você é um analista de segurança, respondedor a incidentes ou caçador de ameaças e sua organização NÃO está lhe dando acesso somente leitura a esses logs de auditoria, você precisa questionar seriamente qual é a estratégia de detecção e resposta deles!

Mais informações:

  • Como pesquisar o Log de Auditoria usando a GUI
  • Gerenciar grupos de funções no Exchange Online
  • Como habilitar o UnifiedAuditLog

NOTA: seu administrador pode verificar esses requisitos executando Get-ManagementRoleEntry "*\Search-UnifiedAuditLog" no shell de nuvem do seu inquilino Azure ou em uma instância local do powershell conectada ao Azure.

2. Certifique-se de que o módulo ExchangeOnlineManagement v2 do PowerShell está instalado

Por favor, certifique-se de que o ExchangeOnlineManagement (EXOv2) está instalado. Você pode encontrar instruções na web ou ir diretamente para meu pequeno KB sobre como fazer isso em the soc analyst scrolls

3. Clone o Repositório ou Instale o AzureHunter da PSGallery

3.1 Clonando o Repositório

  1. Clone este repositório
  2. Importe o módulo Import-Module .\source\AzureHunter.psd1

3.2 Instalar o AzureHunter da PSGallery

Tudo o que você precisa fazer é:

root@kitploit:~
Install-Module AzureHunter -Scope CurrentUser
Import-Module AzureHunter

O que é o UnifiedAuditLog?

O log de auditoria unificado contém atividades de usuário, grupo, aplicativo, domínio e diretório realizadas no centro de administração do Microsoft 365 ou no portal de gerenciamento do Azure. Para uma lista completa de eventos do Azure AD, consulte a lista de RecordTypes.

O UnifiedAuditLog é uma ótima fonte de informações forenses em nuvem, pois contém uma riqueza de dados sobre vários tipos de operações em nuvem, como ExchangeItems, SharePoint, Azure AD, OneDrive, Governança de Dados, Prevenção contra Perda de Dados, Alertas do Windows Defender e eventos de Quarentena, eventos de Inteligência de Ameaças no Microsoft Defender para Office 365 e a lista continua!

Verificações de Consistência de Dados do AzureHunter

O AzureHunter implementa algumas lógicas úteis para garantir que a maior densidade de logs seja minerada e exportada dos Logs de Auditoria do Azure e O365. Para fazer isso, executamos duas operações diferentes para cada ciclo (lote):

  1. Redução Automática da Janela de Tempo: esta verificação garante que o intervalo de tempo seja reduzido ao intervalo ideal com base no parâmetro ResultSizeUpperThreshold, que por padrão é 20k. Isso significa que, se a quantidade de logs retornados dentro do seu TimeInterval designado for maior que ResultSizeUpperThreshold, um ajuste automático será realizado.
  2. Verificação Sequencial de Dados: os Índices de Registro retornados são sequencialmente válidos?

azurehunter-logical-consistency-checks

Uso

Certifique-se de conectar-se ao ExchangeOnline

Recomenda-se executar Connect-ExchangeOnline antes de executar qualquer comando do AzureHunter. O programa verifica se existe uma sessão remota ativa e tenta conectar, mas algumas versões do Powershell não permitem isso e você precisa fazer isso por conta própria.

Executar o AzureHunter

AzureHunter possui dois comandos principais: Search-AzureCloudUnifiedLog e Invoke-AzHunterPlaybook.

O propósito de Search-AzureCloudUnifiedLog é implementar uma lógica complexa para garantir que a maior porcentagem de registros do UnifiedAuditLog seja minerada do Azure. Por padrão, ele exporta registros extraídos e deduplicados para um arquivo CSV.

O propósito de Invoke-AzHunterPlaybook é fornecer uma interface flexível para playbooks de caça armazenados na pasta playbooks. Esses playbooks são projetados para que qualquer pessoa possa contribuir com suas próprias análises e ideias. Até agora, apenas dois playbooks muito simples foram desenvolvidos: AzHunter.Playbook.Exporter e AzHunter.Playbook.LogonAnalyser. O Exporter cuida da exportação de registros após aplicar operações de deduplicação e ordenação aos dados. O LogonAnalyser está em modo beta e extrai eventos onde a propriedade Operations é UserLoggedIn. É um exemplo do que pode ser feito com os playbooks e como é fácil construir um.

Ao executar Search-AzureCloudUnifiedLog, você pode passar uma lista de playbooks para executar por lote de log. Search-AzureCloudUnifiedLog passará o lote para os playbooks através de Invoke-AzHunterPlaybook.

Finalmente, Invoke-AzHunterPlaybook pode ser usado de forma independente. Se você tiver uma exportação de registros do UnifiedAuditLog, pode carregá-los em um Array do Powershell e passá-los para este comando, especificando os playbooks relevantes.

Exemplo 1 | Executar pesquisa no UnifiedAuditLog do Azure e extrair registros para arquivo CSV (comportamento padrão)

root@kitploit:~
Search-AzureCloudUnifiedLog -StartDate "2020-03-06T10:00:00" -EndDate "2020-06-09T12:40:00" -TimeInterval 12 -AggregatedResultsFlushSize 5000 -Verbose

Este comando irá:

  • Pesquisar dados entre as datas em StartDate e EndDate
  • Implementar uma janela de 12 horas entre essas datas, que será usada para varrer todo o comprimento do intervalo de tempo (StartDate --> EndDate). Esta janela será automaticamente reduzida e ajustada para fornecer o máximo de registros dentro da janela, garantindo assim maior qualidade de saída. A janela de tempo desliza sequencialmente até atingir o EndDate.
  • O parâmetro AggregatedResultsFlushSize especifica os lotes de registros que serão processados pelos playbooks downstream. Estamos dizendo ao AzureHunter aqui para processar o lote de registros assim que a quantidade total atingir 5000. Dessa forma, você pode obter resultados em tempo real, sem ter que esperar horas até que uma grande quantidade de registros seja exportada para arquivos CSV.

Exemplo 2 | Executar Playbooks de Caça em Arquivo CSV

Assumimos que você exportou registros do UnifiedAuditLog para um arquivo CSV, se sim, você pode então fazer:

root@kitploit:~
$RecordArray = Import-Csv .\my-exported-records.csv
Invoke-AzHunterPlaybook -Records $RecordArray -Playbooks 'AzHunter.Playbook.UAL.LogonAnalyser'

Você pode executar mais de um playbook separando-os por vírgulas; eles serão executados sequencialmente:

root@kitploit:~
$RecordArray = Import-Csv .\my-exported-records.csv
Invoke-AzHunterPlaybook -Records $RecordArray -Playbooks 'AzHunter.Playbook.UAL.Exporter', 'AzHunter.Playbook.UAL.LogonAnalyser'

Exemplo 3 | Executar Playbook de Caça para produzir um Relatório Resumido de eDiscovery limpo

Assumimos que você exportou um Relatório Resumido de eDiscovery para um arquivo CSV, se sim, você pode então fazer:

root@kitploit:~
$eDiscoReportFile = .\eDisco-Summary-Report-PersonOfInterest.csv
Invoke-AzHunterPlaybook -Records $eDiscoReportFile -Playbooks 'AzHunter.Playbook.eDisco.SummaryReportCleaner'

Opcionalmente, podemos passar alguns parâmetros para o playbook assim:

root@kitploit:~
$eDiscoReportFile = .\eDisco-Summary-Report-PersonOfInterest.csv
Invoke-AzHunterPlaybook -Records $eDiscoReportFile -Playbooks 'AzHunter.Playbook.eDisco.SummaryReportCleaner' -PlayBookParameters @{"CsvRecordsBatchSize" = 700}

O parâmetro "CsvRecordsBatchSize" dirá ao playbook para gravar registros no disco em lotes de 700 registros.

Porquê?

Desde as consequências do Comprometimento da Cadeia de Suprimentos SolarWinds, muitas ferramentas surgiram das forjas profundas dos peritos forenses cibernéticos, cuidadosamente desenvolvidas por ninjas ferreiros cibernéticos. Essas ferramentas geralmente ajudam você a realizar perícia forense em nuvem no Azure. Minha intenção com o AzureHunter não é trazer mais ruído para este espaço já concorrido, no entanto, senti a necessidade de abordar algumas lacunas que observei em algumas das ferramentas do ramo (posso estar enganado, já que há uma proliferação de ferramentas por aí e não conheço todas...):

  1. As ferramentas de perícia forense em nuvem do Azure geralmente não abordam as complicações da API do Powershell para o UnifiedAuditLog. Esta API é muito instável e inconsistente ao exportar grandes quantidades de dados. Queria desenvolver uma interface que fosse tolerante a falhas (o suficiente) para lidar com alguns desses problemas, focando exclusivamente no UnifiedAuditLog, já que este é o artefato do Azure que contém os logs de atividade mais relevantes e detalhados para usuários, aplicativos e serviços.
  2. As ferramentas de perícia forense em nuvem do Azure geralmente não focam no desenvolvimento de Playbooks extensíveis. Queria criar uma estrutura simples que ajudasse a comunidade a criar e compartilhar novos playbooks para extrair diferentes tipos de significado dos mesmos dados.

Se, no entanto, você está procurando uma aplicação mais rica em funcionalidades e madura para Perícia Forense em Nuvem do Azure, sugiro que verifique o excelente trabalho realizado pelos especialistas em segurança cibernética que criaram as seguintes aplicações:

  • CISA's Sparrow
  • HAWK
  • Ferramenta de Relatórios da CrowdStrike para Azure CRT

Tenho certeza de que há uma lista mais extensa de ferramentas, mas estas são as que consegui lembrar. Sinta-se à vontade para sugerir mais.

Porquê Powershell?

  1. Não queria reinventar a roda
  2. Sim, a interface do Powershell para o UnifiedAuditLog do Azure é instável, mas em termos de tempo até a produção, teria levado uma quantidade insana de horas para alcançar o mesmo resultado escrevendo uma interface totalmente nova em linguagens como .NET, Golang ou Python para alcançar os mesmos objetivos. Enquanto isso, o mundo da Defesa e Resposta Cibernética não espera!

TODO

  • Especificar atributos padrão de metadados de playbook que precisam estar presentes para que o AzureHunter possa aproveitá-los.
  • Permitir que playbooks especifiquem dependências de outros playbooks para que um precise ser executado antes do outro. O encadeamento de playbooks poderia produzir resultados interessantes e evitar duplicação de código.
  • Desenvolver testes Pester e resultados Coveralls.
  • Desenvolver documentação no ReadTheDocs.
  • Permitir a especificação de playbooks no padrão de regras SIGMA (isso pode exigir algum PR para o repositório SIGMA)

Mais Informações

Para mais informações

  • AzureHunter.readthedocs.io
  • github.com/darkquasar/AzureHunter
  • ThreatHunterz.com

Agradecimentos e Apoiadores

Obrigado a todas as pessoas que apoiam este e outros projetos Open Source! Vocês estão ajudando pessoas como eu a trilhar o caminho do cyberwarrior e entregar ferramentas de qualidade para a comunidade :)

Créditos

  • Ícone feito por itim2101 de www.flaticon.com
Baixar ferramenta