11m read

Empoisonnement des données : Définition, types d’attaques et défenses

Que trouverez-vous ici ?

Cato Networks reconnu comme Leader dans le Gartner® Magic Quadrant™ 2024 pour le SASE à fournisseur unique

Télécharger le rapport

L’empoisonnement des données est une attaque délibérée contre les données dont un système d’IA ou d’apprentissage automatique s’inspire. Au lieu d’attaquer directement l’application en cours d’exécution, l’attaquant corrompt un ensemble de données, un ensemble d’étiquettes, un corpus de récupération ou un pipeline d’entraînement afin que le modèle apprenne le mauvais schéma et se comporte ensuite d’une manière qui sert les objectifs de l’attaquant.

C’est ce qui rend l’empoisonnement des données difficile pour les équipes de sécurité et d’IA. Les dommages peuvent être implantés longtemps avant que quiconque ne voie la sortie du modèle. Un modèle empoisonné peut sembler normal lors des tests standards, passer des vérifications de précision générales et échouer néanmoins sur les cas précis qui intéressent l’attaquant.

Définition courte : l’empoisonnement des données est la manipulation intentionnelle des données d’entraînement, de réglage fin, d’étiquetage ou de récupération afin qu’un système d’IA apprenne un comportement corrompu.

Comment fonctionne l’empoisonnement des données

La plupart des attaques d’empoisonnement suivent le même schéma de base, même lorsque les détails techniques diffèrent selon le type de modèle ou la source de données.

  1. L’attaquant trouve un chemin dans le pipeline de données. Ce chemin peut être un ensemble de données public, une source web récupérée, un processus d’étiquetage par la foule, un modèle fourni par un fournisseur, un outil d’annotation ou un corpus de récupération utilisé par un système RAG.
  2. L’attaquant ajoute, modifie ou supprime des données. Il peut inverser des étiquettes, insérer des motifs déclencheurs, fausser la distribution des exemples, supprimer des contre-exemples importants ou semer des documents avec des instructions conçues pour affecter la récupération ultérieure.
  3. Le modèle apprend à partir des données corrompues. Lors de l’entraînement ou du réglage fin, le système considère le schéma contrôlé par l’attaquant comme une preuve légitime.
  4. Les dommages apparaissent plus tard. Le modèle peut devenir moins précis, plus biaisé ou vulnérable à un déclencheur caché qui s’active uniquement dans des conditions spécifiques.

L’attaquant n’a souvent pas besoin d’accéder à l’application déployée finale. S’il peut influencer les données en amont, il peut être en mesure d’affecter le modèle final sans jamais toucher à la production.

Comment cela diffère de la corruption de données accidentelle

Les mauvaises données sont courantes. Les fichiers se cassent, les étiquettes sont incorrectes, les sources dérivent, des doublons s’infiltrent et des cas particuliers sont négligés. Ce sont des problèmes de qualité des données. Le poisoning des données est différent car la corruption est intentionnelle et hostile.

Cette distinction modifie la réponse. La corruption accidentelle est généralement gérée par des contrôles de qualité, des validations et des nettoyages. Le poisoning des données nécessite un état d’esprit de sécurité : provenance, contrôle d’accès, modélisation des menaces, pistes de vérification, détection d’anomalies et une hypothèse selon laquelle certaines entrées peuvent être hostiles.

Types d’attaques par poisoning de données

Les attaques par poisoning sont généralement regroupées par l’objectif de l’attaquant. Certaines dégradent le modèle de manière générale. D’autres sont beaucoup plus précises, c’est pourquoi elles peuvent être plus difficiles à remarquer.

Attaques par inversion d’étiquettes

Dans une attaque par inversion d’étiquettes, l’attaquant change les étiquettes sur des exemples d’entraînement sélectionnés. Le spam est marqué comme légitime. La fraude est marquée comme normale. Un échantillon malveillant est marqué comme sûr. Le modèle apprend alors la mauvaise relation entre l’entrée et le résultat.

Attaques par porte dérobée ou Trojan

Une attaque par porte dérobée apprend au modèle à se comporter normalement la plupart du temps mais à échouer lorsqu’un déclencheur apparaît. Le déclencheur peut être une marque visuelle dans une image, une phrase dans un texte, un motif dans un fichier, ou un autre signal contrôlé par l’attaquant. BadNets a contribué à rendre cette classe d’attaque bien connue en montrant comment un modèle pouvait maintenir de bonnes performances tout en ayant une porte dérobée cachée.

Poisonnement ciblé

Le poisonnement ciblé modifie le comportement du modèle sur des entrées spécifiques tout en laissant les performances générales largement intactes. C’est la version qui préoccupe le plus les défenseurs, car un tableau de bord ordinaire peut montrer une précision globale saine alors que le modèle est discrètement erroné sur un cas étroit et de grande valeur.

Attaques de disponibilité

Les attaques de disponibilité sont moins subtiles. L’objectif est de réduire les performances du modèle de manière suffisamment large pour que le système devienne peu fiable ou inutilisable. Ces attaques sont plus faciles à détecter que le poisonnement ciblé car l’échec est visible à travers de nombreux cas.

Poisonnement de récupération dans les systèmes RAG

Les applications modernes de LLM utilisent souvent la génération augmentée par récupération, ou RAG, où le modèle consulte une base de connaissances externe avant de répondre. Cela crée une autre surface de poisonnement. Si un document malveillant entre dans le corpus de récupération, le modèle peut le récupérer plus tard et le traiter comme un contexte de confiance.

Des travaux récents sur des attaques telles que SilentRetrieval montrent pourquoi cela est important : les documents empoisonnés peuvent être rédigés pour sembler fluides et pertinents, rendant les simples vérifications de qualité des défenses faibles. Pour les systèmes RAG, l’ensemble de données n’est pas seulement l’ensemble d’entraînement original. C’est aussi la base de connaissances que le modèle consulte au moment de l’inférence.

Où le poisonnement peut entrer dans le cycle de vie de l’IA

Une erreur courante est d’imaginer le poisonnement comme quelque chose qui ne se produit que pendant l’entraînement du modèle. En pratique, la contamination peut entrer presque partout où des données sont collectées, étiquetées, déplacées, transformées ou récupérées.

  • Collecte : corrompre les données sources, les données extraites, les ensembles de données publics, les enregistrements soumis par les utilisateurs ou les flux de capteurs.
  • Annotation : manipulation des étiquettes humaines, des étiquettes issues de la foule ou des flux de travail d’étiquetage des fournisseurs.
  • Agrégation : falsification des données lors de leur combinaison à partir de plusieurs sources.
  • Prétraitement : modification des données lors du nettoyage, de la transformation, de la dé-duplication ou de l’ingénierie des caractéristiques.
  • Entraînement et ajustement : empoisonnement des données utilisées pour entraîner un modèle ou adapter un modèle existant.
  • Récupération : ajout de documents hostiles au corpus qu’un système RAG interroge lors de son utilisation.

Cette vue du cycle de vie est importante car une défense placée uniquement à l’étape d’entraînement manquera les attaques qui sont intervenues plus tôt. Le RAG crée une autre lacune : une attaque peut entrer plus tard, à travers le matériel que le modèle récupère après son déploiement.

Pourquoi l’empoisonnement des données est difficile à détecter

Les attaques d’empoisonnement les plus difficiles sont conçues pour laisser le modèle paraître sain. L’exactitude globale peut ne pas diminuer. Les tests de validation peuvent réussir. Le comportement empoisonné peut n’apparaître que lorsqu’un déclencheur, une classe cible ou un motif d’entrée étroit est présent.

C’est pourquoi les exemples de recherche sont utiles, mais ils nécessitent une interprétation soigneuse. Les études sur les portes dérobées montrent qu’un modèle peut bien fonctionner sur des entrées propres tout en échouant sur des entrées déclenchées. Le travail sur l’empoisonnement RAG montre que les documents de récupération malveillants peuvent être difficiles à signaler avec des vérifications simples de fluidité ou de perplexité. La leçon pratique n’est pas que la détection est impossible ; c’est que la détection seule n’est pas suffisante.

Les signes d’alerte peuvent inclure :

  • Une chute soudaine de l’exactitude qui ne peut être expliquée par un changement connu de données, de modèle ou de code.
  • Biais inattendu ou performance incohérente entre les groupes, les classes ou les types d’entrée.
  • Mauvais classements concentrés autour d’une classe, d’une phrase, d’une caractéristique, d’une source ou d’une famille de documents spécifiques.
  • Un modèle qui fonctionne normalement lors de tests larges mais échoue de manière répétée sous une condition de déclenchement étroite.

Le poisoning des données s’inscrit dans le domaine plus large de l’IA adversariale, où des termes similaires sont souvent utilisés de manière lâche. La distinction la plus claire est le timing : le poisoning des données corrompt ce que le système apprend ; de nombreuses autres attaques manipulent le comportement du système pendant son utilisation.

Menace Comment cela diffère du poisoning des données
Injection de prompt Une attaque en temps d’exécution contre les instructions ou le contexte d’un LLM. Le poisoning des données modifie les données d’apprentissage ou les données de récupération.
Exemples adversariaux Les entrées sont conçues au moment de l’inférence pour tromper un modèle entraîné. Le poisoning modifie les données avant ou pendant l’apprentissage.
Poisonnement de modèle L’attaquant altère directement les paramètres du modèle, les gradients ou les mises à jour. Le poisoning des données fonctionne à travers les données dont le modèle apprend.
Vol de modèle L’attaquant extrait ou imite un modèle. Le poisoning corrompt le comportement du modèle.
Corruption des données Les données peuvent être incorrectes par accident. Le empoisonnement est intentionnel et adversarial.

La version courte : l’empoisonnement des données se produit avant ou pendant l’apprentissage, tandis que l’injection de requêtes et les exemples adversariaux se produisent pendant l’utilisation.

Comment prévenir et atténuer l’empoisonnement des données

Parce que le nettoyage est difficile une fois qu’un modèle a appris à partir de données empoisonnées, les meilleures défenses commencent avant l’entraînement et se poursuivent jusqu’au déploiement. L’objectif est de rendre l’influence des données visible, contrôlée et, si possible, réversible.

Avant l’entraînement

  • Suivez la provenance des données afin que les équipes sachent d’où proviennent les enregistrements et quelles sources sont fiables.
  • Validez et assainissez les données lors de l’ingestion, en particulier pour les ensembles de données publics, le contenu extrait, les soumissions d’utilisateurs et les flux de données tiers.
  • Traitez les ensembles de données open source, les modèles pré-entraînés et les modèles fournis par des fournisseurs comme des intrants de chaîne d’approvisionnement nécessitant une révision.
  • Limitez qui peut ajouter, renommer, supprimer ou approuver les données d’entraînement.
  • Conservez des journaux d’audit pour les modifications des ensembles de données, les décisions de labellisation et les mises à jour des pipelines.

Pendant l’entraînement et l’évaluation

  • Testez la performance à travers des tranches, et pas seulement l’exactitude globale.
  • Recherchez des clusters suspects, des motifs dupliqués, des anomalies de labellisation et des comportements spécifiques aux sources.
  • Entraînez en ombre ou mettez en scène de nouvelles sources de données avant de les promouvoir dans l’entraînement en production.
  • Utilisez des tests de porte dérobée et de déclencheur là où le modèle soutiendra des décisions sensibles.

Pour les systèmes RAG et LLM

  • Filtrez les documents avant qu’ils n’entrent dans le corpus de récupération, y compris les requêtes cachées et le contenu malformé.
  • Utilisez le classement des sources, les contrôles d’accès et les niveaux de confiance des documents plutôt que de traiter chaque passage récupéré de manière égale.
  • Combinez la récupération lexicale et vectorielle lorsque cela est approprié afin qu’une méthode de récupération ne devienne pas le seul chemin d’influence.
  • Isolez des passages, comparez plusieurs sources et évitez de laisser un seul document récupéré orienter une réponse à fort impact.

Le principe pratique est simple : le poisoning des données est autant un problème de gouvernance des données et de chaîne d’approvisionnement qu’un problème de sécurité des modèles. Il exploite plus souvent une provenance faible, un accès lâche, un examen insuffisant et des entrées non fiables que des défauts d’architecture de modèle exotiques.

Le poisoning des données et la loi

Le statut légal du poisoning des données dépend des faits : intention, autorisation, juridiction, système affecté et préjudice causé. Une interférence non autorisée avec un système ou un ensemble de données peut créer une exposition criminelle ou civile en vertu des règles sur l’utilisation abusive des ordinateurs, la fraude, le contrat, la propriété intellectuelle ou des règles spécifiques à un secteur.

Il existe également un débat distinct autour des personnes modifiant intentionnellement leur propre contenu public afin que les modèles qui le récupèrent sans autorisation apprennent des schémas dégradés. Certains décrivent cela comme une légitime défense contre le scraping non autorisé ; d’autres soutiennent que cela peut encore créer des risques juridiques et opérationnels. Cette question n’est pas résolue, donc les organisations devraient la traiter comme un problème d’examen juridique plutôt que comme une simple tactique technique.

Foire aux questions

Quel est un exemple de poisoning des données ?

Un exemple simple est un filtre anti-spam entraîné sur des e-mails, dans lequel certains messages de spam sont délibérément étiquetés comme légitimes. Un exemple plus avancé est un classificateur d’images avec porte dérobée qui se comporte normalement sauf lorsqu’un déclencheur spécifique apparaît.

Quels sont les symptômes du poisoning des données ?

Les symptômes peuvent inclure des baisses d’exactitude inexpliquées, des biais inattendus, des schémas de mauvaise classification inhabituels ou des échecs liés à un déclencheur spécifique. Les attaques ciblées et par porte dérobée peuvent montrer peu de symptômes lors de vérifications de performance générales.

En quoi le poisoning des données est-il différent de l’injection de prompt ?

Le poisoning des données modifie ce qu’un modèle apprend des données. L’injection de prompt manipule les instructions ou le contexte d’un LLM pendant son utilisation. L’un attaque le processus d’apprentissage ; l’autre attaque le comportement d’exécution.

Le poisoning des données peut-il affecter les grands modèles de langage ?

Oui. Les systèmes LLM peuvent être affectés par les données de préentraînement, les ensembles de données de fine-tuning, les corpus de récupération, les outils connectés et les sources de connaissances externes. Les systèmes RAG sont particulièrement exposés lorsque la confiance dans les documents est faible.

Conclusion

Le poisoning de données est une attaque contre le processus d’apprentissage. Sa force provient de l’effet de levier : une petite quantité de mauvaises données peut influencer un modèle qui prend ensuite des décisions à grande échelle. Son danger provient du timing : le compromis peut être planté en amont et découvert seulement après que le modèle soit déjà en usage.

La meilleure défense n’est pas un seul détecteur. Il s’agit d’une gouvernance des données disciplinée : sources de confiance, accès contrôlé, pistes d’audit des ensembles de données, tests au niveau des tranches, révision du corpus RAG et surveillance continue après le déploiement. Pour les équipes construisant ou achetant des systèmes d’IA, le poisoning de données rappelle que la sécurité du modèle commence avant que le modèle ne produise jamais une réponse.

Cato Networks reconnu comme Leader dans le Gartner® Magic Quadrant™ 2024 pour le SASE à fournisseur unique

Télécharger le rapport

This page was machine-translated. If you notice any inaccuracies or have feedback, please feel free to send it to us here.