IMDRF : Principes et pratiques de la nomenclature des logiciels pour la cybersécurité des dispositifs médicaux

Par Guillaume Promé
le
17 Avr. 2023 Logiciel

Nouveau Guide IMDRF, relatif à la gestion de la nomenclature des logiciels (de) DM, à des fins de cybersécurité.

La SBOM (Software Bill of Materials) est issue des travaux de 2018 de l’Administration Nationale des Télécommunications et de l’Information (NTIA) des États-Unis.

Le guide vise les fabricants et les prestataires de santé.

Définitions

Le guide propose 25 définitions, dont :

Hachage / valeur de hachage : valeur calculée par une fonction de hachage, qui est une méthode de calcul utilisée pour générer une valeur aléatoire de longueur fixe à partir de données d’une longueur optionnelle quelconque.

Nomenclature logicielle / SBOM : liste d’un ou de plusieurs composants identifiés, de leurs relations et d’autres informations associées.

Contenu de la SBOM

Conformément aux recommandations de la NTIA, une SBOM devrait comprendre les éléments suivants :

  • Nom de l’auteur : désigne l’entité (personne, organisation ou autre) qui a produit le fichier SBOM.
  • Horodatage : Enregistrement de la date et de l’heure de l’assemblage des données SBOM.
  • Fournisseur de composants logiciels : L’entité qui crée, définit et identifie les composants. Le nom du fournisseur de composants logiciels doit généralement faire référence au nom commercial légal du logiciel commercial.
  • Nom du composant logiciel : Désignation attribuée à une unité de logiciel définie par le fournisseur d’origine.
  • Version du composant logiciel : Identifiant utilisé par le fournisseur pour spécifier un changement de logiciel par rapport à une version précédemment identifiée.
  • Identifiant unique : Les identifiants utilisés pour identifier un composant ou servir de clé de recherche pour les bases de données pertinentes.
  • Relation : Décrit la relation selon laquelle un composant amont X est inclus dans le logiciel Y.

Il existe actuellement plusieurs formats SBOM automatisés :

  • CycloneDX,
  • Software Package Data Exchange (SPDX)
  • Software Identification (SWID)

Des logiciels d’analyse de la composition des logiciels (SCA) permettent d’identifier automatiquement les attributs critiques des composants logiciels tiers :

  • Nom
  • Vendeur
  • Version
  • Hachure
  • Relations (une ou plusieurs couches de dépendances)
  • Vulnérabilités
  • Modèle de licence
  • Informations sur la conformité

Gestion de la SBOM

La SBOM est un moyen d’informer les professionnels de santé quant aux problématiques de cybersécurité associées à un dispositif.

La SBOM est gérée et mise à jour durant tout le cycle de vie du dispositif :

Elle contient les éléments du logiciel susceptibles de présenter une vulnérabilité.

Diffusion de la SBOM

La diffusion peut se faire par plusieurs moyens, selon les facilités pour les utilisateurs :

  • SBOM fournie avec le DM, dans une documentation intégrée ou séparée
  • SBOM intégrée au DM, accessible via l’IHM ou une API dédiée
  • SBOM intégrée dans un dépôt géré par le fabricant ou centralisé