Selon de nouvelles étude, jusqu’à 60 % de toutes les codes bases utilisés en entreprise contiennent au moins une vulnérabilité provenant de composants open-source. Un chiffre qui provient de Black Duck, qui a publié son rapport annuel Open Source Security and Risk Analysis (OSSRA), qui analyse les données anonymisées de plus de 1 200 codes bases utilisés en entreprise à partir de 2018.

Les logiciels libres, les bibliothèques et autres composants sont souvent d’une valeur cruciale pour les entreprises d’aujourd’hui. Et le support de la communauté open-source, de nombreux programmeurs talentueux prêts à donner de leur temps pour contribuer aux projets, la transparence du code et des délais de mise en œuvre plus courts que le développement de systèmes en interne contribuent tous aux taux élevés d’adoption de l’open-source.

De toutes les codes bases examinés par Black Duck, 96% contiennent des composants libres, et la plupart des codes bases sans code libre contiennent moins de 1 000 fichiers. Si le chiffre est révisé pour les codes bases comptant plus de 1 000 fichiers, le taux d’adoption des logiciels libres passe donc à… 99 %. En moyenne, Black Duck a identifié 298 composants open-source par codes bases en 2018, contre 257 l’année précédente.

Bien que l’avantage d’avoir de nombreux contributeurs sur un projet puisse signifier que le code open-source a des avantages en termes de sécurité, parfois, les vulnérabilités peuvent passer à travers les mailles du filet ou rester non corrigées car les développeurs peuvent ne pas réaliser qu’ils sont affectés par un défaut de sécurité.

Parmi les codes bases examinés, 60% contenaient au moins une vulnérabilité. Il semble toutefois que la situation sur le plan de la sécurité s’améliore, puisqu’il s’agit d’une baisse par rapport au chiffre de 78% enregistré en 2017. Au total, plus de 40% contenaient des vulnérabilités jugées de nature critique.

“La réalité est que l’open-source n’est pas moins sûr que le code propriétaire”, dit le rapport. “Mais il n’est pas non plus plus plus sûr. Tous les logiciels, qu’ils soient propriétaires ou open-source, ont des faiblesses qui peuvent devenir des vulnérabilités, que les organisations doivent identifier et corriger.” L’âge moyen des vulnérabilités analysées est de 6,6 ans. La plus ancienne, CVE-2000-0388, est une faille de type buffer overflow dans la bibliothèque libmytinfo de FreeBSD qui a été rendue publique il y a… 28 ans. Au total, 43% des bases de code analysées contenaient un bug vieux de plus de 10 ans, ce qui peut suggérer que les entreprises ne sont pas au courant de leur utilisation des logiciels libres, ni ne gèrent un catalogue de composants, ce qui laisse les logiciels vieillissants non corrigés, et prêts à être exploités.

Parmi les vulnérabilités les plus critiques trouvées, citons CVE-2018-7489, une faille de sécurité d’exécution de code à distance FasterXML jackson-databind ; CVE-2017-15095, une faille de désérialisation dans jackson-databind ; CVE-2014-0050, un déni de service (DoS) ayant des répercussions sur Apache Tomcat, JBoss Web et autres ; CVE-2017-15708, un bug d’exécution à distance dans Apache Synapse.

Le bug le plus courant présent dans les bases de code est CVE-2012-6708, un problème XSS de gravité moyenne affectant les versions de jQuery antérieures à 1.9.0.

“Seule une poignée de vulnérabilités open-source – telles que celles qui affectent Apache Struts ou OpenSSL – sont susceptibles d’être largement exploitées”, affirment les chercheurs. Dans cette optique, les organisations devraient concentrer leurs efforts de gestion et d’atténuation de la vulnérabilité des logiciels libres sur la base des scores CVSS et la disponibilité des exploits, et pas seulement sur les failles zero day. Ce travail doit être fait tout au long du cycle de vie de la composante open-source”.

Une autre question soulevée dans le rapport concerne les conflits de licence. Au total, 68% des codes bases vérifiés contenaient des composants comportant des conflits et 38% des composants sans licence identifiable. 

Source : 60 percent of enterprise codebases contain open-source vulnerabilities