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
binja_dynamics — Uma interface PyQt5 para o plugin binjatron do Binary Ninja que inclui recursos de destaque com o objetivo de facilitar o aprendizado de engenharia reversa para iniciantes. | Kitploit
Ferramentas/GitHubGitHub/nccgroup/binja_dynamics
Análise Dinâmica (Sandboxing)Engenharia ReversaDepuradoresAnálise de BináriosAprendizado e Educação
GitHubnccgroup/binja_dynamics

binja_dynamics

Uma interface PyQt5 para o plugin binjatron do Binary Ninja que inclui recursos de destaque com o objetivo de facilitar o aprendizado de engenharia reversa para iniciantes.

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

Ferramentas de Análise Dinâmica para Binary Ninja

Este projeto adiciona uma interface PyQt5 ao plugin binjatron para Binary Ninja, que inclui recursos de realce destinados a facilitar o aprendizado de engenharia reversa para iniciantes.

Motivação

A capacidade de fazer engenharia reversa de binários x86 é uma habilidade importante mesmo fora da indústria de segurança da informação. No entanto, mesmo com a abundância de materiais de treinamento disponíveis, continua sendo uma habilidade difícil de aprender. Muitos estudantes expressaram frustração com a quantidade de conhecimento prévio necessária para progredir, ainda que modestamente, em binários simples.

O Binary Ninja é frequentemente comercializado para estudantes devido ao seu custo relativamente baixo, interface limpa e facilidade de uso. As linguagens intermediárias de baixo e médio nível também fornecem uma maneira fácil de entender o que as instruções fazem. Este projeto visa tornar o Binary Ninja uma ferramenta ainda melhor para iniciantes, facilitando a visualização da execução de um binário.

Componentes

  • Depuração via Binjatron
  • Barra de ferramentas do depurador
  • Visualizador de registradores
  • Visualizador de pilha
  • Visualizador de backtrace
  • Origens

    Este projeto é um produto do programa de estágio de verão de 2017 do NCC Group. Os componentes de depuração visual podem ser considerados um sucessor espiritual do Microcorruption, um CTF de segurança embarcada produzido pela Matasano Security. Atualizações futuras serão acompanhadas em https://github.com/ehennenfent/binja_dynamics. O NCC Group não é responsável por quaisquer alterações adicionais feitas no repositório após 18 de agosto de 2017.

    Instalação

    Dentro da sua pasta de plugins do Binary Ninja, execute:

    root@kitploit:~
    git clone https://github.com/ehennenfent/binja_dynamics.git
    cd binja_dynamics
    ./install.sh
    

    Uso

    Após carregar um binário, clique no item Enable Dynamic Analysis Tools no menu de ferramentas. Uma janela do depurador será aberta, que você pode controlar pelos botões da barra de ferramentas. Conforme você avança pela execução, a interface será atualizada em tempo real para refletir o estado do programa. Graças ao Binjatron, a instrução atual e quaisquer breakpoints são destacados na visualização do binário. Para cada endereço de memória e para os registradores, o valor é destacado em laranja sempre que tiver mudado como resultado da instrução anterior. Da mesma forma, o topo e a base do quadro de pilha atual (bem como a localização prevista do endereço de retorno) são destacados para facilitar aos iniciantes a identificação de quais porções da memória são importantes para examinar. O visualizador de traceback exibe um backtrace dos quadros de pilha atuais e fornece um botão que salta automaticamente a visualização do binário para o local indicado pelo endereço de memória onde o plugin espera encontrar o endereço de retorno. Em algumas funções, o quadro de pilha não é desmontado da maneira que o plugin espera, portanto, esse endereço de retorno previsto pode nem sempre estar correto.

    Screenshot

    Realce

    (No screenshot acima, o ponteiro base é mostrado em verde-oliva)

    • Instrução atual - vermelho
    • Breakpoint - azul
    • Memória ou registrador alterado - texto laranja
    • Ponteiro de pilha - verde-claro
    • Ponteiro base - azul-claro
    • Endereço de retorno previsto - vermelho
    • Ponteiro de instrução (quando aplicável) - vermelho vivo

    Documentação

    Código

    Em algumas ocasiões, pode ser necessário consultar o código-fonte para entender o comportamento exato das interfaces. Prevendo isso, muitas das decisões de design e detalhes de implementação são explicados em comentários inline.

    Wiki

    A wiki ainda é relativamente esparsa, mas conteúdo como a lista de obstáculos e o registro de desenvolvimento pode ser útil na solução de problemas.

    Exemplos

    Considere consultar o repositório binja_sensei para exemplos que possam ajudar você a começar.

    Limitações Atuais

    • Atualmente, apenas binários Linux x86(64) são suportados. Mesmo com essa limitação, pode haver binários que se comportem de uma maneira que o binja_dynamics ou o Voltron não consigam lidar. Você é encorajado a abrir um pull request ou uma issue com quaisquer erros que encontrar.
    • O binja_dynamics só foi testado no Ubuntu 16.04. Embora o suporte a Windows seja provavelmente inviável devido à forma como o redirecionamento de terminal funciona, pode ser possível obter funcionalidade razoável em outras plataformas unix. Mais uma vez, pull requests e issues são bem-vindos.
    • Como o Binary Ninja e o binjatron são baseados em Python 2.7, a versão do GDB que acompanha o Ubuntu deve ser substituída por uma versão que suporte Python 2.7 antes de o binja_dynamics ser instalado. Verificou-se que o script de instalação faz isso com sucesso em uma VM Ubuntu 16.04 limpa, mas atualizações do GDB, atualizações do Ubuntu ou componentes pré-instalados (se você não estiver instalando em uma VM limpa) podem quebrá-lo.
    • Por motivos de desempenho, o visualizador de memória exibe apenas o conteúdo da pilha e dos segmentos BSS.
    • Veja Issues para mais informações

    Conteúdo de Terceiros

    • O binja_dynamics faz uso de um fork do qthexedit, que é licenciado sob GPLv2.
    • As imagens usadas para os ícones são licenciadas sob Creative Commons. Veja attribution.txt para informações sobre as fontes.

    Requisitos

    • binjatron
    • binja_toolbar
    • binja_spawn_terminal
    • voltron
    • PyQt5
    • Binary Ninja

    Excluindo o Binary Ninja, o install.sh cuidará dessas dependências para você.

    Baixar ferramenta