12 points par GN⁺ 2025-03-28 | 1 commentaires | Partager sur WhatsApp
  • ghidraMCP est un serveur Model Context Protocol (MCP) qui permet aux grands modèles de langage (LLM) d’effectuer de façon autonome le reverse engineering d’applications
  • Il expose les fonctions clés de Ghidra aux clients MCP afin que les LLM puissent utiliser directement les outils d’analyse
  • En automatisant le processus d’analyse jusque-là manuel, il contribue à améliorer la vitesse et l’efficacité du reverse engineering
  • Il peut être utilisé dans divers domaines, comme l’analyse de sécurité basée sur l’IA, l’analyse de malwares et le débogage binaire

Fonctionnalités principales

  • Configuration du serveur MCP et du plugin Ghidra
    • Fournit une interface de connexion entre les LLM et Ghidra
    • Expose les fonctionnalités de Ghidra au protocole MCP sous forme d’API
  • Décompilation et analyse de binaires
    • Permet de décompiler et d’analyser, via Ghidra, des exécutables de différents formats comme ELF et PE
  • Attribution automatique de noms aux méthodes et aux données
    • Attribue automatiquement des noms explicites aux méthodes et données obfusquées ou sans nom
    • Améliore la lisibilité du code et la rapidité de l’analyse
  • Fonction de consultation de la structure du code
    • Extrait la liste des méthodes, classes, imports et exports
    • Utile pour analyser le flux du code et les dépendances

1 commentaires

 
GN⁺ 2025-03-28
Avis Hacker News
  • Quelqu’un espère qu’un jour il existera un outil capable de convertir tous les binaires propriétaires en code source. Ce serait amusant d’avoir une version « open source » de tous les jeux

    • Il existe déjà des projets comme OpenGothic et openage, mais cela demande de longs efforts de la communauté
  • Certains pensent que pour résoudre du code, les LLMs devraient être natifs pour les AST. Le code a une structure en arbre, mais nous l’envoyons au modèle sous forme linéaire

    • Les modèles actuels manquent de récurrence ou de véritable mémoire, et ne peuvent donc pas raisonner efficacement sur une structure hiérarchique
  • Une question est posée sur les outils capables d’appeler MCP. Il a été découvert que l’application de bureau de Claude peut utiliser MCP en local

    • La question est de savoir s’il existe une interface de chat permettant d’utiliser MCP à distance
    • L’idée serait de pouvoir spécifier un endpoint MCP et des fonctions dans les interfaces web de ChatGPT, Claude et Gemini afin d’appeler un serveur à distance
  • Il y avait aussi une bonne vidéo sur une précédente intégration entre Ghidra et un LLM

    • Malimite contient des informations sur un décompilateur iOS et macOS
    • Si vous n’avez jamais vu sa chaîne YouTube, cela vaut le détour. Au-delà du contenu technique, le montage avec des graphismes d’OS rétro est amusant
  • Il y a aussi des informations sur radare2

  • Le simple fait de copier-coller depuis Ghidra vers un LLM n’a pas donné de résultats convaincants. Ce serait bien d’avoir des benchmarks sur ce type d’outils

  • Quelqu’un aimerait que le serveur MCP offre davantage de fonctionnalités, comme la lecture et l’écriture arbitraires dans un programme

    • Par exemple, il travaillait sur un challenge CTF auto-décompactant utilisant des instructions XORées. Il serait utile de pouvoir lire la valeur à une adresse XORée
  • Il y a aussi une réflexion sur la façon dont la sécurité changerait si l’on pouvait faire instantanément une rétro-ingénierie parfaite de n’importe quel binaire

  • Quelqu’un se demande si une personne travaille sur un « catalogue » de serveurs MCP. Faire une recherche sur GitHub n’est pas la meilleure façon de les découvrir