Skip to main content

Hausse de 88 % des vulnérabilités dans les bibliothèques applicatives en deux ans

Écrit par
the state op open source small

26 février 2019

0 minutes de lecture

Bienvenue dans le rapport annuel 2019 de Snyk sur l’état de la sécurité open source. Ce rapport est réparti en plusieurs articles :

Vous pouvez également télécharger notre superbe rapport PDF conçu avec soin, qui rassemble toutes ces informations et bien plus encore.

Télécharger le rapport 2019 sur l’état de la sécurité open source

Une vulnérabilité reste une vulnérabilité, qu’elle soit connue ou non. La principale différence entre les deux tient à la probabilité qu’un attaquant en ait connaissance et tente de l’exploiter. Ainsi, plus une vulnérabilité est connue, plus il est urgent de la traiter.

Une vulnérabilité connue peut être associée à un identifiant CVE dans le cadre d’une divulgation responsable, ou simplement être signalée sur Internet ou répertoriée dans des bases de données ouvertes. Il s’agit dans tous les cas de vulnérabilités connues que vous devez éliminer en priorité, car elles risquent davantage d’être exploitées en production. Ensuite, il convient de prendre en compte les vulnérabilités répertoriées dans des bases de données fermées, voire partagées sur le dark web.

Les vulnérabilités sont découvertes à un rythme croissant : leur nombre a presque doublé en deux ans

Vulnérabilités connues dans les bibliothèques applicatives

Aujourd’hui, nous constatons une hausse du nombre de vulnérabilités signalées dans plusieurs écosystèmes que nous suivons, notamment PHP Packagist, Maven Central Repository, Golang, npm, NuGet, RubyGems et PyPI.

En 2017, le nombre de vulnérabilités signalées dans l’ensemble des registres a augmenté de 43 %, puis de 33 % supplémentaires en 2018.

En examinant cinq écosystèmes différents — PHP, Java, JavaScript, Python et Go —, nous constatons que le nombre de vulnérabilités divulguées augmente dans chacun d’eux depuis 2014.

Les chiffres de 2018 pourraient encore augmenter, car des vulnérabilités non divulguées ne seront rendues publiques que plus tard cette année, ce qui accentuerait encore cette tendance.

En 2018, les nouvelles vulnérabilités divulguées pour npm ont augmenté de 47 %, et celles de Maven Central de 27 %

Graphique linéaire montrant l’augmentation du nombre de nouvelles vulnérabilités entre 2014 et 2018 dans les écosystèmes PHP Packagist, Maven Central, npm, Golang et PyPI.

En 2018, les vulnérabilités divulguées pour PHP Packagist ont connu une hausse spectaculaire de 56 %, tandis que les divulgations pour Maven Central ont augmenté de 27 %. Bien que l’écosystème Golang soit plus restreint, la recherche en sécurité y progresse et le nombre de nouvelles vulnérabilités signalées en 2018 a augmenté de 52 % par rapport à 2017.

En remontant jusqu’aux données de 2014 dans la base de données des vulnérabilités de Snyk, nous constatons une forte hausse générale du nombre de vulnérabilités.

Aujourd’hui, nous suivons 1 766 vulnérabilités dans Maven Central Repository, 1 268 dans npm, 746 dans PHP Packagist, 807 dans PyPI et 94 dans Golang.

Depuis 2014, le nombre de vulnérabilités dans la base de données Snyk a augmenté de 371 %, un chiffre impressionnant. Les vulnérabilités npm ont bondi de 954 %, et celles de Maven Central de 346 %.

Depuis 2014, le nombre de vulnérabilités dans la base de données Snyk a augmenté de 954 % pour npm et de 346 % pour Maven Central

Évolution de la gravité

Lorsque nous examinons la gravité des vulnérabilités divulguées dans les bibliothèques applicatives au cours des trois dernières années, tous langages de programmation confondus, nous constatons qu’en 2018, le nombre de vulnérabilités de gravité élevée était inférieur à celui de l’année précédente.

Toutefois, un constat intéressant pour 2017 et 2018 est que le nombre de vulnérabilités de gravité élevée a dépassé celui des vulnérabilités de gravité moyenne ou faible, contrairement à 2016.

Graphique à barres présentant la gravité des vulnérabilités par année : détections faibles, moyennes et élevées en 2016, 2017 et 2018.

À la une : Zip Slip

En 2018, l’équipe de recherche en sécurité de Snyk a divulgué de manière responsable plusieurs cas d’une vulnérabilité baptisée Zip Slip, une vulnérabilité critique très répandue permettant l’écrasement arbitraire de fichiers. Elle peut être exploitée à l’aide d’une archive spécialement conçue, contenant des noms de fichiers permettant de parcourir les répertoires, et entraîne généralement l’exécution de commandes à distance.

Cette vulnérabilité a été découverte et divulguée de manière responsable par l’équipe de sécurité de Snyk avant sa divulgation publique, le 5 juin 2018. Elle affecte des milliers de projets, notamment ceux de HP, Amazon, Apache, Pivotal et bien d’autres.

Cette recherche, menée dans différents écosystèmes, a révélé des dizaines de vulnérabilités dans des bibliothèques telles qu’Apache Ant, adm-zip et SharpCompress. Ces bibliothèques sont utilisées par des milliers de projets Java, npm, NuGet, Go, .NET, Ruby, Python et C++. Près de la moitié de ces vulnérabilités étaient de gravité élevée.

« Lorsque nous avons découvert le premier cas de vulnérabilité Zip Slip dans un projet de grande envergure, c’était très enthousiasmant. Nous avons eu un déclic, mais lorsque nous avons découvert que toutes les autres applications en proposaient une implémentation vulnérable, nous avons été extrêmement surpris. Nous avons compris que cette vulnérabilité ne touchait pas seulement quelques applications, mais un grand nombre de projets dans différents écosystèmes. »

SnykSnyk

Danny Grander

Founder / Chief Security Officer, Snyk

À la une : les vulnérabilités sans CVE

Les équipes de sécurité ont l’habitude de suivre les nouvelles vulnérabilités et de réagir lorsqu’elles sont divulguées dans la National Vulnerabilities Database (NVD) ou d’autres bases de données publiques de CVE.

Pourtant, un grand nombre de vulnérabilités sont découvertes et corrigées par des canaux non officiels, par exemple lors d’échanges informels entre les mainteneurs et leurs utilisateurs dans un outil de suivi des problèmes.

La base de données Snyk est soigneusement sélectionnée par une équipe interne d’analystes en sécurité. Elle répertorie des vulnérabilités absentes de ces sources officielles, mais mentionnées dans des espaces publics tels que des forums ou des notes de version. Si l’on se fie à la base de données Snyk, elle recense 67 % de vulnérabilités de plus que les bases de données publiques.

Outre leur manque d’exhaustivité, les CVE et les bases de données publiques mettent souvent du temps à ajouter les vulnérabilités. Prenons npm : les vulnérabilités apparaissent dans npm audit en moyenne 92 jours après avoir été répertoriées dans la base de données Snyk, et les bases publiques accusent un retard dans 72 % des cas.

Ces écarts montrent que le système CVE et les bases de données publiques open source ne parviennent pas actuellement à suivre le rythme et le volume des vulnérabilités des logiciels open source. Ces mécanismes doivent être réévalués, et les organisations soucieuses de la sécurité devraient se tourner vers des bases de données commerciales pour bénéficier d’une couverture complète et actualisée.Lire la suite :

Lancez-vous dans les compétitions Capture The Flag

Apprenez à résoudre des défis de capture du drapeau en regardant à la demande notre atelier virtuel d’initiation.

Lire la suite

blog feature snyk container custom base recommendations
Blog

Découvrez Evo Agentic AppSec : une sécurité au rythme du développement de l’IA

Le développement piloté par l’IA dépasse les workflows de sécurité traditionnels. L’AppSec agentique de Snyk s’appuie sur des agents de sécurité pour détecter, corriger et vérifier les vulnérabilités en continu, tandis que les équipes définissent les exigences.

blog feature ai violet
Blog

VulnBump : les agents IA peuvent-ils corriger les dépendances vulnérables sans casser le build ?

VulnBump évalue des agents IA sur 307 mises à niveau de dépendances réelles. Une correction n’est comptabilisée que si la vulnérabilité disparaît et que la compilation et les tests restent au vert.

Blog

Les modèles de pointe ont trouvé les vulnérabilités. Seul l’attaquant a trouvé les chaînes d’exploitation.

L’analyse statique a détecté les failles, mais seuls des tests d’attaque en conditions réelles ont prouvé comment elles pouvaient être enchaînées pour provoquer des compromissions. Comparaison d’Evo COS, de Claude Security et de Claude Code Security.