Le système anti-piratage proposé par Google aux développeurs Android n’est pas infaillible. Un développeur, mécontent, démontre comment il est possible de modifier une application payante « protégée » pour l’exécuter sans autorisation.

Le mois dernier, Google avait dévoilé une nouvelle technologie anti-piratage mise à la disposition des développeurs d’applications Android. Le système Android Market Licensing interroge les bases de données de Google lors du lancement de l’application payante, et vérifie que le propriétaire du téléphone a bien payé la licence. Si ça n’est pas le cas, le développeur peut interdire le lancement de l’application, afficher un message d’avertissement, exécuter le programme dans un mode limité, ou faire comme si de rien n’était. C’est lui qui choisit.

Or c’est bien cette liberté de choix offerte à l’utilisateur qui est à l’origine d’une faille décrite par Android Police. L’auteur – lui même développeur sur Android – détaille en effet comment il est possible de patcher une application pour flouer le mécanisme de contrôle. Il rappelle ainsi que la plupart des applications sont écrites en Java et compilées sous forme de bytecode, interprété par une machine virtuelle. Un même bytecode peut-être exécuté sur différentes plate-formes et par différentes machines virtuelles, ce qui oblige à garder une certaine lisibilité du code, même s’il n’est pas aussi clair que le code source. Mais de fait, il peut être facilement décompilé, par exemple avec smali, puis modifié.

L’idée est donc de modifier le bytecode à l’endroit où l’application communique avec la librairie de contrôle de la licence, pour changer le comportement choisi par le développeur en cas de piratage. Et bien sûr, demander à faire comme si de rien n’était.

Il suffit alors de recompiler le logiciel, de le signer avec n’importe clé, et le tour est joué. L’auteur ne s’en félicite pas, bien au contraire. « La situation actuelle avec le piratage dans notre communauté est hors de contrôle« , regrette-t-il, « et ça ne va faire qu’empirer à mesure que la plate-forme grossit. Des sites comme AndroidPlayground qui a été fermé récemment profitent du dur labeur de nos développeurs, et entravent les développements futurs« . Il estime que l’Android Market Licensing reste à ce jour la meilleure solution, mais il espère de meilleures outils de protection à l’avenir.

Et le chat continuera de courir après la souris.

Découvrez les bonus

+ rapide, + pratique, + exclusif

Zéro publicité, fonctions avancées de lecture, articles résumés par l'I.A, contenus exclusifs et plus encore.

Découvrez les nombreux avantages de Numerama+.

S'abonner à Numerama+

Vous avez lu 0 articles sur Numerama ce mois-ci

Il y a une bonne raison de ne pas s'abonner à

Tout le monde n'a pas les moyens de payer pour l'information.
C'est pourquoi nous maintenons notre journalisme ouvert à tous.

Mais si vous le pouvez,
voici trois bonnes raisons de soutenir notre travail :

  • 1 Numerama+ contribue à offrir une expérience gratuite à tous les lecteurs de Numerama.
  • 2 Vous profiterez d'une lecture sans publicité, de nombreuses fonctions avancées de lecture et des contenus exclusifs.
  • 3 Aider Numerama dans sa mission : comprendre le présent pour anticiper l'avenir.

Si vous croyez en un web gratuit et à une information de qualité accessible au plus grand nombre, rejoignez Numerama+.

S'abonner à Numerama+

Si vous avez aimé cet article, vous aimerez les suivants : ne les manquez pas en vous abonnant à Numerama sur Google News.