Skip to content
KitploitKITPLOIT
OutilsBlog
Soumettre
OutilsBlog
Soumettre

Outils de Hacking, PenTest et Cybersécurité pour votre Arsenal de Sécurité !

Kitploit est un répertoire d'outils de hacking, de cybersécurité et de pentesting. Découvrez les dernières mises à jour des projets pour trouver des vulnérabilités, analyser des systèmes, automatiser les tests et renforcer votre sécurité.

··Flux·Contact·Confidentialité·© 2026 Kitploit

Répertoire d'outils

Catégories

Voir toutes les catégories
Loading categories
DAILA — Un plugin indépendant du décompilateur pour interagir avec l'IA dans votre décompilateur. GPT-4, Claude et les modèles locaux sont pris en charge ! | Kitploit
Outils/GitHubGitHub/mahaloz/daila
Analyse des VulnérabilitésAnalyse de CodeRétro-ingénierieAnalyse de BinairesRétro-Ingénierie Assistée par IA
GitHubmahaloz/daila

DAILA

Un plugin indépendant du décompilateur pour interagir avec l'IA dans votre décompilateur. GPT-4, Claude et les modèles locaux sont pris en charge !

Voir le dépôt
7046112il y a 1 moisVérifié par Kitploit

Populaires

Voir tout →

Découvrez les outils les plus utilisés par notre communauté.

Explorer tous les outils

Parcourez notre collection d'outils

Voir tous les outils →
Partager

DAILA

Le Decompiler Artificially Intelligent Language Assistant (DAILA) est une interface unifiée pour les systèmes d'IA utilisés dans les décompilateurs. Avec DAILA, vous pouvez utiliser divers systèmes d'IA, comme les LLM locaux et distants, dans les mêmes interfaces de script et graphiques (GUI) sur de nombreux décompilateurs. DAILA a été présenté lors du keynote de HITCON CMT 2023 et a fait l'objet d'une étude dans les travaux NDSS 2026 intitulés "Decompiling the Synergy: An Empirical Study of Human–LLM Teaming in Software Reverse Engineering". Si vous cherchez le dépôt de l'article, vous le trouverez ici.

Rejoignez notre Discord ci-dessous pour obtenir de l'aide en ligne (hébergé sur le serveur BinSync) :

Discord

Décompilateurs et systèmes d'IA pris en charge

DAILA interagit avec le décompilateur de manière abstraite via la bibliothèque DecLib. Cela permet à DAILA de prendre en charge les décompilateurs suivants :

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

DAILA prend en charge tout LLM pris en charge par LiteLLM, comme :

  • ChatGPT
  • Claude
  • Llama2
  • Gemini
  • et plus encore...

DAILA prend également en charge des modèles locaux de différents types, comme VarBERT, un modèle local de renommage des variables dans la décompilation publié lors de S&P 2024.

Installation

Installez notre backend de bibliothèque via pip et notre plugin de décompilateur via notre installeur :

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

Il s'agit du mode léger. Si vous souhaitez utiliser VarBERT, vous devez installer la version complète :

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

Cela téléchargera également les modèles VarBERT pour vous via l'API VarBERT. Si vous installez DAILA sur une machine sans accès à Internet, comme sur un réseau sécurisé, vous pouvez utiliser notre image Docker dans la section Docker Container.

Ghidra Extra Steps

Vous devez effectuer quelques étapes supplémentaires pour que Ghidra fonctionne. Tout d'abord, vous devez être en mode PyGhidra. Pour ce faire, accédez à votre répertoire d'installation de Ghidra et exécutez ./support/pyghidraRun.

Ensuite, activez le plugin DAILA :

  1. Démarrez Ghidra et ouvrez un binaire
  2. Allez dans le menu Windows > Script Manager
  3. Recherchez daila et activez le script

Vous devez avoir python3 dans votre PATH pour que la version Ghidra fonctionne. Nous l'appelons littéralement depuis Python 2. Vous devrez peut-être aussi activer $USER_HOME/ghidra_scripts comme chemin de scripts valide dans Ghidra.

Manual Install (if above fails)

Si ce qui précède échoue, vous devrez installer manuellement. Pour installer manuellement, exécutez d'abord pip3 install dailalib dans le dépôt, puis copiez le fichier daila_plugin.py dans le répertoire des plugins de votre décompilateur.

Utilisation

DAILA est conçu pour être utilisé de deux manières :

  1. Comme plugin de décompilateur avec une interface graphique (GUI)
  2. Comme bibliothèque de scripts dans votre décompilateur

Interface graphique du décompilateur

À l'exception de Ghidra (voir ci-dessous), lorsque vous démarrez votre décompilateur, vous disposez d'un nouveau menu contextuel auquel vous pouvez accéder en cliquant avec le bouton droit n'importe où dans une fonction :

Menu contextuel de DAILA

Si vous utilisez Ghidra, accédez à Tools->DAILA->Start DAILA Backend pour démarrer le serveur backend. Une fois cela fait, vous pouvez utiliser le menu contextuel comme indiqué ci-dessus.

Scripting

Vous pouvez utiliser DAILA dans vos propres scripts en important le package dailalib. Voici un exemple utilisant l'API 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

Si vous essayez d'installer DAILA pour une installation unique qui n'utilisera pas Internet après l'installation, par exemple sur un réseau sécurisé, vous pouvez utiliser notre conteneur Docker. Vous pouvez soit construire vous-même le conteneur, enregistrer l'image dans une archive, puis la charger sur la machine cible, soit utiliser notre image pré-construite. Vous pouvez construire le conteneur vous-même en exécutant docker build . -t daila à la racine de ce dépôt. Vous pouvez également télécharger notre image pré-construite en exécutant docker pull mahaloz/daila:latest (l'image est pour Linux x86_64). Le conteneur contient DAILA et une copie de Ghidra.

Vous devez maintenant transférer X11 vers le conteneur afin de pouvoir voir l'interface graphique. Pour ce faire, vous devez exécuter le conteneur avec les options suivantes :

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

Dans le conteneur, vous pouvez lancer Ghidra depuis /tools/ghidra_10.4_PUBLIC/ghidraRun. Suivez maintenant les étapes supplémentaires pour Ghidra pour activer le plugin DAILA et le tour est joué !

Backends d'IA pris en charge

LiteLLM (de nombreux backends)

DAILA prend en charge l'API LiteLLM, qui prend elle-même en charge divers backends comme OpenAI. Pour utiliser une API LLM commerciale, vous devez fournir votre propre clé API. Par exemple, pour utiliser l'API OpenAI, vous devez disposer d'une clé API OpenAI. Si votre décompilateur n'a pas accès à la variable d'environnement OPENAI_API_KEY, vous devez utiliser l'option du décompilateur dans DAILA pour définir la clé API.

Dans Settings, vous pouvez également ajouter/utiliser n'importe quel point de terminaison LLM basé sur OpenAI, comme Llama2.

Actuellement, DAILA prend en charge les prompts suivants :

  • Résumer une fonction
  • Renommer des variables
  • Renommer une fonction
  • Identifier la source d'une fonction
  • Trouver des vulnérabilités potentielles dans une fonction
  • Résumer la page de manuel d'un appel de bibliothèque
  • Invite libre... saisissez simplement votre propre prompt !

VarBERT

VarBERT est un modèle BERT local issu de l'article S&P 2024 ""Len or index or count, anything but v1": Predicting Variable Names in Decompilation Output with Transfer Learning". VarBERT est destiné au renommage des variables (qu'elles soient sur la pile, dans les registres ou les arguments) dans la décompilation. Pour comprendre comment utiliser VarBERT en tant que bibliothèque, veuillez consulter la documentation de l'API VarBERT. Son utilisation dans DAILA est aussi simple que d'utiliser le menu contextuel de l'interface graphique en cliquant sur une fonction.

Démo

Vous trouverez ci-dessous une démo de VarBERT fonctionnant dans DAILA :

Démo VarBERT

Décompilateurs pris en charge

  • IDA

  • Binja

  • Ghidra

  • angr management

Télécharger l’outil