Il est envisagé d’intégrer des fichiers SBOM (un registre des éléments constitutifs) aux paquets Python dans le but de perfectionner la gestion des dépendances et l’évaluation des points faibles.
Au commencement de l’année, une suggestion visant à perfectionner Python (Python Enhancement Proposal) a été présentée pour obtenir des retours. Elle envisage d’intégrer des fichiers de nomenclature logicielle, aussi connus sous le nom de SBOM (Software Bill-of-Materials), dans les paquets Python. Elle a pour but d’optimiser leur « mesurabilité » et d’éliminer le souci des « dépendances invisibles ». Pour appuyer cette suggestion, les auteurs indiquent que les paquets Python sont particulièrement touchés par un problème de dépendance invisible, ce qui signifie qu’ils contiennent souvent des éléments logiciels qui ne sont pas codés en Python, que ce soit pour des motifs de compatibilité avec les normes, de facilité d’installation, ou dans des situations d’utilisation comme l’intelligence artificielle qui emploient des bibliothèques compilées de C, C++, Rust, Fortran, et d’autres langues.
La suggestion souligne que même si le format de paquet binaire Python wheel est privilégié par les utilisateurs pour sa simplicité d’installation, il nécessite de rassembler des bibliothèques compilées partagées sans méthode pour encoder les métadonnées les concernant. De plus, les paquets associés aux paquets Python doivent parfois résoudre le problème de démarrage en Python, et donc inclure des projets Python purs dans le code source.
Une exigence croissante pour plus de documentation
Pourtant, ces éléments logiciels ne peuvent pas non plus être décrits en utilisant les métadonnées des paquets Python et risquent de passer inaperçus par les outils d’analyse de la composition des logiciels (Software Composition Analysis), de sorte que les éléments logiciels vulnérables ne sont pas signalés de manière précise. Inclure un document SBOM annotant toutes les bibliothèques intégrées permettrait aux outils SCA d’identifier de manière fiable les logiciels inclus.
Etant donné que le SBOM est indépendant de la technologie et de l’écosystème pour décrire la composition, l’origine et la filiation des logiciels, et que les SBOM sont utilisés comme données d’entrée pour les outils d’analyse de la composition des logiciels (SCA), comme c’est le cas des scanners pour les vulnérabilités et les licences, la suggestion recommande l’utilisation des SBOM pour optimiser la mesurabilité des paquets Python. De plus, les listes qui recensent tous les éléments logiciels, leurs dépendances et les métadonnées associées sont exigées par les récentes réglementations de sécurité, comme le Secure Software Development Framework (SSDF). A cause de ces réglementations, les auteurs de la suggestion estiment que la demande de documents SBOM pour les projets open source devrait rester forte, ce qui justifie encore plus l’intégration des documents SBOM dans les paquets Python.
0 commentaires