TheCricLinks

Je me pose plein de questions, Internet est un moyen d'y répondre

Nom :

La devise de la France est Liberté - Égalité - Fraternité. Cette devise peut et doit nous aider à trouver le bon chemin.

vendredi 26 mai 2006

Boomerang Decompiler - l'ingénierie inverse en Open Source - Automatisation

Le reverse engineering ou ingénierie inverse est un sujet qui n'interesse que lorsque le besoin s'en fait cruellement sentir.

En général, il ne s'agit pas de faire des cracks de programmes mais simplement de se coupler à un programme déjà existant qui fait presque tout le travail sauf la fonctionnalité que vous voudriez automatiser.

Celle-ci ne peut se faire qu'à la main parce que son créateur est devenu indisponible, a oublié de vous fournir l'interface ou bien les sources nécessaires ont été perdus ou ...

Il peut aussi s'agir d'optimiser par 100 la vitesse d'accès à un programme en évitant de passer par son interface graphique. Ce que ferait classiquement un outil d'automatisation comme [AutoIt v3 pour Windows] (excellent freeware) .

Dans un monde parfait, le système serait transparent et l'on devrait toujours avoir accès à l'information mais nous ne sommes pas dans un monde parfait.

Une des réponses à ce problème est l'ingénierie inverse


L'ingénierie inverse fonctionne comme on peut le lire dans le fichier [.PDF ici !].

Mais, ne pas rêver, après la décompilation il reste souvent énormément de travail - d'analyse en particulier : comprendre un programme décompilé est bien pire que de lire un programme non documenté. Ici les noms donnés aux variables par le décompilateur ne sont pas parlant. En général, il vaut mieux réécrire un programme plutôt que de faire une usine à gaz ou bien d'essayer de comprendre un programme trop complexe. [On vous l'explique ici en anglais !]

On peut voir de la théorie sur la décompilation dans la [thèse de Christina Cifuentes faite sur son dcc Decompiler !] qui a influencé Boomerang


Les bouquins

Si c'est le côté sombre, qui vous interesse, commencez par les Essays de Fravia qui justement ne l'est pas trop !!! Bonne chasse ;-)

Les Décompilateurs

Les machines virtuelles du moment se décompilent plutôt bien,. Néanmoins dans les décompilateur éprouvés :
Quant aux machines réelles
Tout le monde peut participer sur le Decompilation Wiki. Pour le reste ....Bonne chasse