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
kaiju — CERT Kaiju é uma extensão de framework de análise binária para o conjunto de ferramentas de engenharia reversa de software Ghidra. Este repositório é um "espelho" -- por favor, registre tickets, relatórios de bugs ou pull requests no repositório principal em @CERTCC: https://github.com/certcc/kaiju | Kitploit
Ferramentas/GitHubGitHub/cmu-sei/kaiju
Análise EstáticaEngenharia ReversaAnálise de MalwareAnálise de BináriosAnálise de Firmware
GitHubcmu-sei/kaiju

kaiju

Ver Repositório
144393há 6 mesesRevisado 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 →
Site

Sobre

CERT Kaiju é uma extensão de framework de análise binária para o conjunto de ferramentas de engenharia reversa de software Ghidra. Este repositório é um "espelho" -- por favor, registre tickets, relatórios de bugs ou pull requests no repositório principal em @CERTCC: https://github.com/certcc/kaiju

Compartilhar

Dynamic YAML Badge release_on_tag Badge run_tests_on_push_pr Badge

CERT Kaiju Framework de Análise Binária para GHIDRA

CERT Kaiju é uma coleção de ferramentas de análise binária para Ghidra.

Esta é uma implementação em Ghidra/Java de algumas características do CERT Pharos Binary Analysis Framework, particularmente as ferramentas de hashing de funções e análise de malware, mas espera-se que cresça com novas ferramentas e capacidades ao longo do tempo.

Como este é um novo esforço, esta implementação ainda não possui paridade total de funcionalidades com a implementação original em C++ baseada em ROSE; no entanto, a migração para Java e Ghidra permitiu algumas novas funcionalidades não disponíveis no framework original — notavelmente, melhor tratamento de arquiteturas não-x86.

Como uma reestruturação significativa do framework e das ferramentas está ocorrendo, e a migração para Java e Ghidra permite capacidades diferentes da implementação em C++, decidiu-se utilizar uma nova marca para que haja menos confusão entre as implementações ao discutir as diferentes ferramentas e capacidades.

Nossa intenção para o futuro próximo é manter tanto o framework Pharos original quanto o Kaiju lado a lado, já que ambos podem fornecer funcionalidades e capacidades únicas.

RESSALVA: Como protótipo, muitos problemas podem surgir ao avaliar os hashes de funções criados por este plugin. Por exemplo, ao contrário da implementação do Pharos, o módulo de hashing de funções do Kaiju criará hashes para funções muito pequenas (ex., aquelas com uma única instrução como RET, causando muito mais colisões não intencionais). Dessa forma, os resultados analíticos podem variar entre este plugin e o Pharos fn2hash.

Instalação

Pacotes pré-construídos do Kaiju estão disponíveis. Basta baixar o arquivo ZIP correspondente à sua versão do Ghidra e instalar de acordo com as instruções abaixo. Recomenda-se instalar através da interface gráfica do Ghidra, mas também é possível descompactar manualmente no diretório apropriado para instalar.

CERT Kaiju requer as seguintes dependências de execução:

  • Ghidra 10.3.x, 10.4.x, 11.0.x, 11.1.x, 11.2.x, 11.3.x, 11.4.x, 12.0.x
  • JDK 21 (ou 17 para versões mais antigas do Ghidra)
  • Z3 incluindo os bindings Java do Z3 (arquivo .jar)

O Z3 é fornecido pré-compilado como parte dos pacotes pré-construídos, ou você pode compilar o Z3 por conta própria ou usar o pacote da sua distribuição Linux.

Instalação Gráfica

Inicie o Ghidra e, na janela de abertura, selecione no menu: File > Install Extension. Clique no sinal de mais no topo da janela de extensões, navegue e selecione o arquivo .zip no navegador de arquivos e pressione OK. A extensão será instalada e uma caixa de seleção será marcada ao lado do nome da extensão na janela para indicar que está instalada e pronta.

A interface solicitará que você reinicie o Ghidra para começar a usar a extensão. Basta reiniciar e, em seguida, os recursos extras do Kaiju estarão disponíveis para uso interativo ou em scripts.

Algumas funcionalidades podem exigir a ativação de plugins do Kaiju. Para fazer isso, abra o Code Browser e navegue até o menu File > Configure. Na janela que aparecer, clique no link Configure abaixo do ícone da categoria "CERT Kaiju". Um pop-up exibirá todos os plugins do Kaiju disponíveis publicamente. Marque quaisquer plugins que deseja ativar e pressione OK. Agora você terá acesso aos recursos interativos dos plugins.

Se um plugin não estiver imediatamente visível após ser ativado, você pode encontrá-lo no menu Window do Code Browser.

Versões experimentais "alfa" de ferramentas futuras podem estar disponíveis na categoria "Experimental" se você deseja testá-las. No entanto, esses plugins são definitivamente experimentais e não suportados, e não são recomendados para uso em produção. Mas recebemos feedbacks iniciais com satisfação!

Instalação Manual

Extensões do Ghidra como o Kaiju também podem ser instaladas manualmente descompactando o conteúdo da extensão no diretório apropriado da sua instalação do Ghidra. Para mais informações, consulte The Ghidra Installation Guide.

Compile Você Mesmo

Você também pode compilar a extensão Kaiju diretamente do código-fonte. Consulte o arquivo INSTALL.md incluído no diretório raiz do código-fonte do Kaiju.

Uso

As ferramentas do Kaiju podem ser usadas de forma interativa gráfica, ou através de um modo "headless" mais adequado para trabalhos em lote. Algumas ferramentas podem estar disponíveis apenas para uso gráfico ou headless, pela natureza da ferramenta.

Interface Gráfica Interativa

O Kaiju cria uma interface gráfica interativa (GUI) dentro do Ghidra utilizando Java Swing e a arquitetura de plugins do Ghidra.

A maioria das ferramentas do Kaiju são na verdade plugins de Análise que são executados automaticamente quando a opção "Auto Analysis" é escolhida, seja ao importar um novo executável para desmontar, ou escolhendo diretamente Analysis > Auto Analyze... na janela do code browser. Você verá vários plugins de Análise do CERT selecionados por padrão na ferramenta Auto Analyze, mas você pode ativar/desativar qualquer um conforme desejado.

No entanto, as ferramentas de Análise devem ser executadas antes que as várias ferramentas GUI funcionem. Em alguns casos extremos, pode até ser útil executar a Auto Analysis duas vezes para garantir que todos os metadados sejam produzidos para criar informações corretas de particionamento e desmontagem, o que por sua vez pode influenciar os resultados de hashing.

Os Analisadores são executados automaticamente durante a fase de análise do Ghidra e incluem:

  • DisasmImprovements = melhora o particionamento de funções da desmontagem em comparação com o particionamento padrão do Ghidra.
  • Fn2Hash = calcula hashes de funções para todas as funções em um programa e é usado para gerar assinaturas YARA para programas.

As ferramentas GUI incluem:

  • GhiHorn = um plugin para calcular caminhos e acessibilidade em grafos de fluxo de controle, utilizando Z3.
    • Selecione Kaiju > GhiHorn para acessar esta ferramenta a partir do CodeBrowser do Ghidra. Você também pode iniciar o plugin pressionando CTRL-G.
  • Function Hash Viewer = um plugin que exibe uma lista interativa de funções em um programa e vários tipos de hashes. Analistas podem usar este plugin para exportar uma ou mais funções de um programa para assinaturas YARA.
    • Selecione Window > CERT Kaiju Function Hash Viewer no menu para começar a usar esta ferramenta se ela não estiver visível. Uma nova janela aparecerá exibindo uma tabela de hashes e outros dados. Botões na parte superior da janela podem atualizar a tabela ou exportar dados para arquivo ou uma assinatura YARA. Esta janela também pode ser ancorada no CodeBrowser principal do Ghidra para uso mais fácil junto com outros plugins. Documentação de uso mais extensa pode ser encontrada no menu Help > Contents do Ghidra ao usar a ferramenta.
  • OOAnalyzer JSON Importer = um plugin que pode carregar, analisar e aplicar resultados do OOAnalyzer gerados pelo Pharos a executáveis C++ orientados a objetos em um projeto do Ghidra. Quando iniciado, o plugin solicitará ao usuário o arquivo de saída JSON produzido por OOAnalyzer que contém informações sobre classes C++ recuperadas. Após carregar o arquivo JSON, os tipos de dados e símbolos C++ recuperados pelo OOAnalyzer são atualizados no Code Browser do Ghidra. Os detalhes de design e implementação do plugin são descritos em nossa postagem no blog do SEI intitulada Using OOAnalyzer to Reverse Engineer Object Oriented Code with Ghidra.
    • Selecione Kaiju > OOAnalyzer Importer no menu para começar a usar esta ferramenta. Um diálogo simples solicitará que você localize o arquivo JSON que deseja importar. Documentação de uso mais extensa pode ser encontrada no menu Help > Contents do Ghidra ao usar a ferramenta.

Modo "Headless" (Linha de Comando)

O Ghidra também suporta um modo "headless" que permite executar ferramentas em algumas circunstâncias sem usar a GUI interativa. Esses comandos podem, portanto, ser utilizados para scripts e trabalhos em "modo lote" de grandes números de arquivos.

As ferramentas headless dependem em grande parte da funcionalidade GhidraScript do Ghidra.

Ferramentas headless incluem:

  • fn2hash = executa automaticamente o Fn2Hash em um programa especificado e exporta todos os hashes para um arquivo CSV especificado
  • fn2yara = executa automaticamente o Fn2Hash em um programa especificado e exporta todos os dados de hash como assinaturas YARA para o arquivo especificado
  • fnxrefs = analisa um Programa e exporta uma lista de Funções com base no endereço de ponto de entrada que possuem referências cruzadas em dados ou outras partes do Programa

Um script simples de lançamento em shell chamado kaijuRun foi incluído para executar esses comandos headless em cenários simples, como gerar os hashes de funções para cada função em um único executável. Supondo que a variável GHIDRA_INSTALL_DIR esteja definida, pode-se, por exemplo, executar o script de lançamento em um único executável da seguinte forma:

root@kitploit:~
$GHIDRA_INSTALL_DIR/Ghidra/Extensions/kaiju/kaijuRun fn2hash example.exe

Este comando geraria os resultados em um arquivo nomeado automaticamente como example.exe.Hashes.csv.

A ajuda básica para o script kaijuRun está disponível executando:

root@kitploit:~
$GHIDRA_INSTALL_DIR/Ghidra/Extensions/kaiju/kaijuRun --help

Consulte o arquivo docs/HeadlessKaiju.md no repositório para mais informações sobre o uso deste modo e o script de lançamento kaijuRun.

Documentação e Ajuda Adicionais

Documentação e ajuda mais abrangentes estão disponíveis em um de dois formatos.

Consulte o diretório docs/ para documentação e ajuda formatadas em Markdown para todas as ferramentas e componentes do Kaiju. Esses documentos são fáceis de manter, editar e ler até mesmo a partir de uma linha de comando.

Alternativamente, você pode encontrar a mesma documentação no sistema de ajuda embutido do Ghidra. Para acessar esses documentos de ajuda, a partir do menu do Ghidra, vá para Help > Contents e selecione CERT Kaiju na navegação em árvore no lado esquerdo da janela de ajuda.

Observe que a documentação de Ajuda do Ghidra tem exatamente o mesmo conteúdo que os arquivos Markdown no diretório docs/; graças a um plugin gradle na árvore, o gradle analisará automaticamente o Markdown e exportará para HTML do Ghidra durante o processo de compilação. Isso permite uma manutenção ainda mais simples (atualizar documentos em apenas um lugar, não dois) e mantém os dois sincronizados.

Toda nova documentação deve ser adicionada ao diretório docs/.

Licenciamento

Este software é licenciado sob uma licença simplificada do tipo BSD pelo Software Engineering Institute da Carnegie Mellon University. Consulte os detalhes completos desta licença, bem como os termos de licenciamento das dependências usadas neste projeto, no arquivo LICENSE.md na raiz deste repositório.

O logotipo do CERT Kaiju é baseado em arte criada por Cameron Spahn, originalmente lançada sob os termos da licença Creative Commons Attribution-Share Alike 4.0 International.

Baixar ferramenta