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
subcrawl — Framework modular para descobrir e analisar diretórios abertos na web. Varre URLs, extrai conteúdo, aplica varredura YARA/ClamAV e gera resultados para MISP, SQLite ou console para inteligência de ameaças. | Kitploit
Ferramentas/GitHubGitHub/hpthreatresearch/subcrawl
OSINT (Inteligência de Fontes Abertas)Análise de VulnerabilidadesColeta de InformaçõesSegurança WebInteligência de AmeaçasRastreador
GitHubhpthreatresearch/subcrawl

subcrawl

Framework modular para descobrir e analisar diretórios abertos na web. Varre URLs, extrai conteúdo, aplica varredura YARA/ClamAV e gera resultados para MISP, SQLite ou console para inteligência de ameaças.

Ver Repositório
1503626há 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

SubCrawl

SubCrawl é um framework desenvolvido por Patrick Schläpfer, Josh Stroschein e Alex Holland da equipe de Pesquisa de Ameaças da HP Inc. O SubCrawl foi projetado para encontrar, escanear e analisar diretórios abertos. O framework é modular, consistindo em quatro componentes: módulos de entrada, módulos de processamento, módulos de saída e o mecanismo principal de crawling. As URLs são os valores de entrada primários, que o framework analisa e adiciona a um sistema de filas antes de rastreá-las. A análise sintática (parsing) das URLs é um primeiro passo importante, pois pega uma URL submetida e gera URLs adicionais a serem rastreadas, removendo subdiretórios, um de cada vez, até que não reste nenhum. Este processo garante uma tentativa de varredura mais completa de um servidor web e pode levar à descoberta de conteúdo adicional. Notavelmente, o SubCrawl não usa um método de força bruta para descobrir URLs. Todo o conteúdo varrido vem das URLs de entrada, do processo de análise da URL e da descoberta durante o crawling. Quando um diretório aberto é descoberto, o mecanismo de crawling extrai links do diretório para avaliação. O mecanismo de crawling determina se o link é outro diretório ou se é um arquivo. Diretórios são adicionados à fila de crawling, enquanto arquivos passam por análise adicional pelos módulos de processamento. Os resultados são gerados e armazenados para cada URL varrida, como os hashes SHA256 e fuzzy do conteúdo, se um diretório aberto foi encontrado, ou correspondências com regras YARA. Finalmente, os dados de resultado são processados de acordo com um ou mais módulos de saída, dos quais existem atualmente três. O primeiro fornece integração com MISP, o segundo simplesmente imprime os dados no console e o terceiro armazena os dados em um banco de dados SQLite. Como o framework é modular, não é apenas fácil configurar quais módulos de entrada, processamento e saída são desejados, mas também é direto desenvolver novos módulos.

Arquitetura do Framework Figura 1 - Arquitetura do SubCrawl

O SubCrawl suporta dois modos diferentes de operação. Primeiro, o SubCrawl pode ser iniciado no modo execução única (run-once). Neste modo, o usuário fornece as URLs a serem varridas em um arquivo onde cada valor de entrada é separado por uma quebra de linha. O segundo modo de operação é o modo serviço. Neste modo, o SubCrawl é executado em segundo plano e depende dos módulos de entrada para fornecer as URLs a serem varridas. A Figura 1 mostra uma visão geral da arquitetura do SubCrawl. Os componentes que são usados em ambos os modos de operação são azuis, os componentes do modo execução única são amarelos e os componentes do modo serviço são verdes.

Requisitos

Com base no modo de execução escolhido, outras pré-condições devem ser atendidas.

Requisitos do Modo Execução Única

O SubCrawl é escrito em Python3. Além disso, existem vários pacotes que são necessários antes de executar o SubCrawl. O seguinte comando pode ser usado para instalar todos os pacotes necessários antes de executar o SubCrawl. A partir do diretório crawler, execute o seguinte comando:

$ sudo apt install build-essential
$ pip3 install -r requirements.txt

Requisitos do Modo Serviço

Se o SubCrawl for iniciado no modo serviço, isso pode ser feito usando Docker. Por esse motivo, a instalação do Docker e do Docker Compose é necessária. Boas instruções de instalação podem ser encontradas diretamente no site do Docker.com.

  • Instalando o Docker Engine
  • Instalando o Docker Compose

Obtendo Ajuda

O SubCrawl possui ajuda embutida através do argumento -h/--help ou simplesmente executando o script sem nenhum argumento.

  ********         **        ******                               **
 **//////         /**       **////**                             /**
/**        **   **/**      **    //  ******  ******   ***     ** /**
/*********/**  /**/****** /**       //**//* //////** //**  * /** /**
////////**/**  /**/**///**/**        /** /   *******  /** ***/** /**
       /**/**  /**/**  /**//**    ** /**    **////**  /****/**** /**
 ******** //******/******  //****** /***   //******** ***/ ///** ***
////////   ////// /////     //////  ///     //////// ///    /// /// 
~~ Harvesting the Open Web ~~

usage: subcrawl.py [-h] [-f FILE_PATH] [-k] [-p PROCESSING_MODULES] [-s STORAGE_MODULES]

optional arguments:
  -h, --help            show this help message and exit
  -f FILE_PATH, --file FILE_PATH
                        Path of input URL file
  -k, --kafka           Use Kafka Queue as input
  -p PROCESSING_MODULES, --processing PROCESSING_MODULES
                        Processing modules to be executed comma separated.
  -s STORAGE_MODULES, --storage STORAGE_MODULES
                        Storage modules to be executed comma separated.

  Available processing modules: 
  - ClamAVProcessing
  - JARMProcessing
  - PayloadProcessing
  - TLSHProcessing
  - YARAProcessing

  Available storage modules: 
  - ConsoleStorage
  - MISPStorage
  - SqliteStorage

Modo Execução Única

Este modo é adequado se você deseja escanear rapidamente uma quantidade gerenciável de domínios. Para isso, as URLs a serem varridas devem ser salvas em um arquivo, que então serve como entrada para o crawler. Segue um exemplo de execução no modo execução única; note que o argumento -f é usado com um caminho para um arquivo.

python3 subcrawl.py -f urls.txt -p YARAProcessing,PayloadProcessing -s ConsoleStorage

Modo Serviço

Com o modo serviço, uma quantidade maior de domínios pode ser varrida e os resultados salvos. Com base no módulo de armazenamento selecionado, os dados podem então ser analisados e avaliados em mais detalhes. Para tornar a execução do modo serviço o mais fácil possível para o usuário, construímos todas as funcionalidades em uma imagem Docker. No modo serviço, os domínios a serem varridos são obtidos através dos módulos de entrada. Por padrão, novas URLs de malware e phishing são baixadas de URLhaus e PhishTank e enfileiradas para varredura. Os módulos de processamento e armazenamento desejados podem ser inseridos diretamente no config.yml. Por padrão, os seguintes módulos de processamento são ativados, utilizando o armazenamento SQLite:

  • ClamAVProcessing
  • JARMProcessing
  • TLSHProcessing
  • YARAProcessing

Além do módulo de armazenamento SQLite, uma interface web simples foi desenvolvida que permite visualizar e gerenciar os domínios e URLs varridos.

Interface web para o módulo de armazenamento SQLite

No entanto, se esta interface não for suficiente para a avaliação subsequente dos dados, o módulo de armazenamento MISP pode ser ativado alternativamente ou adicionalmente. As configurações correspondentes devem ser feitas no config.yml na seção MISP.

Os dois comandos a seguir são suficientes para clonar o repositório GIT, criar o contêiner Docker e iniciá-lo diretamente. Depois disso, a interface web pode ser acessada no endereço https://localhost:8000/. Observe que, uma vez que os contêineres sejam iniciados, os módulos de entrada começarão a adicionar URLs à fila de processamento e o mecanismo começará a rastrear hosts.

git clone https://github.com/hpthreatresearch/subcrawl.git

docker-compose up --build 

Módulos do SubCrawl

Módulos de Entrada

Baixar ferramenta