Accueil Décompilation et analyse de logiciel

Décompilation et analyse de logiciel

Droits et risques

Le reverse engineering (rétro-ingénierie, ingénierie inversée ou inverse, rétro-conception ou encore ingénierie à rebours), est un ensemble de pratiques consistant à étudier un produit afin d’en tirer des informations sur son fonctionnement, et fait souvent appel au désassemblage dudit produit pour en analyser les composants. Le point juridique avec Garance Mathias, Avocat à la Cour.

Le reverse engineering a des applications multiples et représente potentiellement de forts enjeux économiques. Ces pratiques sont le plus souvent encouragées lorsqu’elles portent sur des logiciels soumis à des licences de type open source. En revanche, lorsque le logiciel est dit propriétaire, il faut une autorisation à l’utilisateur. En principe, il faut à l’utilisateur une autorisation expresse de l’éditeur du logiciel pour pouvoir procéder à une décompilation, mais il existe deux exceptions.

Quels cas sans autorisation de l’éditeur?

L’utilisateur légitime d’un logiciel peut, pour en assurer le fonctionnement normal et notamment pour en corriger les erreurs, recourir à la « traduction, la reproduction ou l’adaptation » du logiciel (Article L122-6-1 I du Code de la Propriété Intellectuelle). L’éditeur peut cependant limiter le recours à cette exception en déterminant dans le contrat les modalités de recours à la décompilation dans ce cadre, et en se réservant dans le contrat le droit de corriger les erreurs via une prestation de maintenance. Il est possible de faire rentrer dans cette exception la correction de failles de sécurité, celles-ci empêchant le fonctionnement normal du logiciel. S’il est préférable qu’un éditeur corrige de lui-même failles de sécurités et erreurs, ce droit à la décompilation permettra a minima à un utilisateur d’assurer le fonctionnement normal du logiciel si l’éditeur s’y refuse.

L’utilisateur peut également recourir à la décompilation si cette pratique est nécessaire pour assurer l’interopérabilité du logiciel avec un autre logiciel ou avec du matériel (article L122-6-1 IV, Code de la Propriété Intellectuelle). Il est ainsi possible, en pratique, de décompiler un logiciel afin d’assurer son bon fonctionnement avec une extension que l’on a développée ou un logiciel autre que l’on a acquis, afin de permettre l’intégration de matériel qui n’était pas initialement compatible, ou encore, comme l’a souligné la Cour de cassation, d’effectuer des opérations de migration de données (Cass. civ. 1re, 20 oct. 2011, n°10-14069).

Le principal problème est le caractère flou de la notion d’interopérabilité, qui est définie par la directive du 23 avril 2009 relative à la protection juridique des programmes d’ordinateur comme « la capacité d’échanger des informations et d’utiliser mutuellement les informations échangées » (Directive 2009/24/CE, considérant 10).En tout état de cause, il est important de souligner que les informations acquises par la décompilation ne peuvent être communiquées à des tiers.

Des poursuites possibles

L’utilisateur d’un logiciel dépassant l’étendue de son droit à la décompilation est susceptible d’être poursuivi par l’éditeur du logiciel dans le cadre d’une action en contrefaçon et/ou en concurrence déloyale. Des individus ont ainsi été condamnés pour avoir effectué illégalement des opérations de décompilation et communiqué les informations obtenues par ce procédé à des tiers (Cour d’appel de Caen, 18 mars 2015).

L’utilisateur légitime d’un logiciel dispose en outre d’un droit d’analyse de ce dernier. A ce titre, il peut, sans autorisation, « observer, étudier ou tester le fonctionnement ou la sécurité de ce logiciel afin de déterminer les idées et principes qui sont à la base de n’importe quel élément du logiciel », sans dépasser les usages du logiciel qui lui sont autorisés par le contrat de licence (Article L122-6-1 III et V du Code de la Propriété Intellectuelle).

L’utilisateur peut tester la sécurité du logiciel

Notons que depuis la loi de programmation militaire du 18 décembre 2013, l’utilisateur peut tester la sécurité du logiciel, là où il ne pouvait auparavant qu’en analyser le fonctionnement (article 25 de la loi n°2013-1168). Ce droit d’analyse et de test du logiciel illustre le mouvement récent en faveur des « white hats hackers ». La loi pour une République Numérique a introduit un nouvel article L.2321-4 dans le Code de la défense lequel dispose que « Pour les besoins de la sécurité des systèmes d’information, l’obligation prévue à l’article 40 du code de procédure pénale n’est pas applicable à l’égard d’une personne de bonne foi qui transmet à la seule autorité nationale de sécurité des systèmes d’information une information sur l’existence d’une vulnérabilité concernant la sécurité d’un système de traitement automatisé de données ».