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
Ghidrathon — A extensão open-source da equipe FLARE para adicionar scripting em Python 3 ao Ghidra. | Kitploit
Ferramentas/GitHubGitHub/mandiant/ghidrathon
Engenharia ReversaScripting e AutomaçãoAnálise de MalwareAnálise de BináriosArchived
GitHubmandiant/ghidrathon

Ghidrathon

A extensão open-source da equipe FLARE para adicionar scripting em Python 3 ao Ghidra.

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

Ghidrathon

GitHub Release GitHub Downloads (all assets, latest release) CI License

O Ghidrathon é uma extensão do Ghidra que adiciona recursos de script em Python 3 ao Ghidra. Por quê? O Ghidra oferece suporte nativo a scripts em Java e Jython. Infelizmente, muitas ferramentas de análise de código aberto, como capa, Unicorn Engine, angr, etc., são escritas em Python 3, o que dificulta e, em alguns casos, impossibilita o uso dessas ferramentas no Ghidra. Além disso, a comunidade de segurança lançou vários plugins excelentes para outros frameworks de SRE, como IDA Pro e Binary Ninja, mas, novamente, como muitos desses plugins usam Python 3, é difícil portá-los para o Ghidra. O Ghidrathon ajuda você a usar ferramentas Python 3 existentes e desenvolver novas no Ghidra, além de permitir criar scripts no Ghidra usando Python moderno, de forma integrada à interface do Ghidra. Ele substitui a extensão Python 2.7 existente, implementada via Jython. Isso inclui a janela do interpretador interativo, a integração com o Ghidra Script Manager e a execução de scripts no modo headless do Ghidra.

example

Consulte nosso exemplo de script Python 3 para o Ghidra aqui para ver mais de perto como escrever scripts Python 3 para o Ghidra.

Confira:

  • A visão geral em nosso primeiro artigo do blog sobre o Ghidrathon

Instalando o Ghidrathon

Requisitos

Use as seguintes etapas para instalar o Ghidrathon no seu ambiente Ghidra:

  1. Baixe e descompacte o lançamento mais recente do Ghidrathon
  2. Execute os seguintes comandos usando o interpretador Python que você deseja usar com o Ghidrathon (requirements.txt e ghidrathon_configure.py estão incluídos no lançamento):
root@kitploit:~
$ python -m pip install -r requirements.txt
$ python ghidrathon_configure.py <absolute_path_to_ghidra_install_dir>

Nota: por padrão, o ghidrathon_configure.py tenta gravar um arquivo chamado ghidrathon.save em <absolute_path_to_ghidra_install_dir>. Você pode especificar o caminho onde esse arquivo será gravado definindo a variável de ambiente GHIDRATHON_SAVE_PATH antes de executar o ghidrathon_configure.py e o Ghidra:

root@kitploit:~
$ export GHIDRATHON_SAVE_PATH="/path/to/custom/dir" # Linux/MacOS
$ set GHIDRATHON_SAVE_PATH="C:\path\to\custom\dir"  # Windows

Nota: você pode ser solicitado a definir uma variável de ambiente chamada JAVA_HOME. Ela deve referenciar o caminho absoluto do JDK que você configurou para a sua instalação do Ghidra.

  1. Instale a extensão Ghidrathon (.zip) no Ghidra:
    • Usando a interface do Ghidra:
      • Navegue até File > Install Extensions...
      • Clique no botão verde +
      • Navegue até a extensão Ghidrathon (.zip)
      • Clique em Ok
      • Opcional
        • Selecione Install Anyway se a janela Extension Version Mismatch for exibida
    • Usando um ambiente limitado:
      • Extraia a extensão Ghidrathon (.zip) para <absolute_path_to_ghidra_install_dir>\Ghidra\Extensions

Alternando entre interpretadores Python

Você pode alternar o Ghidrathon para usar um interpretador Python diferente executando a etapa 2 usando o novo interpretador Python.

Usando ambientes virtuais Python

Você pode usar um ambiente virtual Python com o Ghidrathon executando a etapa 2 a partir do ambiente virtual. Para alternar para um ambiente virtual diferente, basta executar a etapa 2 a partir do novo ambiente virtual.

Usando o Ghidrathon

Janela do interpretador Python 3

A janela do interpretador fornece acesso interativo ao seu interpretador Python 3. Clique em "Window" e selecione "Ghidrathon" para abrir a janela do interpretador.

example

Integração com o Ghidra Script Manager

O Ghidrathon integra-se diretamente ao Ghidra Script Manager, permitindo criar, editar e executar scripts Python 3 no Ghidra. Clique em "Create New Script" e selecione "Python 3" para criar um novo script Python 3. Clique em "Run Script" ou "Run Editors's Script" para executar seu script Python 3 e verifique a janela do Ghidra Console para ver a saída do script.

example

Modo headless do Ghidra

O Ghidrathon ajuda você a executar scripts Python 3 no modo headless do Ghidra. Execute o script analyzeHeadless localizado na pasta de instalação do seu Ghidra, especifique seu script Python 3 e verifique a janela do console para ver a saída do script.

root@kitploit:~
$ analyzeHeadless C:\Users\wampus example -process example.o -postScript ghidrathon_example.py
[...]
INFO  SCRIPT: C:\Users\wampus\.ghidra\.ghidra_10.0.3_PUBLIC\Extensions\Ghidrathon-master\ghidra_scripts\ghidrathon_example.py (HeadlessAnalyzer)
Function _init @ 0x101000: 3 blocks, 8 instructions
Function FUN_00101020 @ 0x101020: 1 blocks, 2 instructions
Function __cxa_finalize @ 0x101040: 1 blocks, 2 instructions
Function printf @ 0x101050: 1 blocks, 2 instructions
Function _start @ 0x101060: 1 blocks, 13 instructions
Function deregister_tm_clones @ 0x101090: 4 blocks, 9 instructions
Function register_tm_clones @ 0x1010c0: 4 blocks, 14 instructions
Function __do_global_dtors_aux @ 0x101100: 5 blocks, 14 instructions
[...]
INFO  REPORT: Post-analysis succeeded for file: /example.o (HeadlessAnalyzer)
INFO  REPORT: Save succeeded for processed file: /example.o (HeadlessAnalyzer)

Para obter mais informações sobre como executar o Ghidra no modo headless, consulte <absolute_path_to_ghidra_install_dir>/support/analyzeHeadlessREADME.html.

Módulos Python de terceiros

Uma das nossas maiores motivações ao desenvolver o Ghidrathon foi permitir o uso de módulos Python 3 de terceiros no Ghidra. Você pode instalar um módulo e começar a usá-lo dentro do Ghidra exatamente como faria em uma configuração Python típica. Isso também se aplica a módulos que você já instalou anteriormente. Por exemplo, podemos instalar e usar o Unicorn para emular código ARM dentro do Ghidra.

example

Escrevendo scripts Python 3 para o Ghidra

O Ghidrathon oferece uma experiência de script que espelha de perto as extensões Java e Jython do Ghidra, incluindo a disponibilização das variáveis de instância de estado do GhidraScript, ex. currentProgram, e dos métodos FlatProgramAPI, ex. findBytes no escopo builtins do Python. Isso significa que todos os módulos Python importados pelo seu código têm acesso a essas variáveis e métodos. O Ghidrathon diverge ligeiramente das extensões Java e Jython do Ghidra ao expor as variáveis de estado do GhidraScript como chamadas de função Python em vez de acessos diretos, ex. seu código Python 3 deve acessar currentProgram usando a chamada de função currentProgram(). Essa pequena mudança garante que seu código Python 3 receba as variáveis de estado corretas do GhidraScript durante a execução. Consulte nosso exemplo de script Python 3 para o Ghidra aqui para ver mais de perto como escrever scripts Python 3 para o Ghidra.

Como funciona?

O Ghidrathon conecta sua instalação Python local ao Ghidra usando o projeto de código aberto Jep. Essencialmente, seu interpretador Python local é executado dentro do Ghidra com acesso a todos os seus pacotes Python e à API de script padrão do Ghidra. O Ghidrathon também funciona com ambientes virtuais Python, ajudando você a criar, isolar e gerenciar pacotes que talvez queira instalar apenas para uso no Ghidra. Como o Ghidrathon usa sua instalação Python local, você tem controle sobre a versão do Python e o ambiente executados dentro do Ghidra.

Para obter mais informações sobre como o Jep incorpora Python em Java, consulte a documentação aqui.

Considerações

O Ghidrathon usa a biblioteca de código aberto Jep, que usa a Java Native Interface (JNI) para incorporar Python na JVM. Os desenvolvedores do Ghidra desaconselham o uso de JNI no Ghidra por motivos discutidos aqui.

Baixar ferramenta
FerramentaVersãoFonte
Ghidrathon>= 4.0.0https://github.com/mandiant/Ghidrathon/releases
Python>= 3.8.0https://www.python.org/downloads
Jep== 4.2.0https://pypi.org/project/jep
Ghidra>= 10.3.2https://github.com/NationalSecurityAgency/ghidra/releases
Java>= 17.0.0https://adoptium.net/temurin/releases