In this article
Attaques contre l’IA et IA adversariale en apprentissage automatique
Aujourd’hui, les développeurs utilisent très fréquemment l’IA dans leur travail quotidien. En fait, 92 % des développeurs déclarent déjà utiliser des outils de programmation assistée par l’IA dans leur travail. Si ces outils offrent des avantages, notamment en matière de rapidité, ils peuvent aussi introduire de nouvelles menaces et vulnérabilités. Tout comme les acteurs malveillants font constamment évoluer leurs techniques pour exploiter l’apprentissage automatique et l’IA, les organisations doivent faire évoluer leur cybersécurité.
Pour protéger votre organisation contre les attaques contre l’IA et l’IA adversariale, il est important de comprendre ce qu’est l’IA adversariale en apprentissage automatique, comment fonctionnent ces attaques et comment les détecter dans vos systèmes.
Qu’est-ce que l’IA adversariale ?
Dans le domaine de l’apprentissage automatique et de l’exploitation de l’IA, l’IA adversariale, également appelée apprentissage automatique adversarial, désigne les tentatives des acteurs malveillants d’altérer les systèmes d’apprentissage automatique et les modèles d’IA en les manipulant ou en les trompant à l’aide de données ou d’entrées. En règle générale, les attaques par IA adversariale exploitent la logique et les processus décisionnels de l’IA pour produire des résultats malveillants.
Comme l’IA adversariale est conçue pour être discrète et indétectable, les utilisateurs ne savent souvent pas que le modèle a été exploité ou compromis.
SÉCURITÉ DU CODE GÉNÉRÉ PAR L’IA
Guide d’achat sur la sécurité du code généré par l’IA
Découvrez comment sécuriser votre code généré par l’IA avec le Guide d’achat sur la sécurité du code généré par l’IA de Snyk.
Pourquoi l’IA adversariale en apprentissage automatique est-elle dangereuse ?
L’IA adversariale en apprentissage automatique est dangereuse, car elle compromet la fiabilité et la sécurité des systèmes d’IA. À mesure que l’IA s’intègre à un nombre croissant de processus, la portée et les conséquences des exploits augmentent. Par exemple, une attaque par IA adversariale visant un secteur critique comme les services financiers pourrait entraîner des délits financiers, comme la fraude, qui toucheraient les organisations et leurs utilisateurs.
Comment fonctionnent les attaques par IA adversariale ?
Les attaques adversariales exploitent les modèles d’apprentissage automatique à l’aide d’entrées malveillantes ou manipulatrices. En modifiant les entrées, les attaquants peuvent tromper le système et exploiter ses processus décisionnels, ce qui influe sur les résultats.
Les attaques se déroulent généralement en trois étapes :
L’attaquant étudie le système ou le modèle d’IA en l’analysant. Il procède souvent à une rétro-ingénierie pour repérer des faiblesses, des vulnérabilités ou d’autres failles de sécurité et accéder aux algorithmes et aux processus décisionnels du système.
Une fois qu’il comprend le modèle, l’attaquant peut commencer à créer des entrées, ou exemples adversariaux, pour tromper le système ou l’exploiter.
Après avoir perfectionné son entrée, l’attaquant commence à déployer les exemples adversariaux.
Quels sont les différents types d’IA adversariale ?
Pour comprendre l’IA adversariale et protéger votre organisation, il est important de connaître les types d’attaques qui existent :
Attaques par évasion : elles visent spécifiquement à manipuler les données d’entrée. Elles peuvent être ciblées ou non ciblées. Dans le cas d’une attaque ciblée, l’objectif est que le modèle d’IA produise un résultat incorrect précis. Les attaques non ciblées n’ont pas d’objectif ni de résultat particulier, si ce n’est de pousser l’IA à produire un résultat erroné.
Attaques par empoisonnement : elles consistent à altérer les données d’entraînement. Comme les modèles d’apprentissage automatique s’appuient sur ces données pour générer ou prédire des résultats, les attaques par empoisonnement peuvent fortement influer sur leur comportement ou leurs décisions.
Transfert de modèle : lorsque les attaquants testent avec succès des exemples adversariaux sur des modèles d’IA et des systèmes d’apprentissage automatique, ils peuvent tenter d’attaquer d’autres modèles. Comme l’attaque a déjà fonctionné, le transfert de modèle se produit généralement beaucoup plus rapidement que les autres types d’attaques par IA adversariale.
Extraction de modèle : après avoir obtenu un accès, les attaquants cherchent à voler ou à reproduire un système ou un modèle d’apprentissage automatique entraîné. Une fois qu’ils ont compris son fonctionnement, ils peuvent en créer une copie.
Attaques par porte dérobée dans l’IA : pendant la phase d’entraînement d’un modèle, les attaquants peuvent y ajouter un déclencheur malveillant. Ces attaques passent souvent inaperçues jusqu’à l’activation du déclencheur et au lancement de l’attaque.
Attaques en boîte noire et en boîte blanche
Dans le contexte des attaques par IA adversariale, les termes « boîte noire » et « boîte blanche » désignent le niveau de connaissance de l’attaquant sur le système d’apprentissage automatique.
Les attaques en boîte blanche surviennent lorsque l’attaquant connaît ou comprend parfaitement le modèle d’IA ou le système d’apprentissage automatique. Cela inclut l’architecture, les paramètres et les données d’entraînement du modèle. Comme l’attaquant connaît l’infrastructure du modèle, les attaques adversariales en boîte blanche sont beaucoup plus puissantes et efficaces.
Les attaques en boîte noire surviennent lorsque l’attaquant ne connaît que peu ou pas du tout le système d’apprentissage automatique. Ne connaissant pas l’infrastructure du modèle, il se limite souvent à exploiter ses entrées et ses sorties pour tenter d’en cartographier le comportement. S’il réussit, il peut procéder à une extraction de modèle ou attaquer un autre système. Ces attaques sont généralement plus fréquentes, car les attaques en boîte blanche nécessitent des connaissances internes sur le modèle ou le système.
Techniques d’apprentissage automatique adversarial
Les techniques employées par les acteurs malveillants pour lancer des attaques par IA adversariale dépendent de leurs objectifs et de l’infrastructure du modèle. Voici quelques-unes des techniques d’attaque les plus courantes :
Méthodes fondées sur le gradient : les attaquants utilisent les gradients d’un modèle d’apprentissage automatique pour calculer les modifications minimes et discrètes nécessaires à la création d’exemples adversariaux. La Fast Gradient Sign Method (FGSM) en est un exemple.
Méthodes fondées sur l’optimisation : les attaquants utilisent des techniques mathématiques pour déterminer les modifications les plus efficaces afin de créer le meilleur exemple adversarial. Carlini & Wanger (C&W) est une technique couramment utilisée.
Méthodes fondées sur des requêtes : dans les attaques en boîte noire, les attaquants interrogent le modèle pour comprendre son comportement. À mesure qu’ils en apprennent davantage et analysent les schémas des résultats, ils peuvent repérer des limites et des vulnérabilités pour créer un exemple adversarial. Des chercheurs ont récemment découvert que ces méthodes pouvaient aboutir à des attaques adversariales universelles et transférables.

Exemples d’attaques adversariales en IA générative
Les attaques adversariales en IA générative sont de plus en plus fréquentes. Dans la plupart des cas, elles manipulent les résultats d’un modèle, notamment ceux des générateurs d’images et de code. Elles peuvent générer :
Des images erronées ou inappropriées
Des informations erronées, des liens malveillants ou des malwares
Du code malveillant ou non sécurisé
Des fichiers audio trompeurs
Lorsqu’elles sont déployées contre l’IA générative, les attaques adversariales visent à passer inaperçues. Si un développeur utilise l’IA pour générer du code, une attaque adversariale pourrait le modifier légèrement lorsqu’une commande précise est utilisée. Si le développeur ne vérifie pas le code généré avant de le publier, en supposant qu’il est sécurisé, toute la base de code pourrait être affectée.
De même, une attaque adversariale pourrait modifier des images générées par l’IA. Il peut s’agir d’un simple changement de détail dans l’image, ou de la génération d’un contenu plus offensant ou inapproprié.
Les chercheurs ont également identifié plusieurs façons dont l’IA pourrait être exploitée à l’avenir. Par exemple, des attaquants pourraient manipuler des panneaux de signalisation ou provoquer des hallucinations chez un véhicule autonome, entraînant des accidents ou des situations dangereuses. Ils pourraient aussi manipuler des logiciels de reconnaissance faciale ou des systèmes pour usurper l’identité de personnes ou contourner des mesures de sécurité.
Comment détecter les attaques adversariales
Pour se protéger des attaques adversariales, les organisations doivent mettre en place une stratégie de sécurité robuste reposant sur une défense proactive à plusieurs niveaux.
Surveillance continue
Pour qu’aucune menace ne passe inaperçue, les organisations doivent surveiller en continu leurs systèmes d’apprentissage automatique. Elles peuvent notamment s’appuyer sur des outils de sécurité qui surveillent en permanence leurs actifs et leur infrastructure.
La surveillance continue des entrées et des sorties de l’IA peut également aider les organisations à détecter des anomalies susceptibles de signaler une attaque adversariale. Parmi les autres moyens d’assurer une surveillance continue, citons les outils d’analyse des journaux à la recherche d’activités suspectes, les protocoles de validation et de nettoyage des entrées, ainsi que l’évaluation régulière des performances du modèle. Si une équipe AppSec utilise l’IA dans ses processus, il est également essentiel de disposer d’un outil de sécurité capable de détecter en continu les vulnérabilités ainsi que le code malveillant ou non sécurisé.
Entraînement adversarial
Entraîner votre modèle sur des exemples adversariaux peut le rendre plus sûr. En intégrant ces exemples aux données d’entraînement, votre modèle peut apprendre à reconnaître les menaces et à s’en protéger.
Formation et sensibilisation
En plus de mettre en place les outils et l’entraînement adaptés au modèle, les utilisateurs et les équipes de l’organisation doivent savoir reconnaître les signes d’une attaque adversariale, connaître les menaces qu’elle représente et savoir comment signaler toute activité suspecte. Comme les attaques adversariales visent à être indétectables, la formation et la sensibilisation peuvent aider à repérer les menaces ou à signaler des changements avant qu’ils ne causent des problèmes à l’organisation ou à ses systèmes.
Défendez-vous contre les attaques contre l’IA avec Snyk
Une posture de sécurité solide est essentielle pour protéger votre organisation contre les attaques contre l’IA. Une plateforme comme Snyk peut protéger votre organisation contre l’IA adversariale, tout en sécurisant le cycle de vie du développement logiciel (SDLC) et en veillant à la protection de chaque actif et application. Si votre équipe de développement intègre l’IA à ses processus, Snyk Code peut sécuriser son code au fur et à mesure de sa rédaction, en l’analysant et en recommandant des correctifs en temps réel.
Prenez en main la sécurité de l’IA avec Snyk
Découvrez comment Snyk aide à sécuriser le code généré par l’IA de vos équipes de développement, tout en offrant aux équipes de sécurité une visibilité et des contrôles complets.