Comment et pourquoi créer une nomenclature AIBOM

Les AIBOM aident les développeurs et les équipes de sécurité en fournissant une vue détaillée des composants du système d’IA, améliorant ainsi la sécurité de la chaîne d’approvisionnement et la conformité. Ce guide vous introduit à cette pratique.

Les nomenclatures logicielles sont devenues essentielles pour gérer et sécuriser les chaînes d’approvisionnement logicielles. Alors que les projets de développement deviennent de plus en plus complexes, la transparence est essentielle pour la sécurité des systèmes et des données.

À l’instar des SBOM, les nomenclatures d’IA (AIBOM) permettent aux organisations de suivre et de comprendre la composition des modèles et des systèmes d’IA, en atténuant les cybermenaces qui peuvent découler des composants d’IA propriétaires et open source.

AIBOM : Qu’est-ce qu’une nomenclature d’IA ?

Une AIBOM (AI Bills Of Materials) est une liste idéalement exhaustive détaillant tous les éléments impliqués dans le développement, l’entraînement et le déploiement d’un système d’IA. Une AIBOM doit inclure des informations sur le logiciel, le matériel, les données d’entraînement et l’historique associé, ainsi que sur les mesures de performance du modèle. Cette documentation permet aux observateurs de retracer l’origine et l’évolution du modèle tout au long de son cycle de vie. C’est l’une des exigences de l’AI Act européen.

Par exemple, une institution financière qui met en œuvre un système de détection des fraudes basé sur l’IA devrait disposer d’une AIBOM comprenant tous les éléments utilisés pour construire et entraîner le système. Les équipes de sécurité peuvent alors évaluer les vulnérabilités potentielles en matière de sécurité et s’efforcer de les corriger avant de le déployer dans l’environnement de production.

Les AIBOM peuvent également guider les développeurs œuvrant sur des projets d’intégration d’IA. Prenons l’exemple d’une équipe de développement chargée d’intégrer un modèle de traitement du langage naturel dans un chatbot destiné au service client. Une AIBOM fournit une liste claire des dépendances logicielles du modèle, des paramètres d’entraînement et des biais potentiels, ce qui doit faciliter son intégration et son dépannage.

AIBOM vs SBOM

Bien que les SBOM et les AIBOM soient similaires, les SBOM sont consacrées aux projets logiciels, tandis que les AIBOM sont dédiées aux systèmes d’intelligence artificielle en particulier. Néanmoins, de nombreux développeurs de logiciels utilisent les principes des SBOM comme base pour créer des AIBOM.

Le concept de SBOM est apparu pour faire face aux risques associés à la dépendance accrue vis-à-vis de composants logiciels tiers. De nombreuses cyberattaques entraînant des violations de données très médiatisées, telles que le piratage de SolarWinds en 2019, résultent de l’exploitation de failles de sécurité dans des composants tiers.

En raison de ces risques, la production d’un document SBOM est dĂ©sormais obligatoire aux États-Unis pour les Ă©diteurs qui vendent des logiciels Ă  l’administration fĂ©dĂ©rale, comme le stipule l’ordre exĂ©cutif 14028 du gouvernement Biden.

Comment les AIBOM renforcent la sécurité des systèmes d’IA

Les AIBOM offrent de nombreux avantages lorsqu’il s’agit de créer des systèmes d’IA sécurisés, notamment en améliorant la gestion des risques, la réponse aux incidents, la conformité, la sécurité de la chaîne d’approvisionnement et l’audit des systèmes d’IA.

Gestion des risques

Les AIBOM doivent offrir une vue transparente des composants utilisés dans le développement d’un système d’IA, révélant les dépendances et les interactions entre les différents composants. Avec une liste complète des éléments associés, les équipes de sécurité peuvent identifier les vulnérabilités potentielles affectant chaque composant et les traiter avant de les intégrer dans le système d’IA.

Réponse aux incidents

Si le système d’IA subit un incident de sécurité, une AIBOM aide l’équipe de réponse aux incidents à identifier rapidement les composants affectés. Cette identification rapide permet une remédiation plus efficace, ce qui est essentiel pour minimiser l’impact des failles de sécurité et réduire les temps d’arrêt. En outre, une AIBOM peut aider à identifier la cause première du problème, ce qui facilite les cyberinvestigations.

Conformité

Les AIBOM contribuent Ă  la mise en conformitĂ© des entreprises avec les exigences rĂ©glementaires. De nombreuses rĂ©glementations exigent une liste dĂ©taillĂ©e des composants utilisĂ©s dans le dĂ©veloppement de systèmes logiciels. Par exemple, la Food and Drug Administration des États-Unis exige que les organisations gèrent les composants logiciels utilisĂ©s dans les appareils mĂ©dicaux ; le mĂŞme principe s’applique aux appareils mĂ©dicaux alimentĂ©s par l’IA. Et c’est d’autant plus vrai avec l’entrĂ©e en vigueur de l’AI Act.

Sécurité de la chaîne d’approvisionnement

Les systèmes d’IA utilisent couramment des composants et des jeux de données provenant de fournisseurs externes. Une AIBOM doit offrir une meilleure visibilité des risques associés aux composants et aux ensembles de données provenant de tiers. Avec les bonnes politiques en place, cela renforce la sécurité de la chaîne d’approvisionnement.

Audit des systèmes d’IA

Les AIBOM sont censés faciliter les audits de sécurité des systèmes d’IA, car ils répertorient tous les composants, ainsi que leurs fournisseurs et leurs versions. Les professionnels de la cybersécurité peuvent idéalement découvrir les points faibles et les corriger avant qu’ils ne soient exploités par des acteurs malveillants. Par exemple, un système moderne de détection d’intrusion (IDS) peut utiliser des modèles de machine learning (ML), pour découvrir des anomalies dans le trafic réseau. Si un composant de l’IDS propulsé par l’IA est obsolète et contient une vulnérabilité, il pourrait être découvert et mis à jour avant que les pirates ne l’exploitent.

Les éléments principaux d’une nomenclature AIBOM

Une AIBOM doit contenir tous les Ă©lĂ©ments matĂ©riels et logiciels qui constituent le système d’intelligence artificielle. Cela inclut les composants suivants :

  • Nom et type du modèle. Le nom du modèle et sa classification, par exemple gĂ©nĂ©rateur de texte ou classificateur d’images.
  • Version du modèle. La version spĂ©cifique, telle que 1.0 ou 2.3, ou une version sĂ©mantique, comme v1.2.1.
  • Nom du fournisseur. Le nom du dĂ©veloppeur ou de l’organisation responsable du dĂ©veloppement du modèle, ainsi que leurs coordonnĂ©es.
  • Informations sur la licence. DĂ©tails des licences ; par exemple, Apache 2.0 ou GPL 3.0, pour le modèle et tous les composants utilisĂ©s.
  • Jeux de donnĂ©es. Informations dĂ©taillĂ©es sur les jeux de donnĂ©es utilisĂ©s pour entraĂ®ner le modèle IA/ML, y compris le nom, la version, le format et les limitations de chaque ensemble de donnĂ©es.
  • Modèles et algorithmes de ML. Algorithmes de base, architecture du modèle, hyperparamètres et tous les modèles prĂ©entraĂ®nĂ©s utilisĂ©s.
  • Composants logiciels. Tous les Ă©lĂ©ments logiciels, y compris les bibliothèques et frameworks tiers ; le système d’exploitation requis et toute version logicielle nĂ©cessaire pour exĂ©cuter le modèle ; les environnements d’exĂ©cution ; et tout logiciel propriĂ©taire nĂ©cessaire.
  • Exigences matĂ©rielles. SpĂ©cifications matĂ©rielles nĂ©cessaires pour exĂ©cuter le système d’IA, telles que le matĂ©riel serveur et les dispositifs de rĂ©seau utilisĂ©s pour faciliter les connexions Ă  distance.
  • SpĂ©cifications techniques d’entrĂ©e et de sortie. Formats de donnĂ©es d’entrĂ©e et de sortie et spĂ©cifications API pour l’intĂ©gration.
  • Paramètres du modèle. Paramètres tels que le taux d’apprentissage, le nombre de couches cachĂ©es et les ressources informatiques utilisĂ©es.
  • ScĂ©narios d’utilisation et limitations. DiffĂ©rents cas d’usage, utilisations malveillantes possibles du système, limitations du système et biais potentiels.
  • Exigences en matière de sĂ©curitĂ©. Types de chiffrement exploitĂ©s pour protĂ©ger les donnĂ©es du modèle et les informations des utilisateurs, en plus des mĂ©canismes de contrĂ´le d’accès requis.
  • Signature numĂ©rique de l’AIBOM. DestinĂ©e Ă  garantir l’authenticitĂ© et l’intĂ©gritĂ© des composants logiciels enregistrĂ©s dans l’AIBOM.

Outils et frameworks pour générer des AIBOMs

Plusieurs outils et frameworks sont disponibles pour gĂ©nĂ©rer des AIBOMs. Voici quatre options populaires :

  • AIBOM Visualizer d'AI Security Research. Un outil de visualisation pour d’un schĂ©ma AIBOM. Il offre une reprĂ©sentation graphique des composants du système d’IA.
  • CycloneDX de l’Open Web Application Security Project. Une norme SBOM complète qui propose des capacitĂ©s amĂ©liorĂ©es de gestion de la chaĂ®ne d’approvisionnement. Cette technologie est dĂ©jĂ  dĂ©ployĂ©e par les dĂ©veloppeurs, tout comme SPDX.
  • System Package Data Exchange AI. Un outil qui gĂ©nère un inventaire complet des composants logiciels et des versions utilisĂ©s dans un système d’IA.
  • AI Factsheets d’IBM. Une source qui collecte des mĂ©tadonnĂ©es et des informations sur le cycle de vie du modèle afin de suivre la performance du modèle ML.

Pour approfondir sur IA Responsable, IA durable, explicabilité, cadre réglementaire