Files
rea/README_fr.md
T
Kaoru0822andClaude Opus 5.5 b6d8bb65d3 docs(readme): add responsible-use guidance and reframe the introduction
Reframe the tagline and opening paragraph around security research,
interoperability and authorized analysis. Add a "Responsible use"
section before Quick start that lists unsupported uses and the user's
legal responsibilities, replace the Notes example prompt with a
release-versus-debug crash investigation, and point the Disclaimer at
the new section while keeping the cryptocurrency statement.

Apply the same changes to all 18 translated READMEs, with anchors
matching each translated heading.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-12 06:03:22 +00:00

22 KiB

English · 简体中文 · 繁體中文 · 日本語 · 한국어 · Türkçe · Русский · Tiếng Việt · ไทย · Deutsch · Español · Français · Українська · Polski · Português (Brasil) · العربية · فارسی · Bahasa Indonesia · Italiano

REA : rétro-ingénierie de tout

Un seul MCP pour la rétro-ingénierie des binaires, des applications et du comportement à l'exécution.

Comprenez le fonctionnement des logiciels, jusqu'au niveau du binaire — pour la recherche en sécurité, l'interopérabilité et les logiciels que vous êtes autorisé à analyser.

npm version MCP tool catalog Node.js requirements skills.sh MIT license Discord

morluto%2Frea | Trendshift

Site web · Guides · Études de cas

Démarrage rapide · Comment fonctionne REA · Ce que vous pouvez analyser · Études de cas · Questions fréquentes · Documentation

npx rea-agents setup


REA lance son pont d'analyse dans Hopper pendant l'inspection d'un binaire natif



Discord
Rejoignez la communauté de rétro-ingénierie

Discord · Questions et réponses · Partage de projets


REA aide les chercheurs en sécurité, les analystes de logiciels malveillants, les joueurs de CTF et les développeurs à comprendre des logiciels compilés grâce à leurs agents. Confiez à votre agent un binaire, une application ou une capture que vous êtes autorisé à analyser ; REA l'inspecte sans code source, explique son comportement et présente les preuves sur lesquelles repose chaque conclusion.

REA connecte votre agent à des outils d'inspection de binaires natifs, d'applications JavaScript et Electron, d'assemblys .NET et de sites web. Les mêmes outils sont aussi disponibles depuis votre terminal. L'analyse s'exécute localement, et chaque conclusion s'accompagne des preuves et des limites sur lesquelles elle repose.

Setup enregistre REA auprès de votre agent et installe les instructions de workflow correspondantes. L'analyse native peut utiliser une installation existante de Hopper, de Ghidra ou d'IDA ; Setup peut aussi installer Hopper après votre accord. L'analyse statique JavaScript ne nécessite aucun moteur d'analyse natif.

Visitez le site web de REA pour les instructions d'installation, des guides illustrés et des études de cas réelles.

Utilisation responsable

REA est conçu pour l'analyse licite : recherche en sécurité, analyse de logiciels malveillants et d'incidents, recherche de vulnérabilités et divulgation coordonnée, CTF et enseignement, interopérabilité, préservation des logiciels, ainsi que débogage ou audit de logiciels qui vous appartiennent ou que vous êtes autorisé à examiner.

Le projet REA ne soutient pas les usages suivants et n'y apportera aucune aide :

  • contourner des DRM, des vérifications de licence, des systèmes anti-triche ou d'autres mesures techniques de protection ;
  • développer des triches pour des jeux ou altérer des services en ligne ;
  • contourner l'authentification, la protection contre les bots ou les contrôles d'accès de systèmes que vous n'êtes pas autorisé à tester ;
  • copier des logiciels propriétaires ou reproduire leur code et leurs ressources protégés ;
  • échapper aux politiques d'utilisation ou aux mesures de sécurité des fournisseurs de modèles d'IA ;
  • revendre ou partager des comptes d'IA ou des accès à des API.

Il vous appartient d'obtenir toute autorisation nécessaire et de respecter les lois, les contrats de licence et les conditions d'utilisation applicables. La rétro-ingénierie peut être restreinte dans votre juridiction ou par la licence du logiciel que vous analysez.

Les demandes d'aide pour les usages ci-dessus seront fermées sans réponse dans les issues et les discussions, et peuvent entraîner l'exclusion de la communauté REA.

Démarrage rapide

Configurer votre agent

Une fois Node.js et npm installés, exécutez :

npx rea-agents setup

Choisissez vos agents, vérifiez les modifications proposées et approuvez-les. Setup ajoute le serveur MCP de REA et les instructions de workflow correspondantes, et sauvegarde la configuration existante. Redémarrez ensuite votre agent.

Setup prend en charge Claude Code, Codex, Cursor, Gemini CLI, Grok Build et d'autres agents. Consultez Installation et configuration pour la configuration des fournisseurs et l'enregistrement MCP manuel.

Interroger votre agent

La version release de mon app plante au démarrage, mais pas la version debug.
Inspecte ./build/MyApp, trouve où les deux builds divergent et montre-moi les preuves.

Confiez à votre agent une cible que vous êtes autorisé à analyser et décrivez ce que vous voulez comprendre.

Utiliser le terminal

Inspectez le répertoire extrait ou l'archive ASAR d'une application JavaScript/Electron :

npx -y rea-agents@latest analyze-javascript-application /absolute/path/to/app --json

Le résultat comprend les modules, les imports, les frontières Electron et les preuves associées. Remplacez le chemin par votre cible, par exemple "D:/apps/example" sous Windows.

Pour installer la commande rea pour un usage régulier :

npm install --global rea-agents
rea --help

Pour l'analyse native, configurez d'abord un fournisseur. Consultez le guide CLI et Evidence pour les commandes natives, le choix du fournisseur, les snapshots et l'utilisation dans des scripts.

Mettre à jour REA

REA évolue rapidement, et les nouvelles versions apportent fréquemment des corrections de bugs. Maintenez votre installation à jour.

Pour une CLI installée avec npm install --global ou bun add --global :

rea update

Les mises à jour globales avec Bun nécessitent Bun 1.2.17 ou une version ultérieure. Avec une version plus ancienne de Bun, mettez à jour Bun manuellement avant d'exécuter rea update.

Pour actualiser les enregistrements de vos agents et le skill, exécutez la commande setup affichée par la mise à jour.

Si vous utilisez npx, mettez à jour la configuration de votre agent avec :

npx rea-agents@latest setup

Vérifiez les modifications proposées par Setup et redémarrez votre agent. Pour des commandes CLI ponctuelles, utilisez npx rea-agents@latest suivi de la commande. Avec Bun, utilisez bunx rea-agents@latest à la place de npx rea-agents@latest.

Comment fonctionne REA

Votre agent appelle REA via MCP pour inspecter la cible et suivre le code pertinent. REA renvoie ses constatations avec les preuves correspondantes. L'agent s'en sert pour poser des questions complémentaires, expliquer le comportement, ou écrire et tester une implémentation. Les commandes CLI utilisent les mêmes workflows.

Flux d'investigation de REA : votre agent pose une question sur une cible locale, REA l'inspecte et la trace avec des outils d'analyse, et l'agent utilise le code, les références et les inconnues renvoyés pour expliquer, implémenter et tester.

Ouvrir la figure en taille réelle.

Ce que vous pouvez analyser

REA nécessite Node.js 22.x (>=22.19), 24.x (>=24.11) ou 26+, ainsi que npm. Les outils supplémentaires et les hôtes pris en charge dépendent de la cible :

Cible Ce que REA renvoie Prérequis et guide
Binaires natifs Pseudo-code, assembleur, chaînes, symboles, appels et références Hopper, Ghidra ou IDA ; analyse native
Structure ELF hors ligne Sections, segments, symboles et relocations d'origine, et protections statiques candidates pwntools fourni par l'utilisateur sous Linux x64 ; diagnostics binaires
Artefact WASM Validation, sections, formes WAT exactes d'import/export et WAT décodé WABT 1.0.42 fourni par l'utilisateur ; inspect_wasm_artifact
Bytecode EVM Sélecteurs de dispatch, offsets en octets, arguments inférés et mutabilité Fichier local brut ou hexadécimal sous Linux x64 ; guide EVM hors ligne
Crashs Linux enregistrés Notes brutes, registres et signaux de chaque thread enregistré, et correspondances de mappings facultatives pwntools fourni par l'utilisateur sous Linux x64 ; GDB/pwndbg en option ; crashs enregistrés
JavaScript / Electron Modules, imports, source maps, routes, IPC et relations avec les modules natifs Node.js et npm ; analyse d'applications
Sites web Structure des pages, scripts, observations réseau et captures d'écran demandées Un navigateur de la famille Chrome ; analyse du navigateur
Captures réseau enregistrées Requêtes, réponses, payloads exposés et emplacements dans le code source HAR ; mitmdump sous Linux pour les captures mitmproxy natives ; guide des captures
Assemblys .NET Métadonnées, instructions CIL, dépendances natives déclarées et comparaisons de builds Inspection statique ; guide du code managé
APK Android Déclarations du manifeste, classes, méthodes décompilées et références JADX headless et un JDK complet sous Linux/macOS/Windows x64 ; guide Android
Appareils Android Appareils, paquets, processus, journaux, dumps, captures d'écran et transferts d'APK/fichiers adb fourni par l'appelant (émulateur ou appareil) ; guide ADB
Projets JEB Unités de projet fournies par le moteur, condensés d'artefacts et pseudo-code de types/méthodes Un client JEB démarré par l'appelant servant MCP, sélectionné via REA_JEB_MCP_URL ; guide JEB
Ressources Android Manifeste décodé, tables de chaînes, langues et faits de version Lanceur Apktool fourni par l'appelant ; guide des ressources
Firmware Régions, résultats d'extraction et passage de relais vers l'analyse native Binwalk / Unblob sous Linux ; guide firmware
Paquets et ressources Inventaires de fichiers, empreintes, plists, anatomie des bundles Apple et ressources extraites Guide artefacts et JavaScript, applications Apple
Comportement des processus Sortie du terminal, interactions, code de sortie, observations du système de fichiers et comparaisons Linux/macOS avec un PTY natif ; capture de processus

L'inspection statique JavaScript et .NET lit les fichiers fournis sans exécuter l'application. La capture à l'exécution lance la cible choisie ou interagit avec elle avec vos permissions utilisateur ; chaque guide d'exécution décrit ses effets.

Les formats natifs et les hôtes pris en charge varient selon le fournisseur. Consultez la configuration de Hopper et Ghidra, le guide IDA et la prise en charge expérimentale de Ghidra sous Windows. Ghidra prend aussi en charge l'analyse DOS 16 bits. Pour les gros binaires, augmentez son délai de démarrage avec REA_GHIDRA_STARTUP_TIMEOUT_MS. Pour le choix du fournisseur, consultez le guide CLI. Vérifiez la disponibilité dans les versions publiées pour les fonctionnalités ajoutées depuis la dernière version npm.

Études de cas

Illustrations des études sur la spatialisation sonore de DX-Ball, le pont du presse-papiers de Notion et le cercle de projectiles de TH04

DX-Ball : reconstruire un calcul de panoramique sonore

Suivez un appel sonore jusqu'à la fonction qui convertit une position en panoramique, inspectez ses instructions et transformez un pseudo-code incomplet en C. La reconstruction réussit 3 205 cas issus du x86 d'origine et reproduit à l'identique les 63 octets de la fonction compilée.

Lire l'étude de cas · Dépôt de la reconstruction

Notion : suivre le pont du presse-papiers d'Electron

Trouvez l'API de presse-papiers du renderer, suivez-la à travers le preload et l'IPC jusqu'au processus principal, puis inspectez le format de presse-papiers enrichi.

Lire l'étude de cas

TH04 : retrouver un calcul d'anneau de projectiles sous DOS

Inspectez les instructions 16 bits du jeu PC-98 d'origine, retrouvez les calculs d'angles fixes et visés, et comparez le C++ reconstruit avec la sortie du compilateur d'époque.

Lire l'étude de cas · Dépôt de la reconstruction

Si vous avez utilisé REA sur un projet intéressant, nous serions ravis de le découvrir. Partagez votre cas dans une issue ou une pull request, en précisant la cible, votre question, la manière dont REA vous a aidé et ce que vous avez découvert.

Questions fréquentes

Quels agents peuvent utiliser REA ?

Tout agent compatible avec les serveurs MCP locaux. Setup configure les agents pris en charge ; les autres clients peuvent utiliser l'enregistrement MCP manuel.

Ai-je besoin de Hopper, Ghidra ou IDA ?

L'analyse native approfondie utilise l'un d'eux. L'inspection statique JavaScript et .NET fonctionne sans moteur d'analyse native. Setup peut installer Hopper après votre accord ; Ghidra et IDA utilisent vos installations existantes. Consultez la configuration des fournisseurs.

Dois-je lancer Hopper au préalable ?

REA lance Hopper lorsqu'une opération en a besoin. Sous macOS, une boîte de dialogue de premier lancement peut vous demander de choisir le mode démo ou d'activer votre licence. Consultez Démarrage et dépannage de Hopper.

Que fait l'installation du skill depuis skills.sh ?

Le skill fournit des instructions d'investigation à votre agent. Utilisez npx rea-agents setup pour enregistrer le serveur MCP de REA et installer les instructions correspondantes, puis redémarrez votre agent. Consultez l'installation du skill seul.

Quel code REA renvoie-t-il ?

L'analyse native renvoie du pseudo-code et de l'assembleur. L'analyse JavaScript/Electron récupère les modules et leurs relations. Votre agent s'appuie sur ces résultats pour écrire et tester une implémentation ; les études de cas en donnent des exemples concrets.

REA envoie-t-il mon application en ligne ?

REA analyse les cibles localement. Votre agent reçoit les résultats des outils, et son fournisseur de modèle applique sa propre politique de données.

Que faire si je rencontre un bug ?

Commencez par mettre à jour ; une version récente l'a peut-être déjà corrigé.

Pour une CLI installée avec npm install --global ou bun add --global :

rea update

Pour une configuration d'agent via npx :

npx rea-agents@latest setup

Si vous utilisez un agent, terminez l'actualisation de la configuration et redémarrez-le. Relancez la même tâche. Si le problème persiste, ouvrez une issue en indiquant votre version de REA, le type de cible, les étapes pour reproduire le problème et la sortie d'erreur.

Documentation

Commencez par les guides pas à pas du site web. Pour les options exactes, les prérequis et les contrats de résultats :

Signalez les vulnérabilités via SECURITY.md.

Historique des étoiles

🎉 110 000 étoiles GitHub — merci !

Merci à toutes les personnes qui utilisent REA, signalent des bugs, proposent des fonctionnalités, testent les builds et contribuent des correctifs.

Historique des étoiles GitHub de REA

Avertissement

Voir Utilisation responsable.

Contribuer

Votre aide sur REA est la bienvenue ! Ouvrez une issue pour signaler un bug ou proposer une fonctionnalité, ou envoyez une pull request pour améliorer le code ou la documentation.

Consultez CONTRIBUTING.md pour l'environnement de développement et les vérifications, la page tests pour les procédures de vérification, et la carte de l'architecture pour la structure du projet.

Licence

MIT