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
subparse — Framework modular de coleta e correlação de artefatos de análise de malware | Kitploit
Ferramentas/GitHubGitHub/jstrosch/subparse
Análise EstáticaAnálise Dinâmica (Sandboxing)Análise ForenseColeta de InformaçõesAnálise de MalwareInteligência de Ameaças
GitHubjstrosch/subparse

subparse

Framework modular de coleta e correlação de artefatos de análise de malware

Ver Repositório
5612há 2 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
Site

subparse

Generic badge Generic badge Generic badge Generic badge Generic badge Generic badge Generic badge Generic badge

Subparse é um framework modular desenvolvido por Josh Strochein, Aaron Baker e Odin Bernstein. O framework é projetado para analisar e indexar arquivos de malware e apresentar as informações encontradas durante a análise em um visualizador web pesquisável. O framework é modular, utilizando um mecanismo central de análise, módulos de análise e uma variedade de enriquecedores que adicionam informações adicionais aos índices de malware. Os principais valores de entrada para o framework são diretórios de arquivos de malware, que o mecanismo central de análise ou um mecanismo de análise especificado pelo usuário analisa antes de adicionar informações adicionais de qualquer mecanismo de enriquecimento especificado pelo usuário, tudo antes de indexar as informações analisadas em um índice Elasticsearch. As informações coletadas podem então ser pesquisadas e visualizadas através de um visualizador web, que também permite filtrar qualquer valor obtido de qualquer arquivo. Atualmente existem 3 mecanismos de análise, os mecanismos de análise padrão (PEParser, OLEParser e ELFParser), e 2 mecanismos de enriquecimento (ABUSEEnricher e CAPEEnricher).

 

Primeiros Passos

Requisitos de Software

Para começar a usar o Subparse, existem alguns programas necessários/recomendados que precisam ser instalados e configurados antes de tentar trabalhar com nosso software.

SoftwareStatus

Requisitos Adicionais

Após instalar o software necessário/recomendado em seu sistema, existem algumas outras etapas que precisam ser tomadas para instalar o Subparse.

Requisitos do Python
O Python requer alguns outros pacotes que o Subparse depende para seus processos. Para concluir a configuração do Python, navegue até o local da sua instalação do Subparse e vá para a pasta *parser*. Os seguintes comandos que você precisará usar para instalar os requisitos do Python são:
root@kitploit:~
sudo get apt install build-essential
pip3 install -r ./requirements.txt
Requisitos do Docker
Como o Subparse usa o Docker para seu backend e interface web, a configuração dos contêineres Docker precisa ser concluída antes de usar o programa. Para isso, navegue até o diretório raiz da instalação do Subparse e use o seguinte comando para configurar as instâncias do Docker:
root@kitploit:~
docker-compose up

Nota: Isso pode levar algum tempo devido ao download das imagens e à configuração dos contêineres que serão necessários para o Subparse.

 

Passos de Instalação

  • Passos de Instalação

Uso

Opções da Linha de Comando

Opções de linha de comando disponíveis para subparse/parser/subparse.py:

Visualizando Resultados

Para visualizar os resultados dos analisadores do Subparse, navegue até localhost:8080. Se você estiver tendo problemas para visualizar o site, certifique-se de que o contêiner foi iniciado no Docker e que não há outro processo rodando na porta 8080 que possa impedir o site de ficar disponível.

 

Informações Gerais Coletadas

Antes de qualquer analisador ser executado, informações gerais são coletadas sobre a amostra, independentemente do tipo de arquivo subjacente. Essas informações incluem:

  • Hash MD5 da amostra
  • Hash SHA256 da amostra
  • Nome da amostra
  • Tamanho da amostra
  • Extensão da amostra
  • Extensão derivada da amostra

Módulos de Análise

Os analisadores são executados APENAS em amostras que correspondem ao tipo de arquivo. Por exemplo, arquivos PE terão, por padrão, o PEParser executado sobre eles, pois o tipo de arquivo corresponde àqueles que o PEParser é capaz de examinar.

Módulos Padrão

ELFParser
Este é o módulo de análise padrão que será executado em arquivos ELF. Informações coletadas:
  • Informações Gerais
  • Cabeçalhos de Programa
  • Cabeçalhos de Seção
  • Notas
  • Dados Específicos da Arquitetura
  • Informações de Versão
  • Informações de Desenrolamento ARM
  • Dados de Realocação
  • Tags Dinâmicas
OLEParser
Este é o módulo de análise padrão que será executado em arquivos formatados em OLE e RTF, utilizando o pacote OLETools para obter dados. As informações coletadas são:
  • Metadados
  • MRaptor
  • RTF
  • Horários
  • Indicadores
  • VBA / Macros VBA
  • Objetos OLE
PEParser
Este é o módulo de análise padrão que será executado em arquivos PE que correspondem ou incluem os tipos de arquivo: PE32 e MS-DOS. Informações coletadas:
  • Código e contagem de seções
  • Ponto de entrada
  • Base da imagem
  • Assinatura
  • Importações
  • Exportações

 

Módulos Enriquecedores

Estes módulos são opcionais e serão executados APENAS se especificados via a flag -e | --enrichers na linha de comando.

Módulos Padrão

ABUSEEnricher
Este enriquecedor usa a API do [Abuse.ch](https://abuse.ch/) e o [Malware Bazaar](https://bazaar.abuse.ch) para coletar mais informações sobre a(s) amostra(s) que o subparse está analisando; as informações são então agregadas e armazenadas no banco de dados Elastic.
CAPEEnricher
Este enriquecedor é usado para se comunicar com uma instância do CAPEv2 Sandbox, para coletar mais informações sobre a(s) amostra(s) por meio de análise dinâmica; as informações são então agregadas e armazenadas no banco de dados Elastic utilizando o Serviço de Mensageria Kafka para processamento em segundo plano.
STRINGEnricher
Este enriquecedor é um enriquecedor inteligente de strings, que analisará a amostra em busca de strings potencialmente interessantes. As categorias de strings que este enriquecedor procura incluem: Áudio, Imagens, Arquivos Executáveis, Chamadas de Código, Arquivos Comprimidos, Trabalho (Documentos Office), Endereços IP, Endereço IP + Porta, URLs de Sites, Argumentos de Linha de Comando.
YARAEnricher
Este enriquecedor usa um arquivo yara pré-compilado localizado em: parser/src/enrichers/yara_rules. Este arquivo pré-compilado inclui regras do VirusTotal e do YaraRulesProject

 

Desenvolvendo Analisadores e Enriquecedores Personalizados

A visualização web do Subparse foi construída usando Bootstrap para seu CSS, o que permite que qualquer CSS embutido do Bootstrap seja usado ao desenvolver seus próprios arquivos Vue.js de Analisador/Enriquecedor personalizados. Também fornecemos um exemplo para cada um para ajudar a começar e implementamos alguns widgets personalizados para facilitar o processo de desenvolvimento e promover a padronização na forma como as informações são exibidas. Todos os arquivos Vue.js são usados para exibir dinamicamente informações do Analisador/Enriquecedor personalizado e são usados como templates para os dados.

Nota: As convenções de nomenclatura, tanto para nomes de classe quanto de arquivos, devem ser seguidas rigorosamente; esta é a primeira coisa que deve ser verificada se você encontrar problemas ao executar seu Analisador/Enriquecedor personalizado. A convenção de nomenclatura do seu Analisador/Enriquecedor deve usar o mesmo nome em todos os arquivos e nomes de classe.

  • Desenvolvimento Python
  • Desenvolvimento Vue
  • Ajudantes Vue


Logging

O objeto logger é uma implementação singleton do logger padrão do Python. Para uso aprofundado, consulte a Documentação Oficial. Para o Subparse, os únicos métodos de logging que recomendamos usar são os níveis de logging para saída. São eles:

  • debug
  • warning
  • error
  • critical
  • exception
  • log
  • info


AGRADECIMENTOS

  • Esta pesquisa e todos os co-autores foram apoiados pela NSA Grant H98230-20-1-0326.
Baixar ferramenta
Link
DockerObrigatórioGuia de Instalação
Python3.8.1ObrigatórioGuia de Instalação
PyenvRecomendadoGuia de Instalação
ArgumentoAlternativaObrigatórioDescrição
-h--helpNãoMostra o menu de ajuda
-d SAMPLES_DIR--directory SAMPLES_DIRSimDiretório de amostras para analisar
-e ENRICHER_MODULES--enrichers ENRICHER_MODULESNãoMódulos enriquecedores a serem usados para análise adicional
-r--resetNãoRedefinir/excluir todos os dados no cluster Elasticsearch configurado
-v--verboseNãoExibir saída detalhada da linha de comando
-s--service-modeNãoEntra no modo de serviço permitindo que mais amostras sejam adicionadas ao SAMPLES_DIR durante o processamento