Introduction à la rétro-ingénierie logicielle

La rétro-ingénierie

Présentation

La rétro-ingénierie logicielle est le principe d'analyser un programme sans ses sources, pour en comprendre le fonctionnement interne. Deux approches complémentaires sont en général utilisées, l'analyse statique et l'analyse dynamique. Dans le premier cas il s'agit de reconstituer, partiellement ou totalement, le code source du logiciel à partir du programme exécutable ou au moins de le traduire du langage machine au langage assembleur. Pour le second cas, il s'agit d'étudier le programme directement pendant son exécution à l'aide d'un débogueur.

Les raisons pouvant amener à faire de la rétro-ingénierie sont multiples :

Cadre juridique

Le cadre juridique de la rétro-ingénierie est très strictement défini par la loi française. Il est parfaitement illégal de la pratique sans raison valable.

Extrait de l'article L. 331-5 du code de la propriété intellectuelle :
Les mesures techniques ne doivent pas avoir pour effet d'empêcher la mise en œuvre effective de l'interopérabilité, dans le respect du droit d'auteur. Les fournisseurs de mesures techniques donnent l'accès aux informations essentielles à l'interopérabilité dans les conditions définies aux articles L. 331-6 et L. 331-7.

Extrait de l'article L. 331-7 du code de la propriété intellectuelle :
Tout éditeur de logiciel, tout fabricant de système technique et tout exploitant de service peut, en cas de refus d'accès aux informations essentielles à l'interopérabilité, demander à l'Autorité de régulation des mesures techniques de garantir l'interopérabilité des systèmes et des services existants, dans le respect des droits des parties, et d'obtenir du titulaire des droits sur la mesure technique les informations essentielles à cette interopérabilité.
Depuis 2006, le chapitre IV du Titre I du Droit d'auteur et droits voisins dans la société de l'information interdit le contournement des mesures technique de protection, en particulier la gestion des droits numériques.

Extrait de l'article 13 du DADVSI :
Les mesures techniques ne doivent pas avoir pour effet d'empêcher la mise en oeuvre effective de l'interopérabilité, dans le respect du droit d'auteur. Les fournisseurs de mesures techniques donnent l'accès aux informations essentielles à l'interopérabilité dans les conditions définies aux articles L. 331-6 et L. 331-7.

Extrait du nouvel article Art. L. 335-3-1 introduit l'article 22 du DADVSI :
I. - Est puni de 3 750 EUR d'amende le fait de porter atteinte sciemment, à des fins autres que la recherche, à une mesure technique efficace telle que définie à l'article L. 331-5, afin d'altérer la protection d'une oeuvre par un décodage, un décryptage ou toute autre intervention personnelle destinée à contourner, neutraliser ou supprimer un mécanisme de protection ou de contrôle (...)II. - Est puni de six mois d'emprisonnement et de 30 000 EUR d'amende le fait de procurer ou proposer sciemment à autrui, directement ou indirectement, des moyens conçus ou spécialement adaptés pour porter atteinte à une mesure technique efficace (...)(...)IV. - Ces dispositions ne sont pas applicables aux actes réalisés à des fins de recherche (...) ou de sécurité informatique, dans les limites des droits prévus par le présent code.