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.