Le journal Suniworks
Rétro-ingénierie et IA : ce que REA change pour votre logiciel
Les agents peuvent aider à analyser une application. Distinguer les outils, les hypothèses et les preuves avant d’en tirer des décisions d’architecture.
Mis à jour le .

Comprendre un logiciel sans disposer de son code source demande de réunir des indices : son interface, ses fichiers, ses échanges et parfois son exécutable. L’IA peut aider à parcourir ces éléments. Elle ne transforme pas automatiquement une hypothèse en résultat vérifié.
Un agent s’appuie sur des outils d’analyse
Le projet REA, Reverse Engineer Anything, présente une interface permettant à des agents d’utiliser des capacités de rétro-ingénierie. Les outils sous-jacents restent essentiels : Ghidra fournit notamment de l’analyse de code compilé, tandis que JADX vise les formats Android et Java.
Cette organisation peut aider à examiner un point précis et à produire un compte rendu. Elle ne signifie pas que le code source original, ses commentaires ou toutes les règles métier seront retrouvés. Les résultats dépendent de la cible et des outils réellement employés.
Séparer ce qui est observé de ce qui est déduit
Pour préparer une reprise, demandez un rapport qui distingue les observations, les interprétations et les points encore inconnus. Un nom de fonction proposé par un modèle reste une interprétation tant que son rôle n’est pas établi.
Un dossier de reprise utile peut contenir les parcours testés, les formats identifiés, les dépendances observées et les questions à poser à l’ancien prestataire. Ces informations servent à comparer les options, sans prétendre à une compréhension exhaustive.
Ne pas confier les secrets au logiciel distribué
Pour une application que vous concevez, examinez ce qui est remis à l’utilisateur : scripts du navigateur, application mobile, programme de bureau, fichiers de configuration. Évaluez quelles informations pourraient être lues ou reproduites.
- Retirer les identifiants et les clés qui n’ont pas à être distribués.
- Faire vérifier côté serveur les autorisations nécessaires aux opérations sensibles.
- Documenter les limites du mode hors ligne et les dépendances réseau.
- Tester les contrôles sans supposer que l’interface est le seul point d’entrée.
Il s’agit de questions d’architecture à examiner selon le contexte. Déplacer une fonction vers un serveur crée aussi des exigences de disponibilité, d’exploitation et de protection des données.
Définir le droit d’analyser avant la méthode
Une capacité technique ne constitue pas une autorisation. Avant une analyse, il faut préciser la cible, le mandat, les licences et les usages permis des résultats. Une question d’interopérabilité ou de propriété intellectuelle demande un examen juridique adapté.
Si vous reprenez un logiciel existant, commencez par les accès, les contrats et les données disponibles. Vous pourrez ensuite choisir entre documentation complémentaire, analyse ciblée, migration ou remplacement. L’IA intervient comme un outil dans cette démarche, avec des résultats à vérifier.