Meilleures pratiques pour l'open source également pour les entreprises qui n'en utilisent "pas" ?


Cela m'étonne, car les experts rapportent que dans environ 99% des audits de logiciels, des composants open source sont trouvés. Ces audits sont notamment motivés par des négociations avec des revendeurs comme SAP, des rachats d'entreprises, des tours de financement stratégiques ou des contrôles de conformité et de sécurité.
Dans ce cas, on trouve généralement des centaines, voire des milliers de composants open source différents. Les experts chez les analystes rapportent depuis longtemps qu'aujourd'hui, un tiers du code d'application est déjà constitué de composants open source.
Cela vaut également pour la communauté SAP, où Android, Apache, Git, Java, Linux, Maven, OpenStack, Spring et des centaines d'autres composants plus ou moins importants jouent un rôle de plus en plus important dans l'informatique.
Je me demande donc comment je dois interpréter la réponse à ma question initiale. Mon interlocuteur n'a-t-il pas une vue d'ensemble du développement interne de logiciels, l'entreprise n'est-elle pas au courant ou indifférente à ce que font ses développeurs de logiciels ? N'utilise-t-on vraiment pas l'open source et n'exploite-t-on donc pas d'importants potentiels d'innovation et de réduction des coûts ?
Pourquoi est-il important de savoir si l'open source est utilisé et dans quelle mesure ? Le proverbe "Ce que je ne sais pas ne me fait pas peur" ne protège ni les entreprises ni le management en cas de problèmes critiques. Tant que l'on ignore si, où et quel type d'Open Source est utilisé, il ne peut en tout cas pas y avoir de protection efficace.
Pourquoi est-il nécessaire ? Les composants open source peuvent contenir des types de licence peu clairs, voire viraux, ce qui a déjà conduit dans certains cas à des litiges coûteux avec des développeurs open source.
Entre-temps, comme pour les brevets, il existe ici aussi des "trolls" qui s'attaquent de manière ciblée aux entreprises et "gagnent" ainsi des millions. Comme plus de la moitié des audits révèlent des types de licences inconnus de la direction concernée ou des composants avec des licences GPL critiques, le risque potentiel est très élevé.
On connaît également des cas où des rachats d'entreprises, des investissements ou des accords OEM ont "éclaté" ou où les valeurs des entreprises ont chuté de manière dramatique. Contrairement aux applications mobiles, les utilisateurs d'applications open source ne sont généralement pas informés automatiquement des nouvelles versions.
De ce fait, les entreprises utilisent souvent des versions obsolètes qui contiennent des erreurs critiques et des failles de sécurité connues depuis longtemps. Les développeurs doivent s'activer eux-mêmes et s'informer péniblement des mises à jour. C'est également ce que font les pirates informatiques, qui utilisent les informations des bases de données telles que OWASP.org pour lancer des attaques ciblées sur des composants non sécurisés.
Éviter les risques grâce aux meilleures pratiques
Il est important de commencer par déterminer l'ampleur de l'utilisation, même si "officiellement" aucun logiciel libre n'est utilisé. Les entreprises devraient définir un processus dans lequel l'utilisation est réglementée et si possible surveillée automatiquement, sans pour autant entraver le développement.
Des entreprises comme SAP, Seeburger et Xing prouvent que cela peut se faire sans problème, en sécurisant l'utilisation par des processus agiles et des logiciels de surveillance. Cela protège des risques commerciaux ainsi que du respect des exigences légales telles que la loi sur la sécurité informatique.
Entre-temps, il existe quelques solutions commerciales propriétaires, pour la plupart américaines et israéliennes, ce qui semble toutefois quelque peu paradoxal pour la surveillance des logiciels open source.
Des solutions comme VersionEye de Mannheim empruntent ici d'autres voies, sont elles-mêmes 100 % open source (licence Apache) et peuvent également être utilisées gratuitement pour la surveillance entièrement automatisée des versions, des licences et des risques de sécurité potentiels.