Connexion
Abonnez-vous

L’open source est partout, donc…

La minute culture du lundi

L’open source est partout, donc…

Non, l’open source n’est pas plus sûr ou moins sûr que le code propriétaire : il est différent. En tout cas, du point de vue de la sécurité informatique, la gestion des risques des logiciels open source est différente. Un des aspects particuliers est que ce type de composant se retrouve désormais partout, parfois même sans qu’on le sache.

Le 07 octobre à 10h30

Dans la série « cultivons-nous, même avec un peu de retard par rapport à leur parution, grâce aux rapports de nos amies les sociétés de sécurité informatique », nous allons regarder aujourd’hui le travail de Synopsys, dont une des spécialités est l’analyse de code.

Depuis une dizaine d’années, leurs spécialistes se penchent sur le code open source. S’il faut comme toujours garder une certaine distance avec leurs propos car il y a toujours une composante marketing et avant-vente, les constats de ces sociétés bien établies sont toujours plein d’enseignements.

La source...

Leur document OSSRA (Open Source Security and Risk Analysis) de 2024 utilise les données anonymisées de leur produit Synopsys Black Duck Audit Services, qui a analysé en 2023 plus de 1 000 bases de code, ou codebases (chez leurs clients) dans 17 secteurs d’activité. Par base de code, on entend l’ensemble de toutes les sources logicielles nécessaires à la construction d’un logiciel final. Synopsys nous a précisé que ces ressources vont du fichier pom.xml jusqu’aux .dll, en passant par des fichiers source.

Point intéressant, cet outil ne se contente pas de regarder les vulnérabilités logicielles, mais aborde aussi les aspects juridiques (licences) et qualité de code (SAST ou Static application security testing et autres). Du côté open source, ils annoncent surveiller plusieurs millions de composants.

...et l’open source

Commençons par une demi-surprise : 96 % des bases de code utilisent de l’open source. Rien d’exceptionnel cependant, nous constatons tous la prédominance de ce mode de distribution bien utile pour réutiliser des composants rapidement, et ainsi ne pas réinventer la roue. Il est plus que répandu : il est incontournable.

Rapport OSSRA 2024, Synopsys

Or, rien que du côté de la gestion des licences, on se retrouve déjà avec des problèmes : 53 % des codebases contiennent des conflits. Cela n’est pas si anodin que cela ; pour comprendre, voici quelques exemples :

  • GPLv2 et GPLv3 ne sont pas directement compatibles : si un projet a été distribué sous GPLv2 sans mention de compatibilité avec les versions futures, il ne peut pas passer sous GPLv3 sans l'accord de tous les contributeurs : imaginez le bazar !
  • La GPLv2 est incompatible avec certaines autres licences comme Apache 2.0. Ainsi, un projet peut combiner des licences Apache 2.0 et GPLv3, mais il n’est pas autorisé d’avoir Apache 2.0 et GPLv2.
  • Si la licence BSD permet de passer facilement à une redistribution propriétaire, la GPL impose que tout ce qui en est dérivé soit distribué en GPL.

Bien que cela soit souvent vu comme anecdotique du point de vue du développeur, le choix de la licence est souvent structurant et ne peut pas être modifié facilement !

De vieilles versions, et donc de vieilles failles qui trainent

Moins reluisant : dans 84 % des cas, le code open source comportait des vulnérabilités dont la moyenne d’âge était de 2,8 années. Dans 14 % des cas, il existe même des vulnérabilités ayant plus de dix ans. L’explication est assez simple : 91 % des composants open source trouvés ont au moins 10 versions de retard par rapport à leur version courante.

Les logiciels open source n’échappent pas au besoin de suivi et de mise à jour : il ne suffit pas de corriger les vulnérabilités, il faut intégrer ces corrections dans votre chaîne logicielle (de plus en plus complexe, par ailleurs) et gérer la dette technique, ce qui est d’autant plus difficile que la moitié des applications examinées utilisent plus de 500 composants.

Et encore, il faut que ces vulnérabilités soient corrigées un jour, car presque la moitié des composants inclus dans les codebases examinés ne montraient aucun signe de développement actif depuis deux ans ou plus. Tout le monde n’a pas la communauté de jQuery ou de React. Synopsys appelle même ce type de code « zombie » (mort-vivant).

Qui paye ses dettes (techniques) s’enrichit

En conclusion, on peut retenir que le phénomène open source, bien qu’établi depuis longtemps dans nos usines de production logicielles (à toute échelle, du développeur isolé aux multinationales), n’est que rarement bien appréhendé et bien géré par les équipes de développement.

La solution n’est ni simple ni monolithique : il faut combiner des outils d’analyse des licences, des outils de nomenclature logicielle (souvent appelés SBOM, recensant les composants utilisés dans vos applications), des outils d’analyse de code (de type SAST), mais aussi des outils d’automatisation de tests pour éviter les régressions lors d’une mise à jour des composants, etc.

Black Duck de Synopsys dont nous avons cité l’étude n’est pas le seul produit sur le marché, il y a aussi FOSSA, Mend, Snyk, ainsi que des produits (ou sous-produits) inclus dans des suites telles que Falcon de CrowdStrike.

Mais l’outillage ne fera rien sans une rigueur et une régularité dans l’examen et les mises à jour de vos composants. Même si les développeurs réagissent vite, les utilisateurs des briques open source un peu moins : la version 1 de log4j datant de 2015 était encore utilisée lors de l’apparition de la faille de 2021. Faites le calcul…

Et au risque de relancer une guerre de trolls en commentaires, l’open source n’est ni plus sécurisé ni moins sécurisé que du code propriétaire : les risques induits sont parfois similaires, mais souvent à traiter plus spécifiquement.

Commentaires (75)

Vous devez être abonné pour pouvoir commenter.

Abonnez-vous
votre avatar
En tant que développeur solo, je suis bien dans ces stats...

Maintenir les logiciels à jour est très chronophage. Et je ne parle même pas des librairies qui ne sont plus mises à jour. Si il faut les remplacer, dans pas mal de cas ca veut dire réécrire le code.

Pour ma part en tout cas il est impossible de rester constamment a jour
votre avatar
On dit bibliothèque, pas librairie :)

bibliothèque 🇫🇷 = library 🇬🇧
librairie 🇫🇷 = book shop 🇬🇧
votre avatar
Pour résumé le résumé,
bibliothèque = un lieu avec des livres
librairie = un lieu avec des livres
:fou:

J'ai bien compris que librairie c'est une traduction d'un faux ami mais il se trouve qu'il peut tout de même faire l'affaire si on prend le critère que tu as donné.
votre avatar
Ce qui importe, c'est la modalité d'accès. Dans une bibliothèque, une fois qu'on a le droit d'accès, on peut tout lire. Dans une librairie, une fois qu'on est rentré, on doit payer chaque fois qu'on veut prendre un truc à lire. C'est donc bien une bibliothèque. Les mots ont un sens.
votre avatar
Je suis d'accord, les mots ont un sens.
Tu parles de la modalité d'accès :
- Quand tu télécharges le code, c'est comme si tu as emporté un bouquin.
- La bibliothèque ou la librairie c'est la où tu l'as trouvé (genre github, ...)

Cela n'empêche pas que je suis d'accord que le meilleur terme est bibliothèque. Mais si quelqu'un veut utiliser librairie, il n'a pas tort pour autant.
votre avatar
"- Quand tu télécharges le code, c'est comme si tu as emporté un bouquin."
Et quand tu télécharges le code il disparait de github ou autres. :transpi:
votre avatar
Quelqu'un qui pinaille comme moi!

Bon courage pour traduire "file" qui est autant fiche que dossier/fichier (fichier étant aussi un meuble qui contient les fiches, donc un fichier n'est pas un document mais un ensemble de documents).

Ceci dit, c'est un abus courant dont on a quand même compris le sens.

Et on peut aussi se battre contre l'écran (= tout objet qui empêche de voir - "faire écran"), le terme film/pellicule dans le monde actuel, compiler qui correspond à l'agrégation des sources - terme qui est du coup le même que assembler, AUCUN d'entre eux ne représentant l'opération de transformer en code machine...

Rien ne va dans les termes du développement informatiques! Tout est de travers et il faut débrancher la partie littéraire de son cerveau ... ou accepter qu'un langue soit vivante.
votre avatar
Hi-hi ! Je ne "pinaille" pas, je fais mien l'aphorisme de Camus : "Mal nommer les choses, c'est ajouter aux malheurs du monde".
Le terme "file" était historiquement lié à la notion de "fichier", c'est-à-dire d'un ensemble de fiches. C'était bien le cas avec les bacs de cartes perforées que l'on donnait à manger aux machines. La technique a évolué, la représentation symbolique aussi, mais le terme de fichier, en tant qu'ensemble de données faisant sens en commun, garde sa pertinence. Cela ne me dérange donc pas de l'utiliser, surtout que cela sert d'accroche pour expliquer une histoire maintenant largement méconnue. 🙂
Le sens du terme "compilation" est effectivement lui aussi enraciné dans l'histoire et les modes de pensée des informaticiens des années 1950, qui avaient d'autres images mentales que les nôtres. Un assembleur est une sorte de compilateur, qui est essentiellement un traducteur, mais pas que, puisqu'il effectue cette traduction en compilant les informations venant de diverses sources (telles que les prototypes des fonctions à appeler, fournis dans d'autres documents). Il "compile" bien. 😁
N.B. : tous les compilateurs ne transforment pas en code machine. LaTeX compile des .tex en .dvi, par exemple.
Pour l'écran, en tant que surface plane, on en revient au cinéma, et cela fait sens.
Donc bien sûr que la langue est vivante, la preuve. Pour autant, si plusieurs mots existent, autant en prendre qui ne donnent pas des idées fausses sur le concept qu'ils cherchent à désigner.
votre avatar
A ce compte là, tu va confondre cuisine et magasin alimentaire.

Librairie : magasin où on achète les Livres neufs pour avoir le droit de les mettre dans sa bibliothèque.

Bibliothèque : lieu public ou privé où on peut trouver et consulter et donc faire usage des livres.
votre avatar
Comme dit, cela dépend de la définition.

Librairie : magasin où on achète les Livres neufs (il peut aussi y avoir des occasions) pour avoir le droit de les mettre dans sa bibliothèque.

Bibliothèque : lieu public ou privé où on peut trouver et consulter et emprunter et donc faire usage des livres.

La vraie différence c'est que l'un est payant (certains arrivent à lire sur place) et à emporter alors que l'autre est sur place et peut s'emporter.
votre avatar
Crypter, cryptage peuvent "faire l'affaire", au lieu de chiffrer, chiffrement.
Digital peut "faire l'affaire", au lieu de numérique.
votre avatar
Pas vraiment. Cela dépend de la définition que tu leur donnes.
Quelle est la définition de crypter ? librairie est dans le dictionnaire mais je ne sais pas si crypter y est.
Personnellement, je donnerais la définition suivante : "Regarder les comptes de la crypte une nuit d'automne". Avec ma définition, cela ne fonctionne pas. :ouioui:
votre avatar
J'aurais du mettre des smileys pour marquer l'ironie de mon message...
votre avatar
Je pense que le commentaire de Jarodd était sarcastique. 😉
votre avatar
Effectivement ne travaillant qu'en anglais je ne connais même pas la traduction de certain termes.

Mon mauvais :pastaper:
votre avatar
Mon mauvais
Tu vois que sais traduire :-P
votre avatar
Est-ce vrai ?
> La licence BSD permet une redistribution commerciale, mais pas la GPL, qui impose que tout ce qui en est dérivé soit distribué en GPL, compliquant les distributions commerciales.

Tu peux vendre un produit en GPL. Il faut juste que tu donnes la possibilité à l'acheteur de récupérer les sources du logiciel
votre avatar
Je suppose que la remarque était dans le but de vendre un logiciel propriétaire : c’est possible avec un composant BSD, pas avec un en GPL. Ce dernier t’obligerait à redistribuer ton logiciel sous GPL, qui autoriserait alors quelqu’un d’acheter une seule copie et de publier le code sur internet. Peu de vendeurs sont prêt à prendre ce risque.
votre avatar
La remarque est plutôt au sens de la "contamination" que la GPL peut avoir. En aucun cas elle n'empêche l'usage commercial (cf RHEL), mais elle ne peut pas se marier avec du propriétaire.
votre avatar
"Contamination" est un terme péjoratif, utilisé pour dénigrer les licences libres (genre le "Linux est un cancer" de Steve Ballmer). Si l'on veut être neutre, on parle de "diffusivité".
À noter que les modèles économiques fermés sont eux aussi diffusifs : si on doit payer chaque exemplaire d'un module que l'on redistribue dans son logiciel, on doit à son tour faire payer chaque exemplaire de son logiciel.
votre avatar
On pourrait dire de même avec "privatif" ou "privateur", qui sont les termes utilisés par la FSF pour parler du non-libre ;)

Sinon, je trouve que contamination et diffusivité non pas la même portée. Avec la diffusivité, tu n'as pas cette notion de caractère obligatoire qui est dans le terme contamination. Tu as le caractère de propagation, pas d'obligation.

D'un point de vue purement sémantique, on parlerait d'ailleurs plutôt de diffusante pour parler de contaminante. La diffusivité se référant plutôt au caractère contaminant ou non.

Ensuite, c'est bien la première fois que je vois ce terme de diffusivité sur les licences. Et pourtant, vu le temps que j'ai passé à étudier les licences, je pense que je l'aurais vu si c'était un terme reconnu.

Enfin, même les milieux libristes utilisent le terme de "contaminant", et cela ne leur posent pas de problème.
À noter que les modèles économiques fermés sont eux aussi diffusifs : si on doit payer chaque exemplaire d'un module que l'on redistribue dans son logiciel, on doit à son tour faire payer chaque exemplaire de son logiciel.
Sauf que tu mélanges modèle économique et licence. Ce sont deux aspects très différents. Là, on parle de licence. Tu mélanges tout.

[edit]
Dernier point que j'ai oublié : la notion de diffusivité est trop proche de la liberté de distribution, et on pourrait croire qu'une licence diffusive est une licence qui autorise la distribution du logiciel.

Il y a déjà assez d'incompréhension autour de la notion d'open source, que beaucoup confondent avec source available. Inutile d'en rajouter.
votre avatar
Le fait qu'un mot soit usité ne veut pas dire qu'il soit pertinent. Par exemple, parler de licence "propriétaire" est inadéquat, car il n'existe pas de régime de propriété (au sens de la possession) sur les biens immatériels. C'est pour cela que le droit d'auteur parle d'"ayant droit" (et non pas de "propriétaire"), que la loi " informatique et libertés" parle de "personne concernée", etc.
Le terme de "contaminant" est, comme je l'ai dit, biaisé, et incite les personnes à se détourner de ces catégories de licences, qui ont pourtant leur utilité pour mettre en œuvre certains modèles économiques.
Quand on parle de "licence diffusives/diffusante", on s'attache à définir le caractère propre de cette catégorie de licences, pas ce que l'utilisateur en fait (la rediffusion du logiciel modifié est un droit, pas un devoir). Peut-être un autre terme peut-il mieux convenir mais, en tout cas, " contaminant" est le mot de l'adversaire. :neutral:
votre avatar
C'est pour cela que le droit d'auteur parle d'"ayant droit" (et non pas de "propriétaire")
Quand on fait des leçons sur le vocabulaire, on essaie d'utiliser les bons termes soi-même.

Un ayant droit en terme de droit d'auteur, c'est un héritier de l'auteur.

Tu voulais probablement parler des titulaires du droit d'auteur (Chapitre III : Titulaires du droit d'auteur (Articles L113-1 à L113-10) du code de la propriété intellectuelle).

Édit :
il n'existe pas de régime de propriété (au sens de la possession) sur les biens immatériels
Il n'existe tellement pas que le code qui régit cela contient le mot propriété dans son nom !
votre avatar
Plusieurs arguments en réponse :
1- j'ai vu des livres dont le titre parle des licornes. Que dois-je en déduire ? 😉
2- je sais bien que le code en question a le mot "propriété intellectuelle" dessus. Pourtant, le mot "propriétaire" n'est pas dedans. Cela interroge, et mon point est que justement c'est parce que ce terme est inadéquat. C'est un oxymore : il associe des contraires. Notez qu'en allemand, ce terme n'est pas le terme consacré ; on parle de "droit des biens immatériels". On est donc en droit de questionner la pertinence de l'usage du terme.
3- en droit d'auteur, on parle de la personne "titulaire des droits", et donc habilitée à les exercer. La personne détient les droits. Le raccourci avec ayant droit" est ici naturel. Votre définition est tout autant réductrice, car les ayant droits comprennent également les sociétés de gestion collective, qui n'appartiennent pas à la famille.
votre avatar
Votre définition est tout autant réductrice, car les ayant droits comprennent également les sociétés de gestion collective, qui n'appartiennent pas à la famille.
Non. La loi définit très précisément ce que sont les ayants droit (ayants au pluriel et droit au singulier (c'est important ce singulier)) dans le cadre de la propriété intellectuelle.
Je sais que ce terme a été utilisé ici, mais à tort. Il faut dire pour excuser Marc, qu'il reprenait le terme utilisé par les sociétés dont tu parles. Il faut dire qu'il est flatteur pour eux.

Quant aux licornes, quand on en parle ici, il s'agit de startups dépassant le milliard de dollars de valorisation.
votre avatar
Le fait qu'un mot soit usité ne veut pas dire qu'il soit pertinent.
Ce n'est pas à moi que tu vas faire dire le contraire, surtout après mes dernières interventions sur la notion d'open-source ces dernières semaines et qui porte mal son nom.

Mais si tu veux être compris, si un terme s'est imposé, alors c'est lui qu'il faut utiliser.

Utilise le terme de diffusif/diffusant si cela te chante, mais ne vient pas te plaindre de ne pas être compris par la suite. J'ai juste l'impression de dialoguer avec un "wokiste du libre".
Le terme de "contaminant" est, comme je l'ai dit, biaisé, et incite les personnes à se détourner de ces catégories de licences, qui ont pourtant leur utilité pour mettre en œuvre certains modèles économiques.
A mon avis, ce qui détourne le plus les gens d'utiliser des licences contaminantes, ce n'est pas à cause du mot utilisé pour la désigner, mais le caractère même qu'il représente.

Tu pourras toujours changer le mot, cela ne changera rien en pratique. Ce n'est pas pour rien que la GPL (pourtant, le terme "contaminant" n'apparait pas) est en perte de vitesse au profit de licence non copyleft comme la MIT ou non contaminante comme la LGPL.

Les licences "contaminantes" posent des problèmes, y compris avec d'autres licences libres/open source, contrairement aux licences non contaminantes.
Peut-être un autre terme peut-il moins convenir mais, en tout cas, " contaminant" est le mot de l'adversaire
L'adversaire... Rien que ça. C'est comme ça que tu désignes tout ceux qui ne sont pas d'accord avec toi ?
votre avatar
J'ai expliqué plus bas que les licences diffusives, type GPL, ont un rôle dans la promotion effective du "monde libre" par rapport au "monde fermé" : elles obligent à "restituer de la valeur" ä l'écosystème libre, alors que les licences non diffusives (LGPL ou BSD, par exemple) n'ont pas cette obligation. Il est évident que les promoteurs du fermé sont contents de pouvoir bénéficier de la valeur du libre sans avoir l'obligation d'y contribuer en code.
Aujourd'hui, maintenant que la nécessité de contribuer à l'écosystème dont on bénéficie est mieux comprise par l'ensemble du monde du numérique, peut-être cette obligation forte est-elle moins nécessaire. Pour autant, elle a un sens.
Votre repentance a été de courte durée : vous m'attaquez encore personnellement, sur mes motivations. Le terme "adversaire" (et non "ennemi" 😉) fait référence aux acteurs qui ont utilisé des termes discriminants envers le libre. Je rappelle que Microsoft utilisait le terme "copyright-impairing" pour qualifier les licences libres, afin d'interdire de lier du libre avec ses produits. Les mots ont un sens. Il fait utiliser les termes les plus factuels et neutres possibles, c'est juste mon point.
votre avatar
Votre repentance a été de courte durée : vous m'attaquez encore personnellement, sur mes motivations
Je ne vous ai pas répondu depuis le dernier commentaire où je faisais mon mea culpa. Ce commentaire datait d'avant. Pas de chance. Pour le coup, c'est donc vous qui faite une attaque ad hominem gratuite.
Le terme "adversaire" (et non "ennemi" 😉) fait référence aux acteurs qui ont utilisé des termes discriminants envers le libre.
Donc, déjà, ce n'est pas l'adversaire, mais les adversaires. Ensuite, beaucoup "d'adversaires" sont des libristes convaincus. Le terme "contaminant" a été introduit et utilisé par les partisants même de licence non copyleft, pour bien faire comprendre la différence avec les licences avec copyleft fort comme la GPL. Ce n'est pas "contre" le libre en général. Eventuellement, c'est contre une vision précise du libre. Pas de bol.
Je rappelle que Microsoft utilisait le terme "copyright-impairing" pour qualifier les licences libres,
C'est intéressant. Nombre de résultat de recherche (avec les guillemets, pour une recherche stricte) : 0. Nombre de résultats sans guillemets, beaucoup, mais aucun à ce sujet là, et encore moins avec Microsoft...
Les mots ont un sens. Il fait utiliser les termes les plus factuels et neutres possibles, c'est juste mon point.
La dessus on est d'accord. Choisir le plus précisément un terme est effectivement important. Ce qui est important aussi, c'est de se faire comprendre.

Maintenant, chacun se fera son opinion. Vous utilisez des termes que vous seul utilisez. Tellement seul que même Google ne retourne aucun résultat. Vous projetez simplement vos idéaux dans les termes que vous voudriez que tout le monde utilise.

Pour ma part, je reste sur ma position : nos avis sont irréconciliables. Je m'arrête vraiment là. "Debunker" vos fausses affirmations (cf. loi de Brandolini), par exemple sur des notions que vous seul semblez connaitre (licence diffusante, copyright impairing, etc.), me prend un temps certains. J'ai autre chose à faire.

Bonne continuation.
votre avatar
Le terme exact utilisé par Microsoft était "intellectual property impairing" :
https://www.samba.org/samba/ms_license.html
#MyBad
C'est un fait que l'univers observable ne se réduit pas à la barre de recherche de Google.
Et vous n'avez, jusqu'à présent, aucunement réfuté mes arguments.
Bonne continuation.
votre avatar
Oh mon dieu, un terme qui apparait une fois, dans une unique page... qui est celle que vous donnez !

Donc on a un projet, unique (Samba), qui utilise le terme "intellectualisme property impairing", et vous en concluez que, je vous cite "Je rappelle que Microsoft utilisait le terme "copyright-impairing" pour qualifier les licences libres" sans pour autant trouver ce même terme nulle part ailleurs, y compris chez Microsoft. Je dis bravo pour la désinformation.
C'est un fait que l'univers observable ne se réduit pas à la barre de recherche de Google.
A votre égard, j'hésite sincèrement entre naïveté et complotisme. Vous balancez des soi-disant faits, et si on ne réussi pas à en trouver trace, vous répondez ça ? Nan mais êtes vous réellement sérieux ?
Et vous n'avez, jusqu'à présent, aucunement réfuté mes arguments
Nan mais sérieusement ? (bis)

Et votre laïus sur licence diffusive (que vous êtes le seul à utiliser, encore une fois et dont on ne trouve nulle trace "sur Google") car soi-disant "contaminant" ce n'est pas neutre, mais que vous osez répondre dans un autre commentaire que "licence privatrice" ce n'est pas péjoratif).

Et si ça ne suffit pas, licence diffusive porte à confusion (au même titre que licence open source), car quand je lis licence diffusive, je lis "licence qui donne le droit de diffuser le logiciel" (tout comme beaucoup comprenne "licence qui donne le droit d'examiner le code" pour une licence open source).

Pour quelqu'un qui vante l'usage des mots et l'importance de leur signification, je vous trouve bien léger sur ce coup.

Je ne vais pas non replus reparler du "contaminant" introduit, selon vous, par "l'adversaire" du libre (au singulier, tel que vous l'avez employé)... alors que le terme a été introduit par des libristes eux-mêmes pour justement faire la distinction entre les licences à copyleft fort et les non copylefts....
votre avatar
Je trouve que "contaminant" expose bien la problématique de la GPL et d'autres licences, contrairement à BSD/MIT/... qui sont réellement libres.
votre avatar
Il s'agit d'un conflit entre deux sortes de libertés : la liberté individuelle de refermer du code, et la liberté collective de disposer d'un patrimoine logiciel accessible et, surtout, en croissance, ce que les licences non diffusives ne garantissent pas (juste, au mieux le préserver, avec les licences de type LGPL). C'est efectivement une ligne de fracture forte entre communautés "libristes".
votre avatar
On pourrait dire de même avec "privatif" ou "privateur", qui sont les termes utilisés par la FSF pour parler du non-libre ;)
Pas vraiment, ce n'est pas agréable à entendre pour celui qui vend des logiciels privateurs, mais ça correspond bien à une réalité de ces types de logiciels. MS qui s'offusquerait qu'on qualifie ses produits de privateurs, c'est comme Xi Jinping qui couine quand Biden le qualifie de dictateur (ça fait pas plaisir, mais c'est la vérité).

C'est surtout un problème lié à la quasi-dématérialisation (et à l'opacité) de tout ce qui est numérique (et de tous les parallèles foireux avec les produits totalement physiques : copier c'est du vol ou de la contrefaçon, alors qu'aucun des termes n'est exact).
votre avatar
Attention, je ne dis pas que certaines licences ne mérite pas le terme de "privatif" ou "privateur". Juste qu'il ne faut pas faire une généralisation (comme le fait la FSF) où non libre = "privateur", sans aucune nuance.

Pour la FSF par exemple, Microsoft est aussi privatrice avec Windows que ne l'est (ou plutôt était) ElasticSearch à l'époque où le produit était sous SSPL.

Pour la FSF toujours, les logiciels open source (selon la définition de l'OSI et reconnu comme tel toujours par l'OSI), mais non libre (c'est rare, mais ça existe) sont des logiciels privateurs.
votre avatar
Ok, j'étais plutôt resté sur licence non libre (du tout) = privateur et licence libre (même non diffusive) = libre ou open source. Je ne pensais pas au cas que tu as cité.
votre avatar
"Privatif" n'est pas en soi un terme péjoratif. Dans un immeuble, on parle de "parties privatives", par rapport aux " parties communes", pour designer des lieux dont l'usage n'est pas ouvert ä la communauté. "Licence privative" peut donc faire pleinement sens.
La contrefaçon est la copie illicite d'un bien. Cela peut aussi convenir aux biens immatériels.
En revanche, "vol" ne convient effectivement absolument pas.
votre avatar
Je ne suis pas vraiment d'accord pour la contrefaçon, il y a un dommage bien supérieur à la contrefaçon de produits physiques : une contrefaçon, souvent inférieure à l'original, va par conséquent aussi porter préjudice à la marque du produit légitime. Par ailleurs, l'immatériel est très différent du physique : quand tu vends des objets, ils ne sont pas copiés autant de fois qu'il n'y a d'intermédiaires entre l'usine et le client, alors que dans le cas des fichiers, la copie est la seule et unique façon de "transférer" un produit. Ça change beaucoup les choses (par exemple, même avec un fichier légal, tu as une copie en cache quelque part sur ta machine, est-ce que si tu la copies/déplaces ailleurs sur ton disque, ou sur un autre appareil, c'est de la contrefaçon, ou pas ?)

Je pense que toutes les législations qui s'appuient sur des textes nés avec et créés pour l'économie tangible ne sont pas pertinentes en ce qui concerne l'immatériel.
votre avatar
Il faut distinguer 2 cas :
1) la commercialisation d'un logiciel X
2) la commercialisation d'un logiciel utilisant la brique X

Dans le premier cas, qu'importe la licence open source choisie, le résultat est le même. La société qui "vend" le logiciel X doit fournir à ses utilisateurs le code source, et ses utilisateurs ont tout à fait le droit de redistribuer le logiciel, sans redevances.

Dans le second cas, les licences non-copyleft (comme la BSD) permettent l'usage de la brique dans un logiciel commercial, sans venir bousculer la redistribution.

Par contre, les licences copyleft peuvent rendre la distribution commerciale sans intérêt, en fonction de la définition d'oeuvre dérivée. Dans le cas de la brique X sous GPL, le logiciel sera considéré comme une oeuvre dérivée, et la GPL devra donc s'y appliquer.

Si la brique X est sous LGPL par exemple, le logiciel ne sera pas considérée comme une oeuvre dérivée, et seule les modifications faite à la brique X seront couverte par la LGPL.

Au dela des aspects philosophiques, c'est aussi pour ça que la GPL est en perte de vitesse aujourd'hui, par rapport à une époque. Avec une licence GPL, on peut avoir des incompatibilités, y compris avec des licences open-source, et c'est alors un véritable casse-tête.

Les licences non-copyleft posent beaucoup moins de problèmes. Un exemple tout bête : la licence GPL est incompatible (ou en tout l'était, je ne sais pas ce qu'il en est aujourd'hui) avec les règles de l'AppleStore. Résultat des courses, un logiciel comme VLC ne pouvait pas être présent sur iOS. Ce fut d'ailleurs une des raisons évoquées pour le passage du coeur de VLC de la GPL vers la LGPL.
votre avatar
Vive la WTFPL !
votre avatar
Contre toute attente, cette licence... n'est pas open source et a été rejettée par l'OSI ! Mais est reconnue par la FSF comme une licence libre.

A ce jour, la WTFYWPL est donc la seule licence libre connue non open-source.

Et ce n'est pas une blague. L'OSI rejette cette licence non pas parce qu'elle considère qu'elle ne respecte pas la définition de ses 10 points, mais parce qu'elle est assimilable au domaine publique et n'est donc pas une licence à proprement parler.

Comme quoi, les licences, c'est compliqué ^^
votre avatar
En même temps, on parle surtout d'une licence satirique qui se veut être une parodie de la GPL ;)

Pour ma part, j'ai l'habitude de licencier mes travaux perso sous MIT. Je ne vise pas spécialement d'ambition donc ça me convient. Par contre j'ai arrêté la Creative Commons pour mes ouvrages.
votre avatar
Il y a plusieurs types très différents de "Creative Commons". Certaines sont libres, d'autres pas ("non commercial" = non libre d'usage). De fait, difficile de savoir vos motivations.
votre avatar
Il vaut mieux éviter les licences exotiques, car elles peuvent considérer comme non valide et dans ce cas, c'est le droit de propriété intellectuelle qui s'applique (en France).
votre avatar
Non. Le droit d'auteur s'applique tout le temps ! Et tant mieux parce que justement toute licence (même libre) s'appuie sur l'existence du droit d'auteur.
votre avatar
Oui, mais avec une licence, tu donnes une autorisation, mais si la licence est invalide, cette autorisation est retirée.
votre avatar
Oui, avec le bémol qu'en pratique, le juge examinera quelles clauses sont illicites et les annulera elles seulement. Cela a été par exemple le cas avec la suppression de certaines clauses des CGU de Twitter par un tribunal (de Pau ?).
De fait, je vous rejoins sur le fait qu'il vaut mieux prendre une licence éprouvée "sur étagère" que de s'en bricoler une sur un coin de table. 😁
votre avatar
Quand j'ai vu le logo, j'ai tout de suite pensé à la Warner. Mais ce n'est pas le genre de licence de cette maison.
votre avatar
Surtout pas ! Cette licence ne posséde pas de clauses d'exonération de responsabilité (le texte en majuscules en bas de chaque licence) et donc est bien plus risquée pour l'ayant droit qui l'utilise pour le logiciel qu'elle/il diffuse.
votre avatar
Les licences diffusives obligent à étendre le périmètre du logiciel libre, tout comme sont diffusifs les modèles économiques fermés. Dans la compétition entre les deux, les licences libres diffusives ont leur nécessité.
votre avatar
Tu mélanges licence et modèle économique.
votre avatar
Une licence sert à mettre en œuvre un modèle économique.
votre avatar
Non. Il y a bien une corrélation entre les deux, mais pas de lien de causalité.
votre avatar
Non (à mon tour) : le choix d'une licence est dicté par le ou les modèles économiques que l'on souhaite mettre en œuvre : contributions en code, financière, etc. La décision par l'ayant droit du choix de la licence est par essence une décision économique, en termes de soutenabilité de son activité.
votre avatar
Non (encore). Beaucoup de projet se lancent, et ENSUITE seulement, cherchent un modèle économique (c'est même le principe des startup).

Le choix de la licence n'est pas obligatoirement dicté par un modèle économique. Il n'y a qu'à voir l'exemple de Wordpress tout récemment.
votre avatar
Non (encore et toujours). L'exemple du choix entre licence privative et libre (pour ne parler que de celui-ci) au démarrage d'une activité économique montre bien que c'est un choix structurant en termes de "proposition de valeur" aux clients/communauté. Que de nombreux projets commencent de façon communautaire, puis réfléchissent ensuite à leur modèle économique, est un fait incontestable, mais pas nécessairement une bonne pratique. 😬
Le basculement de licences entre fermé et ouvert (Blender, OpenCAScade, etc.) ou l'inverse, s'est à chaque fois fait sur des raisons économiques.
L'ignorer, c'est prendre un risque.
votre avatar
Que de nombreux projets commencent de façon communautaire, puis réfléchissent ensuite à leur modèle économique, est un fait incontestable
Tout est dit. Merci.
votre avatar
De rien, vraiment rien, car votre argument est un non sequitur : ce n'est pas parce qu'une situation existe qu'elle est bonne, ni ne peut/doit etre corrigée. D'où l'intérêt ici d'éduquer les porteurs de projets pour qu'ils ne commettent pas cette erreur stratégique majeure.
votre avatar
votre argument est un non sequitur
Confondre raisonnement et réalité du terrain (=les faits)...
D'où l'intérêt ici d'éduquer les porteurs de projets
Et bien évidemment, vous êtes porteur de la vérité absolue. Eclairez nos pauvres âmes perdues de votre lumière divine... :chinois:

Non, franchement, je crois qu'il est inutile de continuer cette discussion.
votre avatar
Les attaques ad hominem ne sont pas un signe de solidité du raisonnement. Brisons-lä, effectivement.
[Edit :] dans une discussion, on a le droit de ne pas être d'accord. Les échanges d'arguments se font aussi au bénéfice de tous les lecteurs, qui se feront chacun leur propre opinion.
votre avatar
J'avoue que mon dernier commentaire m'a taraudé cette nuit et je voulais le modifié ce matin. Sans forcément changer le fond, en changer la forme, qui est inadéquat. Pour la cohérence des propos, je vais laisser et donc dire autrement le message que je souhaitais faire passer et vous présente mes excuses pour la forme inapproprié du dernier commentaire.

J'étais passable énervé hier par vos propos, car vous opposez aux faits que je relate, votre vision de comment les choses devraient être. Mais pas que, vous sous-entendez aussi que votre vision est la seule valable, a une portée universelle et que les personnes qui ne la suivent pas ont "besoin d'être éduquées" (ce que certains peuvent tout aussi trouver insultant). Tout ceci, dans un argumentaire très léger mais malgré tout péremptoire.

A partir de là... l'émotionnel a pris le dessus, et j'avoue que je n'en suis pas fier.

Voilà ce que je sous-entendais dans mes derniers propos de manière ironique mais aussi irrespectueuse (et pour ce dernier point, mes excuses encore).

Maintenant, nous avons deux visions opposées et irréconciliables. Et si j'en respecte le fond (chacun à le droit d'avoir un avis), je n'en déplore malgré tout pas moins la forme.
votre avatar
Je vous remercie pour votre message, qui vous honore. J'ai moi aussi beaucoup réfléchi, ce qui prouve que la discussion est utile. 😉
[Edit: voici ma réponse développée]
Notre divergence de fond porte sur le fait que j'affirme qu'il y a une causalité entre le choix du modèle économique et les licences, et vous seulement une corrélation.
Vos arguments contre les miens sont qu'il y a des gens qui démarrent des projets communautaires apparemment sans avoir réfléchi à leur modèle économique, et que donc la pratique donnerait tort à ma théorie.
Vous pensez que certaines actions contraires invalideraient le raisonnement. C'est vrai en sciences, mais ici il s'agit ici de pratiques sociales. Votre raisonnement est donc erroné.
Prenons l'analogie du port du casque à moto. Il y a une causalité directe entre l'absence du port du casque et la gravité des accidents. Vous semblez dire que le fait que certaines personnes ne portent pas le casque montre qu'il n'y aurait pas de causalité entre les deux. Ici, l'accident, c'est de planter son projet.
Ce que j'affirme, c'est que les licences servent à mettre en œuvre des modèles économiques, et qu'il faut réfléchir à son modèle avant de choisir sa licence. C'est tout.
Le fait que des porteurs de projet ne le fassent pas (votre contre-argument supposé) ne prouve rien. Tant mieux s'ils prennent la bonne catégorie de licences dès le début.
Notez cependant que certains projets changent de licence (argument que j'ai apporté). Et pourquoi ? Parce qu'ils changent de modèle économique (Blender, etc.).
Quand vous parlez de licences, vous semblez vous restreindre aux licences libres. J'ai développé le cas du choix de modèle economique entre licences fermées et libres, qui est pourtant clair. Je n'ai eu aucun contre-argument de votre part.
Je maintiens donc mon point.
Qui plus est, vous parlez de corrélation, mais n'indiquez pas quelle serait alors le lien entre les deux.
Vous dites regretter la "forme" de nos échanges, surtout par le fait que je ne me range pas à vos arguments. J'ai développé pourquoi, et je n'ai jamais été irrespectueux envers vous.
Ceci sera donc mon dernier message sur le sujet. Les lecteurs se feront leur propre opinion.
votre avatar
Absolument. Et que la personne s'engage à redistribuer les codes sources de l'ensemble du logiciel qu'elle redistribuera à des tiers. C'est le "deal" des licences diffusives telles que la GPL : si tu prends de la valeur à l'écosystème, tu dois rendre la valeur ajoutée à l'écosystème.
D'autres types de licences permettent de mettre en œuvre d'autres modèles de redistribution de la valeur, où la valeur ajoutée n'est pas nécessairement rendue à l'écosystème d'origine.
votre avatar
Moins reluisant : dans 84 % des cas, le code open source comportait des vulnérabilités dont la moyenne d’âge était de 2,8 années. Dans 14 % des cas, il existe même des vulnérabilités ayant plus de dix ans. L’explication est assez simple : 91 % des composants open source trouvés ont au moins 10 versions de retard par rapport à leur version courante.
C’est un raccourci facile (et un peu trompeur) que font les firmes vendant des outils d’analyse. Ce n’est pas parce qu’une faille est trouvée dans un composant que le produit qui l’utilise est automatiquement vulnérable. Ça permet de faire des annonces alarmantes mais il faut finalement regarder au cas par cas.
votre avatar
"S’il faut comme toujours garder une certaine distance avec leurs propos car il y a toujours une composante marketing et avant-vente, les constats de ces sociétés bien établies sont toujours plein d’enseignements."
L'idée ici n'est pas de prendre les chiffres pour argent comptant mais de constater que l'hétérogénéité des composants logiciels est un risque en soi qu'il faut traiter (soit par la gestion des composants et de leur obsolescence, soit avec des outils "périphériques" comme des parefeux applicatifs, etc.), et parfois sous des angles moins évidents (comme les licences).
votre avatar
Et inversement, on peut utiliser un logiciel sans faille, mais mal configuré.
votre avatar
Exactement. À mon boulot on passe notre temps à mettre à jour les dépendances pour "fixer les CVEs". Le ratio de vrai faille / faux-positif est environ de 1:50. Mais faut faire le job malgré tout, pour rassurer les clients qui ont les yeux rivés sur leur vulnerability scanner.
votre avatar
Je me doutais de certains chiffres mais je suis quand même surpris de voir que certains soient si élevés.

Par contre j'ignorais que les licences étaient incompatibles entre elles :eeek2:
votre avatar
Par contre j'ignorais que les licences étaient incompatibles entre elles :eeek2:
Heureux homme ! :D

Il y a même pour je ne sais plus quels logiciel et bibliothèque une exception pour rendre compatible des licences qui ne l'étaient pas.
votre avatar
Ben déjà Linux (GPL v2) a une exception, pour éviter que tout programme tournant sous Linux soit considéré comme étant un travail dérivé de Linux.
votre avatar
L'article oppose "libre" et "commercial". C'est faux. Demandez à RedHat si le libre ne peut pas être "commercial" ! :mrgreen:
On oppose "libre" à "non libre" ou "fermé".
votre avatar
Bonjour, tu as raison, je vais faire corriger pour que ça soit plus clair (Marc Rees, tu nous manques !). Toutefois l'exemple n'est pas tout à fait adapté : le code source de RHEL est bien "ouvert", et il est gratuit. Donc libre à toi de l'utiliser. Sauf qu'en pratique, on n'utilise pas le code source mais les objets compilés par Red Hat, qui eux sont soumis à modèle commercial payant, non ouvert. D'ailleurs, il existe des distributions dérivées de RHEL, utilisant son code source, comme CentOS Stream, AlmaLinux, ou Rocky Linux. Fedora, elle, est une version "en amont" de RHEL.
votre avatar
Merci. Je suis d'accord sur l'analyse. Pour autant, si l'exemple du modèle économique de RedHat est moins "canonique" qu'un modèle d'éditeur pur (type Blender), il illustre de façon exemplaire qu'on peut faire beaucoup d'argent commercialement avec du libre, pour autant qu'on propose un service adapté au marché.
RedHat joue un rôle d'intégrateur utile, et produit un peu de code, mais je vous rejoins sur le reproche qui est que, dans le modèle économique de service, en général, trop peu de la valeur est "remontée" aux communautés autrices, ce qui pénalise les multiples écosystèmes d'édition sur lesquels les intégrateurs de service s'appuient.
votre avatar
CentOS Stream est en amont de RHEL, et non un derivé.
C'était Centos (tout court) qui était un rebuild.
votre avatar
La team next, peut-on avoir une réaction "popcorn"??? Ou alors un compteur de points avec un résumé des scores en bas???
votre avatar
:non:

Le débat s'est rasséréné de lui-même et se montre ma foi fort nourri, tenter de le résumer ou pire de l'arbitrer exposerait la team à des dommages collatéraux regrettables !

L’open source est partout, donc…

  • La source...

  • ...et l’open source

  • De vieilles versions, et donc de vieilles failles qui trainent

  • Qui paye ses dettes (techniques) s’enrichit

Fermer