Comment repérer et documenter une violation de la GPL?

15

Comment repérer que quelqu'un a copié du code open source sous licence GPL dans son application commerciale fermée, lorsque vous n'avez pas accès à son code source fermé?

Edit: bonnes réponses! Partie 2. Que se passe-t-il s'il s'agit d'une application Web où vous n'avez même pas accès aux exécutables?

Scénario: Ils copient la source, apportent quelques modifications mineures à l'interface graphique de sorte que le frontal est presque identique; ajouter une nouvelle fonctionnalité au back-end par ailleurs totalement identique; et ne parviennent pas à le remettre en open source.

siamii
la source
1
Oui, c'est plus qu'une "bonne idée". Il est exécutoire par des répercussions juridiques (dans de nombreuses juridictions). C'est-à-dire embaucher (ou obtenir) un avocat et une équipe d'analyse.
pst
Après l'édition, c'est assez clair. N'aurait probablement pas été migré sous sa forme actuelle. Puisqu'il ne peut pas être renvoyé si facilement, j'ai fait de mon mieux pour répondre. J'ai également révisé votre titre.
Tim Post
Gardez un œil sur ce mec ;)
MarkJ

Réponses:

6

Il semble que vous essayiez de le repérer , ce qui signifie que vous devez creuser dans l'exécutable compilé (ou les bibliothèques associées) du programme propriétaire pour le dire. Vous recherchez des chaînes et des symboles qui correspondent évidemment au logiciel gratuit que vous soupçonnez.

Sur un système d'exploitation de type UNIX, l' stringsutilitaire fournit un excellent indice. Une analyse minutieuse révèle généralement ce dont vous avez besoin. Si vous voyez foolib_easy_init, eh bien .. le programme compilé utilise foolib.

Bien sûr, cela varie en fonction des niveaux d'optimisation du compilateur, de l'obscurcissement effectué avant la compilation et de la suppression éventuelle des symboles inutilisés / de débogage, mais les personnes trop paresseuses pour écrire leur propre logiciel sont généralement aussi paresseuses lorsqu'il s'agit de cacher cela.

Tim Post
la source
1
Je vois, et si le programme est une webapp, où vous n'avez même pas accès aux binaires? Ils copient l'intégralité du code source sous licence GPL, modifient quelques éléments d'interface graphique et publient leur propre webapp de source fermée avec un frontal presque identique et un backend totalement identique. Ensuite, ils ajoutent une nouvelle fonctionnalité à l'application sans la publier en open source. Est-il possible de repérer ce type de violation de la GPL?
siamii
3
@ bizso09: Ce n'est pas une violation de la GPL, en supposant que nous parlons du back-end. Voir ma réponse pour plus de détails.
David Thornley
2
@ bizso09 - Ce ne serait une violation de la GPL que si l'application vous était transférée dans un format obscurci / compilé sans le code source. Le simple fait de le mettre «en service» et de permettre aux gens de l'utiliser ne serait pas une violation. Cela violerait cependant la GPL Affero , qui couvre spécifiquement les logiciels qui interagissent avec un réseau. Pourtant, vous pourriez être en mesure de le repérer via des outils firebug / dev en inspectant tous les éléments (ou même en recherchant les bogues connus qui existent dans le code que vous soupçonnez d'avoir été mal utilisé).
Tim Post
4

BusyBox a eu plusieurs cas très médiatisés de poursuites judiciaires contre des fabricants de matériel pour avoir utilisé BusyBox sans publier de sources. Ces poursuites ont été déposées par les avocats du Software Freedom Law Center .

Si votre projet est suffisamment mûr pour rejoindre le Software Freedom Conservancy, vous pouvez également faire appel aux services de SFLC. (Je ne sais pas si les projets non-Conservancy pourraient utiliser les services de SFLC --- vous devriez vérifier.)

Chris Jester-Young
la source
Très joli lien. Je ne savais même pas que des choses comme ça existaient.
pst
1
Font-ils la recherche pour vous ou fournissent-ils simplement les avocats? Parce que je pense que l'OP recherchait l'ancien
TheLQ
1
-1 Bien qu'intéressant, cela ne répond pas à la question posée.
HedgeMage
1
@HedgeMage - la question était un peu plus ambiguë avant l'édition.
detly
3

La GPL n'a qu'une application limitée aux webapps côté serveur. Tout ce qui est côté client est distribué, mais c'est normalement Javascript, et l'utilisateur obtient automatiquement la source. Tout ce qui est strictement côté serveur est exécuté, non distribué, et la GPL s'applique principalement à la distribution.

C'était la motivation de l'Affero GPL, qui (IIRC) dit essentiellement que si vous utilisez un logiciel AGPLed dans quelque chose comme une application web, il est nécessaire d'offrir de distribuer la source.

David Thornley
la source
1
Correct. L'AGPL couvre spécifiquement les «logiciels qui interagissent avec un réseau». Cela s'appliquerait tout autant à ... un serveur IMAP ... qu'à une application Web.
Tim Post
2

S'il se comporte comme et s'exécute comme votre programme, vous pouvez commencer avec objdumpdes outils similaires. Cette ancienne entrée Slashdot montre une autre méthode plus formelle pour détecter la violation de la GPL.

vpit3833
la source
1

Harald Welte a eu du succès avec les approches de la carotte et du bâton pour amener les entreprises qui ont mal utilisé son code sous licence GPL à se conformer aux termes de la licence. De nombreuses entreprises devaient simplement être informées des conséquences de leurs décisions et régler leurs problèmes à l'amiable.

sarnold
la source
-1 Ne répond pas réellement à la question posée, qui est de savoir comment identifier de tels abus, pas quoi faire après la découverte d'un tel abus.
HedgeMage
5
@HedgeMage - la question a été modifiée récemment, il était en fait assez déroutant qu'il a été migré ici, alors qu'en fait il a probablement fait appartiennent sur le SO.
Tim Post
2
@Tim: Pouvons-nous maintenant aller riposter-downvote @HedgeMage maintenant? Pleeeez? :-P (Pour les rôdeurs tiers: Non, ce n'est pas une suggestion sérieuse. Tim et moi sommes tous les deux des modérateurs sur d'autres sites SE et ne nous engagerions jamais dans quelque chose comme ça. Sûrement!)
Chris Jester-Young
1

Si vous repérez une violation de la GPL (quelqu'un a utilisé du code sous vos droits d'auteur et n'a pas offert de source lors de la distribution de binaires), contactez le contrevenant et demandez à résoudre la situation. Documentez les e-mails, les données de quand vous avez contacté qui, etc.

Si ce n'est pas votre droit d'auteur mais que vous avez repéré la violation, contactez le détenteur du droit d'auteur d'origine à côté du contrevenant et parlez-lui également de la violation. Advisably avant de contacter le contrevenant.

Si le logiciel est une œuvre combinée avec de nombreux titulaires de droits d'auteur, la même chose s'applique à vous si vous n'êtes qu'un des titulaires de droits d'auteur ou seulement un groupe de titulaires de droits d'auteur (et pas tous). C'est votre droit d'auteur alors, et la GPL s'applique à tout type de dérivés - grands ou petits.

Si vous êtes en raison de limitations techniques incapables d'acquérir des connaissances si une violation probable est vraiment une violation, vous devez rechercher d'autres moyens pour en savoir plus. Par exemple, en posant des questions au contrevenant probable, en accédant à des sources binaires ou même à des tiers, etc.

Si le code en question est sous GPL v2 et qu'il y a une violation des conditions de licence, la résiliation s'applique. Le contrevenant a perdu à jamais tous les droits d'utiliser le code GPL. Il doit à nouveau entrer en contact avec tous les titulaires de droits d'auteur et demander le rétablissement des droits, sinon l'utilisation du code viole toujours le droit d'auteur.

Si le code en question est sous GPL v3 et qu'il y a une violation des conditions de licence, la résiliation est également en vigueur, mais le contrevenant peut s'en remettre en arrêtant la violation de son propre chef - à moins qu'un titulaire du droit d'auteur ne demande plus.

Edit: Il s'agit simplement d'informations générales. Si vous souhaitez vous pencher sur l'aspect juridique concret de cela, vous devez être propriétaire du droit d'auteur et vous devez contacter votre équipe juridique dès le départ pour savoir ce dont vous avez besoin pour une preuve et ce qui est suggéré pour résoudre une violation même sans la loi comme c'est beaucoup plus pratique.

hakre
la source