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
DAILA — Um plugin agnóstico de decompilador para interagir com IA no seu decompilador. Suporte a GPT-4, Claude e modelos locais! | Kitploit
Ferramentas/GitHubGitHub/mahaloz/daila
Análise de VulnerabilidadesAnálise de CódigoEngenharia ReversaAnálise de BináriosEngenharia Reversa Assistida por IA
GitHubmahaloz/daila

DAILA

Um plugin agnóstico de decompilador para interagir com IA no seu decompilador. Suporte a GPT-4, Claude e modelos locais!

Ver Repositório
70461há 1 mêsRevisado 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

DAILA

O Assistente de Linguagem Artificialmente Inteligente para Decompiladores (DAILA) é uma interface unificada para sistemas de IA usados em decompiladores. Com o DAILA, você pode utilizar vários sistemas de IA, como LLMs locais e remotos, todos nas mesmas interfaces de scripting e GUI em diversos decompiladores. O DAILA foi destaque na palestra principal do HITCON CMT 2023 e foi estudado no trabalho da NDSS 2026 "Decompiling the Synergy: An Empirical Study of Human–LLM Teaming in Software Reverse Engineering". Se você procura o repositório do artigo, encontre-o aqui.

Junte-se ao nosso Discord abaixo para mais ajuda online (hospedado no servidor BinSync):

Discord

Decompiladores e Sistemas de IA Suportados

O DAILA interage com o decompilador de forma abstrata por meio da biblioteca DecLib. Isso permite que o DAILA suporte os seguintes decompiladores:

  • IDA Pro: >= 8.4
  • Ghidra: >= 12.0
  • Binary Ninja: >= 2.4
  • angr-management: >= 9.0

O DAILA suporta qualquer LLM suportado pelo LiteLLM, como:

  • ChatGPT
  • Claude
  • Llama2
  • Gemini
  • e mais...

O DAILA também suporta modelos locais de diferentes tipos, como o VarBERT, um modelo local para renomear variáveis na decompilação, publicado no S&P 2024.

Instalação

Instale o backend da nossa biblioteca via pip e o nosso plugin de decompilador através do nosso instalador:

root@kitploit:~
pip3 install dailalib && daila --install 

Este é o modo leve. Se você quiser usar o VarBERT, é necessário instalar a versão completa:

root@kitploit:~
pip3 install 'dailalib[full]' && daila --install 

Isso também baixará os modelos VarBERT para você através da API VarBERT. Se você estiver instalando o DAILA em uma máquina sem acesso à internet, como em uma rede segura, você pode usar nossa imagem Docker na seção Container Docker.

Passos Extras para o Ghidra

Você precisa seguir alguns passos extras para fazer o Ghidra funcionar. Primeiro, você deve estar executando no modo PyGhidra. Para fazer isso, vá até o diretório de instalação do Ghidra e execute ./support/pyghidraRun.

Em seguida, habilite o plugin do DAILA:

  1. Inicie o Ghidra e abra um binário
  2. Vá ao menu Windows > Script Manager
  3. Procure por daila e habilite o script

Você deve ter python3 no seu PATH para a versão do Ghidra funcionar. Nós literalmente o chamamos de dentro do Python 2. Talvez você também precise habilitar $USER_HOME/ghidra_scripts como um caminho de scripts válido no Ghidra.

Instalação Manual (se o método acima falhar)

Se o método acima falhar, você precisará instalar manualmente. Para instalar manualmente, primeiro execute pip3 install dailalib no repositório e, em seguida, copie o arquivo daila_plugin.py para o diretório de plugins do seu decompilador.

Uso

O DAILA foi projetado para ser usado de duas maneiras:

  1. Como um plugin de decompilador com GUI
  2. Como uma biblioteca de scripting no seu decompilador

GUI do Decompilador

Com exceção do Ghidra (veja abaixo), ao iniciar seu decompilador você terá um novo menu de contexto que pode ser acessado clicando com o botão direito em qualquer lugar de uma função:

Menu de contexto do DAILA

Se você estiver usando o Ghidra, vá a Tools->DAILA->Start DAILA Backend para iniciar o servidor backend. Depois de fazer isso, você pode usar o menu de contexto conforme mostrado acima.

Scripting

Você pode usar o DAILA em seus próprios scripts importando o pacote dailalib. Aqui está um exemplo usando a API da OpenAI:

root@kitploit:~
from dailalib import LiteLLMAIAPI
from declib.api import DecompilerInterface

deci = DecompilerInterface.discover()
ai_api = LiteLLMAIAPI(decompiler_interface=deci)
for function in deci.functions:
    summary = ai_api.summarize_function(function)

Docker Container

Se você estiver tentando instalar o DAILA para uma instalação única que não usará a internet após a instalação, como em uma rede segura, você pode usar nosso contêiner Docker. Você pode compilar o contêiner você mesmo, salvar a imagem em um tarball e carregá-la na máquina de destino, ou usar nossa imagem pré-construída. Você pode compilar o contêiner executando docker build . -t daila na raiz deste repositório. Você também pode baixar nossa imagem pré-construída executando docker pull mahaloz/daila:latest (a imagem é para Linux x86_64). O contêiner contém o DAILA e uma cópia do Ghidra.

Agora você precisa encaminhar o X11 para o contêiner para poder ver a GUI. Para fazer isso, execute o contêiner com as seguintes flags:

root@kitploit:~
docker run -it --rm -e DISPLAY=$DISPLAY -v /tmp/.X11-unix:/tmp/.X11-unix mahaloz/daila:latest

Dentro do contêiner, você pode iniciar o Ghidra a partir de /tools/ghidra_10.4_PUBLIC/ghidraRun. Agora siga os Passos Extras para o Ghidra para habilitar o plugin do DAILA e está tudo pronto!

Backends de IA Suportados

LiteLLM (vários backends)

O DAILA suporta a API LiteLLM, que por sua vez suporta vários backends, como OpenAI. Para usar uma API de LLM comercial, você deve fornecer sua própria chave de API. Por exemplo, para usar a API OpenAI, você deve ter uma chave de API da OpenAI. Se o seu decompilador não tiver acesso à variável de ambiente OPENAI_API_KEY, você deve usar a opção do DAILA no decompilador para definir a chave de API.

Em Settings, você também pode adicionar/usar qualquer endpoint de LLM baseado em OpenAI, como o Llama2.

Atualmente, o DAILA suporta os seguintes prompts:

  • Resumir uma função
  • Renomear variáveis
  • Renomear função
  • Identificar a origem de uma função
  • Encontrar possíveis vulnerabilidades em uma função
  • Resumir a página de manual (man page) de uma chamada de biblioteca
  • Prompt livre... basta digitar o seu próprio prompt!

VarBERT

O VarBERT é um modelo BERT local do artigo do S&P 2024 ""Len or index or count, anything but v1": Predicting Variable Names in Decompilation Output with Transfer Learning". O VarBERT serve para renomear variáveis (de pilha, registradores e argumentos) na decompilação. Para entender como usar o VarBERT como biblioteca, consulte a documentação da API VarBERT. Usá-lo no DAILA é tão simples quanto usar o menu de contexto da GUI ao clicar em uma função.

Demonstração

Você pode encontrar uma demonstração do VarBERT rodando dentro do DAILA abaixo:

Demonstração do VarBERT

Decompiladores Suportados

  • IDA

  • Binja

  • Ghidra

  • angr management

Baixar ferramenta