In this article
Qu’est-ce qu’une attaque par empoisonnement des données ?
Imaginez que vous éduquiez un chien guide, mais qu’une personne lui apprenne secrètement à vous faire foncer dans des obstacles. C’est essentiellement ce que fait l’empoisonnement des données à l’IA. L’empoisonnement des données est une attaque sophistiquée conçue pour manipuler les informations utilisées lors de l’entraînement des modèles d’intelligence artificielle (IA). En injectant des données trompeuses ou corrompues, les attaquants peuvent nuire aux performances du modèle, introduire des biais, voire créer des vulnérabilités de sécurité.
Une attaque par empoisonnement des données manipule les données d’entraînement à partir desquelles un modèle d’IA apprend, avant ou pendant son entraînement. Les attaquants ajoutent des échantillons malveillants à des jeux de données extraits du Web, modifient ou falsifient les étiquettes de données existantes, ou compromettent le processus de collecte et d’étiquetage des données. Leurs objectifs vont de la dégradation générale de la précision à la mauvaise classification ciblée, en passant par l’installation de portes dérobées qui s’activent au moment de l’inférence.
Alors que les modèles d’IA alimentent de plus en plus des applications critiques dans les domaines de la cybersécurité, de la santé, de la finance et de nombreux autres secteurs, il est devenu absolument essentiel de garantir l’intégrité et la fiabilité des données fondamentales qui servent à les entraîner. Toute compromission de ces données peut avoir des conséquences considérables et potentiellement dommageables, d’où l’importance de comprendre l’empoisonnement des données et de s’en protéger.
Le rôle des données dans l’entraînement des modèles
Les modèles d’IA apprennent à identifier des tendances et à faire des prédictions en analysant de très grandes quantités de données. Ces données peuvent prendre différentes formes : des données étiquetées, où chaque élément est associé à la réponse ou à la catégorie appropriée (courantes dans l’apprentissage supervisé), ou des données non étiquetées, que le modèle doit apprendre à comprendre et à structurer par lui-même (souvent utilisées dans l’apprentissage non supervisé).
Quel que soit leur type, la qualité et l’intégrité des données sont absolument essentielles. Toute compromission de ces données fondamentales peut fausser considérablement les résultats du modèle et entraîner des résultats inexacts, voire préjudiciables. Ces inexactitudes peuvent avoir de graves conséquences, parfois dangereuses, et nuire durablement à la réputation d’une entreprise. Lorsqu’un attaquant parvient à empoisonner un jeu de données, le modèle d’IA entraîné à partir de celui-ci peut générer des résultats incorrects, biaisés ou préjudiciables. Il est donc essentiel de détecter et d’atténuer ces attaques.
Attaques directes et indirectes par empoisonnement des données
L’empoisonnement des données se produit principalement de deux façons. Dans le cas d’un empoisonnement direct, les attaquants injectent délibérément des données nuisibles dans les jeux de données d’entraînement, en ciblant souvent des modèles open source ou des projets de recherche en apprentissage automatique.
L’empoisonnement indirect des données, quant à lui, exploite des sources de données externes en manipulant du contenu Web ou des jeux de données participatifs utilisés par les modèles d’IA. Ces deux méthodes peuvent entraîner des comportements d’IA peu fiables, biaisés, voire malveillants.
Signes d’empoisonnement des données
Il peut être difficile de détecter l’empoisonnement des données, mais certains signes peuvent indiquer que vos données d’entraînement de l’IA ont été altérées. Il peut s’agir d’une baisse soudaine et inexpliquée de la précision globale du modèle, de l’apparition de biais inattendus dans ses résultats ou d’une hausse des taux de mauvaise classification inhabituels.
Il est important de noter que ces symptômes ne sont pas toujours évidents et qu’ils nécessitent souvent une surveillance attentive et régulière pour être détectés. Les organisations doivent donc rester vigilantes et mettre en place des mesures de sécurité pour protéger leurs modèles d’IA.
7 bonnes pratiques pour atténuer les attaques contre les données
Pour atténuer efficacement le risque d’empoisonnement des données, les organisations doivent adopter une approche globale pour protéger les modèles d’IA à plusieurs niveaux.
Voici quelques stratégies clés pour prévenir et détecter les attaques par empoisonnement des données :
Mettre en place une validation rigoureuse des données : auditez et vérifiez régulièrement les jeux de données d’entraînement afin de détecter les anomalies. En plus des audits manuels, des outils automatisés de validation des données peuvent aider à repérer des tendances suspectes ou des incohérences qui pourraient indiquer une altération.
Utiliser des sources de données fiables : assurez-vous que les modèles d’IA sont entraînés à partir de jeux de données fiables et vérifiés. Nouer des partenariats avec des fournisseurs de données réputés et exploiter des jeux de données conformes aux normes du secteur permet de réduire le risque d’intégrer des informations compromises.
Appliquer des techniques d’assainissement des données : utilisez des méthodes de filtrage et de détection des anomalies pour nettoyer les données d’entraînement. La mise en place de pipelines de prétraitement qui suppriment les doublons, détectent les valeurs aberrantes et corrigent les données mal étiquetées renforce également l’intégrité des jeux de données.
Surveiller en continu les performances du modèle : détectez rapidement les écarts afin de réagir aux tentatives d’empoisonnement potentielles. Des évaluations régulières des performances, combinées à des algorithmes de détection des anomalies, contribuent à maintenir la fiabilité du modèle.
S’appuyer sur des outils de développement sécurisés : utilisez des solutions telles que Snyk Code, optimisé par DeepCode AI, pour renforcer la sécurité. Un assistant d’IA peut également corriger les problèmes d’application susceptibles de survenir lorsqu’un modèle entraîné à partir de données erronées génère du code défectueux. En automatisant la détection des menaces et la réponse à celles-ci, ces outils contribuent à préserver l’intégrité des données et à renforcer la sécurité globale de l’IA.
Appliquer des politiques de contrôle des accès : limitez les droits de modification des données aux utilisateurs autorisés. La mise en place d’un contrôle d’accès basé sur les rôles (RBAC) et de l’authentification multifacteur (MFA) peut ajouter des niveaux de sécurité supplémentaires pour empêcher toute modification non autorisée des données.
Adopter des techniques de confidentialité différentielle : protégez l’intégrité des données d’entraînement en intégrant des méthodes de préservation de la confidentialité, telles que l’ajout de bruit, l’apprentissage fédéré et le calcul multipartite sécurisé (MPC).
Stratégies d’atténuation des attaques par empoisonnement des données
Les stratégies d’atténuation jouent un rôle essentiel dans la protection des systèmes d’IA contre l’empoisonnement des données. L’entraînement adversarial, par exemple, consiste à exposer les modèles à des scénarios d’empoisonnement simulés — autrement dit, à de fausses attaques — pour renforcer leur résilience.
Le suivi de la provenance des données — qui consiste à conserver une trace de leur origine, de leurs transformations et de leur intégrité lorsqu’elles sont utilisées pour entraîner des modèles d’IA — permet de vérifier l’authenticité des jeux de données et de repérer et supprimer plus facilement les données corrompues. Les organisations doivent également s’engager à réentraîner régulièrement les modèles à partir de jeux de données propres et vérifiés, afin de contrer toute tentative d’empoisonnement antérieure.
Exemples d’attaques par empoisonnement des données
L’empoisonnement des données est répandu dans de nombreux secteurs. Dans le domaine des véhicules autonomes, des jeux de données manipulés ont amené des systèmes de conduite alimentés par l’IA à mal interpréter des panneaux de signalisation, avec des risques potentiels pour la sécurité.
Les systèmes de cybersécurité qui s’appuient sur la détection des menaces par l’IA ont également été ciblés : des modèles empoisonnés n’ont pas réussi à reconnaître certaines signatures de logiciels malveillants. Même les grands modèles de langage (LLM) sont vulnérables à l’empoisonnement, comme le montrent des cas où des outils de génération de code par IA reproduisent par inadvertance des vulnérabilités, un problème mis en évidence dans les recherches de Snyk et les études sur les vulnérabilités de Copilot.
La suite : défis et opportunités en matière de sécurité de l’IA
À mesure que l’adoption de l’IA se développe, les défis associés à la sécurisation de ces outils augmentent eux aussi. L’empoisonnement des données reste une menace importante qui exige une vigilance permanente et des mesures de sécurité proactives.
Lorsque des données erronées s’introduisent dans le modèle d’IA d’un assistant de programmation et entraînent de mauvaises recommandations, Snyk peut vous aider. Des outils comme Snyk Code, optimisé par DeepCode AI et Code Checker de Snyk peuvent identifier et atténuer les risques afin de préserver l’intégrité des modèles d’IA.
En comprenant ces risques et en prenant des mesures proactives, vous pouvez créer et maintenir des systèmes d’IA fiables qui font progresser votre entreprise. À mesure que le paysage numérique évolue, garantir l’intégrité des applications alimentées par l’IA sera essentiel à votre réussite à long terme.
Pour en savoir plus sur la façon d’éviter les risques liés au code généré par l’IA, téléchargez Les essentiels du SAST pour le code généré par l’IA.
Foire aux questions
Qu’est-ce qu’une attaque par empoisonnement des données ?
Une attaque par empoisonnement des données cible un modèle pendant son entraînement, et non au moment de l’inférence. En manipulant les données à partir desquelles le modèle apprend, un attaquant peut dégrader largement sa précision, provoquer des erreurs de classification ciblées ou implanter une porte dérobée qui ne s’active qu’en présence d’un déclencheur précis. La taxonomie du machine learning adversarial du NIST classe ces attaques en attaques visant la disponibilité, attaques ciblées, attaques par porte dérobée et attaques par empoisonnement du modèle.
Comment l’empoisonnement des données se produit-il concrètement ?
Il n’existe pas de mécanisme unique, et il s’agit rarement d’injecter directement des données dans un entraînement. Les méthodes les plus courantes consistent à intégrer du contenu malveillant dans des données publiques qu’un robot d’exploration récupérera plus tard (des chercheurs ont montré qu’il était possible, pour environ 60 $, d’empoisonner une petite fraction d’un jeu de données de la taille de LAION), à inverser ou falsifier les étiquettes d’échantillons existants, à compromettre des jeux de données tiers ou des prestataires d’annotation dans la chaîne d’approvisionnement des données, et à manipuler les signaux de retour humain pendant le réglage fin ou le RLHF.
Comment le détecter et l’empêcher ?
La détection est difficile, car un modèle empoisonné se comporte normalement avec les entrées qui ne sont pas affectées. Il faut donc agir sur la chaîne d’approvisionnement des données : suivre leur provenance à l’aide d’une nomenclature logicielle pour le machine learning (ML-BOM), vérifier les jeux de données tiers et les prestataires d’annotation, puis détecter les anomalies avant l’entraînement. Après l’entraînement, des outils d’analyse des portes dérobées et des mesures de protection comme la confidentialité différentielle peuvent limiter l’influence de chaque échantillon sur le modèle. Les recommandations de l’OWASP sur l’empoisonnement des données et des modèles et Snyk Learn présentent des mesures de contrôle concrètes.
Sécurisez le développement de l’IA générative avec Snyk
Définissez des garde-fous de sécurité pour tout développement assisté par l’IA.