Moins d’un développeur sur quatre procède à des tests de vulnérabilités des nouvelles versions des composants logiciels open source, et cela malgré la divulgation de failles retentissantes comme WannaCry…
L’utilisation des composants logiciels est ancrée dans les pratiques des développeurs. Dans un monde où tout s’accélère, dont la livraison des logiciels, l’intégration de cet usage dans les processus de développement est une réponse aux exigences économiques liées aux applications, à savoir d’associer vitesse et efficacité.
Par leur accessibilité et leur diversité, les composants Open Source occupent une place toujours plus importante dans le développement. Les développeurs s'appuient sur des composants qui empruntent des fonctions de bibliothèques de code existantes. 83 % d’entre eux confirment utiliser des composants commerciaux et des composants open source. Et en moyenne 73 composants sont utilisés par application.
La sécurité, parent pauvre des pratiques
Pourtant, la sécurité reste considérée comme le parent pauvre des pratiques des développeurs, qui préfèrent se préoccuper de la création du code avec l'ambition d'être reconnus. C’est ainsi qu’à cause de l’utilisation de composants tiers, chaque nouvelle version d’une application afficherait en moyenne 71 vulnérabilités !
Dans les faits, le constat est presque désastreux, et les mauvaises pratiques de sécurité exposent les organisations à des risques de failles telles que WannaCry :
- 28 % seulement des entreprises effectuent des analyses de composition régulières pour comprendre quels composants sont intégrés dans leurs applications.
- 53 % seulement conservent un inventaire de tous les composants de leurs applications.
- 52 % seulement des développeurs mettent à jour leurs composants (commerciaux ou open source) dans leurs applications lorsqu'une nouvelle faille de sécurité est dévoilée.
- 25% des développeurs procèdent à des tests de vulnérabilités de leurs composants logiciels lors de nouvelles versions.
Ces mauvaises pratiques de sécurité exposent les organisations à d’importants risques de failles.
Une question de responsabilité
Pour améliorer la sécurité du code, les équipes de développement se tournent vers des processus comme DevSecOps. Ces processus sont cependant porteurs d’une ambiguïté : pour répondre aux exigences de l’économie des applications, ils favorisent et valorisent la vitesse et l’efficacité, mais toujours pas ou mal la sécurité.
Et comme le volume des applications ne cesse d’augmenter, les équipes de développement (44%) ou de sécurité (31%) sont les plus susceptibles d'être responsables de la maintenance des composants commerciaux et open source tiers. Ce qui suggère une évolution vers la responsabilité de l'équipe de développement.
Source : Rapport « State of Software Security 2017 » de Vanson Bourne pour CA Technologies
Image d’entête 623899888 @ iStock danijelala