Débogueur d'applications x86 et x64 avec intégration de l'IA
Debugger / désassembleur avec GUI pour l'analyse de malware sur des exécutables 32 et 64 bits, dans le style d'OllyDbg / x64dbg. Conçu pour disséquer virus et malware à des fins défensives : créer des signatures d'antivirus/antimalware, comprendre le comportement et nettoyer les machines.
⚠️ Analysez toujours les échantillons dans une machine virtuelle isolée / sandbox, sans réseau, avec des snapshots. Lancer un binaire sous le debugger exécute son code.
.exe / .dll / .sys et analyse complète du PE (32/64 bits, entrypoint,
sections, imports, exports, entropie).call/jmp/ret,
destination des sauts, guides visuels de flux pour jmp/jz/jnz/etc. et l'instruction
actuelle lorsque vous êtes en pause. Le menu contextuel Jump To ouvre la destination du saut.0xCC), matériels (DR0–DR3, exécution/écriture/lecture-écriture),
par exception et en mémoire via PAGE_GUARD (accès, écriture ou exécution). Inclut liste,
étiquettes, activation/désactivation, conditions de registres/hits, actions de log uniquement et
breakpoints d'événements (threads/DLL). Ceux en mémoire se configurent en pause et fonctionnent par pages,
comme la technique utilisée par OllyDbg.VirtualQueryEx) avec permissions, type et
module ; saut rapide vers RSP, lecture/écriture, assemblage avec Keystone et patchage/NOP.48 8B ?? C3) ou de texte, dans le fichier ou en mémoire vive.cache/ à côté du debugger. Ils sont réutilisés à la réouverture d'un fichier et invalidés si changent
sa taille, sa date de modification ou la longueur minimale des strings..dbgjsession avec annotations et breakpoints ; exportation
de rapport Markdown avec objectif, sections, détections, état et breakpoints.signatures/userdb.txt style PEiD)
et heuristique d'entropie / sections suspectes.Permitir control del debugger (tools), l'agent peut
consulter ou contrôler la session : ouvrir/lancer/redémarrer, continuer ou mettre en pause, faire des pas,
lire la mémoire et les registres, désassembler, rechercher, poser des breakpoints, naviguer vers des DLLs,
patcher et exécuter les autres opérations exposées par le debugger.mcp/README.md.plugins/
ajoutent des actions à l'UI et des tools dynamiques au MCP. Les DLL ne sont chargées que lorsque l'utilisateur
active expressément l'option et doivent être de confiance. Consultez docs/PLUGINS.md.Compilez uniquement sous Windows avec MSVC, car cela utilise l'API Windows Debug, DbgHelp, Direct3D 11 et WinHTTP.
Installez Visual Studio 2022 avec Desktop development with C++, CMake 3.20+ et Git.
Double-cliquez sur build.bat (ou depuis un x64 Native Tools Command Prompt) :
build.bat
CMake téléchargera uniquement (FetchContent) Zydis, Dear ImGui et nlohmann/json.
Exécutez build\Release\DebuggerJ++.exe en tant qu'Administrateur (pour pouvoir déboguer).
Configurez les agents dans Tools → Options → AI. Au premier démarrage, l'application détecte, si elles existent,
les variables ANTHROPIC_API_KEY et OPENAI_API_KEY ; vous pouvez également coller une clé dans le
formulaire d'un agent. ChatGPT/OpenAI est proposé comme preset ChatGPT (OpenAI).
Les identifiants sont enregistrés uniquement dans ai_config.json à côté de l'exécutable pour l'usage
local de l'application. Ne téléversez pas ce fichier ni les fichiers .env dans le dépôt : ils sont déjà
exclus par .gitignore.
Pour permettre à l'agent d'agir, sélectionnez un fournisseur/modèle compatible avec le function calling et activez Autoriser le contrôle du debugger (tools) dans la fenêtre IA. La fenêtre Code limite l'agent à des outils de consultation afin de ne pas altérer le processus.
Voir docs/ARQUITECTURA.md.
DebuggerJ++ est distribué sous la GNU General Public License v3.0 ou ultérieure (GPL-3.0-or-later). Vous pouvez l'utiliser, l'étudier, le modifier et le redistribuer selon ces termes. Les dépendances tierces conservent leurs propres avis et licences.
Il s'agit d'une base fonctionnelle pour l'analyse défensive. Domaines prévus pour une prochaine version :