Skip to content
KitploitKITPLOIT
FerramentasExploitsBlog
Log in
Enviar
FerramentasExploitsBlog
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
Trawler — Script PowerShell que ajuda os respondedores de incidentes a descobrir potenciais mecanismos de persistência de adversários. | Kitploit
Ferramentas/GitHubGitHub/joeavanzato/trawler
Ferramentas DefensivasMecanismos de PersistênciaAnálise ForenseForensia DigitalResposta a Incidentes
GitHubjoeavanzato/trawler

Trawler

Script PowerShell que ajuda os respondedores de incidentes a descobrir potenciais mecanismos de persistência de adversários.

Ver Repositório
3403813há 1 anoRevisado 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

Dragando Windows por Persistência

O que é?

O Trawler é um script PowerShell projetado para ajudar Respondentes de Incidentes a descobrir potenciais indicadores de comprometimento em hosts Windows, focado principalmente em mecanismos de persistência, incluindo Tarefas Agendadas, Serviços, Modificações no Registro, Itens de Inicialização, Modificações Binárias e mais.

Atualmente, o trawler pode detectar a maioria das técnicas de persistência especificamente mencionadas pela MITRE e Atomic Red Team, com mais detecções sendo adicionadas regularmente.

Principais Recursos

  • Varredura do sistema operacional Windows para uma variedade de técnicas de persistência (listadas abaixo)
  • Saída CSV com Técnica MITRE e Metadados de Início de Investigação
  • Documentação de Análise e Orientação de Remediação (https://github.com/joeavanzato/Trawler/wiki/Analysis-and-Remediation-Guidance)
  • Atribuição Dinâmica de Risco para cada detecção
  • Listas de Permissão Integradas para configurações comuns do Windows abrangendo Windows 10/Server 2012|2016|2019|2022 para reduzir ruído
  • Capturar metadados de persistência de uma imagem empresarial 'dourada' (snapshot) para uso como lista de permissão dinâmica em tempo de execução
  • Analisar imagens de disco montadas via redirecionamento de unidade

Como usar?

Basta baixar e executar o trawler.ps1 a partir de um prompt PowerShell/cmd Administrativo - quaisquer detecções serão exibidas no console e também gravadas em um CSV ('detections.csv') no diretório de trabalho atual. O CSV gerado conterá Nome da Detecção, Fonte, Risco, Metadados e a Técnica MITRE relevante.

Ou use este one-liner a partir de um terminal PowerShell Administrativo:

iex ((New-Object System.Net.WebClient).DownloadString('https://raw.githubusercontent.com/joeavanzato/Trawler/main/trawler.ps1'))

Certas detecções possuem listas de permissão integradas para ajudar a remover ruído das configurações padrão do Windows (10/2016/2019/2022) - Tarefas Agendadas, Serviços, etc. esperados. Claro, é sempre possível que atacantes sequestrem diretamente esses itens e se masqueradem com grande detalhe como um processo padrão do SO - tenha cuidado ao usar múltiplas formas de análise e detecção ao lidar com adversários habilidosos.

Se você tiver exemplos ou ideias para detecções adicionais, sinta-se à vontade para enviar uma Issue ou PR com detalhes técnicos/referências relevantes - a base de código está um pouco bagunçada agora e será limpa com o tempo.

Além disso, se você identificar falsos positivos óbvios, por favor me avise abrindo uma issue ou PR no GitHub! Os culpados óbvios para isso serão COMs, Serviços ou Tarefas não padrão.

Parâmetros da CLI

-scanoptions : Navegue pelas possíveis detecções usando Tab e selecione um subconjunto usando termos delimitados por vírgula (ex.: .\trawler.ps1 -scanoptions Services,Processes) ou pule para fazer todas as detecções
-quiet : Suprime a saída de Detecção no console
-snapshot : Caminho para uma saída JSON anterior do trawler para usar como lista de permissão.
-outpath : Define um caminho de arquivo personalizado para salvar a saída de detecção (padrão é "$PSScriptRoot\detections.csv")
-drivetarget : Define a variável para uma unidade alvo montada (ex.: .\trawler.ps1 -targetdrive "D:") - (padrão é o sistema local)
-daysago : Define quantos 'dias atrás' queremos considerar para detecções baseadas em tempo (padrão é 45)
-hashmode : Define qual algoritmo de hash queremos usar para as detecções suportadas - suporta sha1, md5 ou sha256 (padrão é sha1)
-evtx : Habilita a criação de uma Fonte de Log de Eventos e Gravação de Detecções no log de eventos do Aplicativo sob Source=trawler com EID=9001 (padrão desabilitado)

O que diferencia isso do PersistenceSniper?

PersistenceSniper é uma ferramenta incrível - já usei bastante no passado - mas há alguns pontos-chave que diferenciam essas utilidades

  • trawler é (atualmente) uma utilidade local - embora seja bastante simples envolvê-lo em um loop e usar sessões WinRM/PowerShell para executá-lo em hosts remotos
  • trawler implementa listas de permissão para muitas detecções 'ruidosas' para ajudar a remover detecções esperadas das configurações padrão do Windows (10/2016/2019/2022) e estas são constantemente atualizadas (PS também faz isso)
  • PersistenceSniper (na maior parte) não contém nenhum tipo de lista de permissão - portanto, mais ruído é gerado ao considerar itens como Serviços, Tarefas Agendadas, varredura geral de DLL COM, etc.
  • a saída do trawler é simplificada - Nome, Risco, Fonte, Técnica MITRE e Metadados são os únicos itens fornecidos para cada detecção para ajudar analistas a iniciar rapidamente seus esforços de caça à persistência - isso é uma faca de dois gumes.
  • Regex é usado em muitas verificações para ajudar a detectar palavras-chave ou padrões 'suspeitos' em várias áreas críticas, incluindo conteúdos de arquivos escaneados, valores de registro, etc. Isso fornece um pouco mais de flexibilidade, mas também uma taxa de falsos positivos potencialmente maior.
  • trawler suporta 'redirecionamento de unidade' para verificar máquinas paradas montadas em uma máquina de análise.

No geral, essas ferramentas são extremamente semelhantes, mas abordam o problema de ângulos ligeiramente diferentes - PersistenceSniper fornece todas as informações de volta ao analista para revisão, enquanto Trawler tenta limitar o que é retornado apenas a resultados que provavelmente são potenciais mecanismos de persistência do adversário. Como tal, existe a possibilidade de falsos negativos com trawler se um adversário imitar completamente um item da lista de permissão.

Como exemplo - PersistenceSniper retornará todos os Serviços Windows 'não seguros', enquanto trawler retornará apenas aqueles que correspondem a uma regra de detecção específica, etc.

Ajustando ao seu ambiente

Trawler suporta carregar uma lista de permissão a partir de um 'snapshot' - para fazer isso são necessários dois passos.

  1. Execute '.\trawler.ps1 -snapshot' em uma "Golden Image" representando os servidores do seu ambiente - uma vez concluído, além do 'detections.csv' padrão, um arquivo chamado 'snapshots.csv' será gerado
  2. Este arquivo pode então ser usado como entrada para o trawler ao executar em outros hosts e os dados serão carregados dinamicamente como uma lista de permissão para cada detecção apropriada
    1. '.\trawler.ps1' -loadsnapshot "path\to\snapshot.csv"

É isso - todas as detecções relevantes usarão então o arquivo de snapshot como uma lista de permissão para reduzir ruído e identificar quaisquer mudanças potenciais na imagem base que possam ter ocorrido.

(A lista de permissão é implementada para a maioria das verificações, mas não todas - ainda está sendo implementada ativamente)

Redirecionamento de Unidade

Frequentemente durante uma investigação, analistas podem acabar montando uma nova unidade que representa um dispositivo Windows imageado - Trawler agora suporta parcialmente a varredura dessas unidades montadas através do uso do parâmetro '-drivetarget'.

Em tempo de execução, Trawler redirecionará variáveis temporárias de nível de script para uso na verificação de artefatos baseados em arquivo e também tentará carregar Hives de Registro relevantes (HKLM\SOFTWARE, HKLM\SYSTEM, NTUSER.DATs, USRCLASS.DATs) abaixo de HKLM/HKU e prefixados por 'ANALYSIS_'. Trawler também tentará descarregar esses hives temporariamente carregados ao finalizar o script.

Baixar ferramenta