17/10/2024
Blog technique
Les vulnérabilités dans les LLM : Introduction
Jean-Léon Cusinato, équipe SEAL
Bienvenue dans cette suite d’article consacrée aux Large Language Model (LLM) et à leurs vulnérabilités. Depuis quelques années, le Machine Learning (ML) est devenu une priorité pour la plupart des entreprises qui souhaitent intégrer des technologies d’Intelligence Artificielle dans leurs processus métier.
Les évolutions impressionnantes de l’IA ont par exemple poussé certaines entreprises à remplacer plus de la moitié de leurs effectifs par des IA basées sur des LLM (voir Dukaan). De manière plus large, ChatGPT, l’un des services les plus populaires en ligne, compte plus de 180 millions d’utilisateurs dans le monde et environ 600 millions de visites mensuelles.
Cependant, à l’heure où l’IA prend de plus en plus de place dans notre vie quotidienne et professionnelle, la sécurité est souvent mise à l’écart. Dans leur course à l’innovation, les entreprises peuvent parfois oublier de considérer les risques potentiels associés à ces technologies émergentes, que ce soit par manque de connaissance ou par simple priorisation de l’efficacité. Les vulnérabilités des LLM peuvent entraîner des conséquences graves, allant de la fuite de données sensibles à la manipulation des systèmes critiques. Il est donc crucial de comprendre ces risques et de mettre en place des mesures de sécurité adéquates pour protéger les utilisateurs et les entreprises.
Cette série d’articles n’a pas pour objectif de vous fournir directement les solutions à ces vulnérabilités, mais principalement de vous permettre de prendre conscience des risques que vous encourez en utilisant ces nouvelles technologies sans vous assurer que leur sécurité est suffisamment robuste. En vous informant sur ces vulnérabilités potentielles nous espérons vous aider à adopter une approche réfléchie dans l’intégration de l’intelligence artificielle au sein de votre entreprise.
Nous vous proposons donc, ici, une série de dix articles dédiés, chacun, à une des vulnérabilités principales qui pourraient toucher une technologie d’Intelligence Artificielle basée sur un LLM :
- L’injection de prompt (Prompt Injection en anglais)
- La gestion des sorties non sécurisées (Insecure Output Handling en anglais)
- L’empoisonnement des données d’entraînement (Training Data Poisoning en anglais)
- Le déni de service du modèle (Model Denial of Service en anglais)
- La vulnérabilité sur les chaînes d’approvisionnement (Supply Chain Vulnerabilities en anglais)
- La révélation des informations sensibles (Sensitive Information Disclosure en anglais)
- La conception de plugin non sécurisée (Insecure Plugin Design en anglais)
- L’Excès d’Autonomie (Excessive Agency en anglais)
- La surconfiance (Overreliance en anglais)
- Le vol de modèle (Model Theft en anglais)
Afin de compléter chaque présentation de vulnérabilité, chaque article sera accompagné d’une description d’un composant ou d’une terminologie liée à l’intelligence artificielle et aux LLM :
- Qu’est-ce qu’une requête ?
- Qu’est-ce qu’une inférence ?
- Qu’est-ce qu’un entrainement pour une IA ?
- Qu’est-ce que le contexte d’une requête ?
- Qu’est-ce qu’un token ?
- Qu’est-ce que le fine tunning ?
- Qu’est-ce que le RAG ?
- Qu’est-ce qu’un agent autonome ?
- Qu’est-ce qu’une hallucination pour une IA ?
- Qu’est-ce qu’un modèle ?
Qu'est-ce qu'un LLM ?
Un LLM, ou Large Language Model, est un type de modèle d’intelligence artificielle spécialement conçu pour comprendre et générer du langage naturel. Ces modèles sont entraînés sur d’énormes quantités de données textuelles et sont capables de produire des réponses cohérentes et contextuellement appropriées à une variété de questions et de requêtes.
Les LLM sont utilisés dans diverses applications, allant des chatbots aux assistants virtuels, en passant par la génération de contenu et la traduction automatique. Leur capacité à imiter le langage humain de manière convaincante en fait un outil puissant.
Aujourd’hui, en raison de la forte concurrence entre les modèles, le nombre de personnes utilisant activement l’IA pour leur travail est en très nette augmentation. Il est, de plus, de plus en plus facile d’héberger localement sa propre intelligence artificielle LLM facilement et à moindre coût.
Et techniquement, qu'est-ce qu'un LLM ?
Techniquement, un Large Language Model est une technologie de Machine Learning basée sur des réseaux de neurones, plus précisément des réseaux de neurones récurrents (RNN) ou des transformateurs. Ces modèles sont entraînés sur de vastes corpus de texte pour apprendre les structures et les règles du langage humain. Les transformateurs, en particulier, utilisent des mécanismes d’attention pour traiter les séquences de texte de manière plus efficace et précise.
Un LLM est capable de générer du texte en prédisant le mot suivant dans une séquence, en se basant sur les mots précédents. Cette capacité est rendue possible grâce à des algorithmes d’apprentissage profond qui ajustent le poids des connexions neuronales pour minimiser l’erreur de prédiction. Les LLM sont souvent entraînés sur des superordinateurs ou des clusters de calcul distribué, en raison de la quantité massive de données à traiter en entrée et de la complexité des calculs nécessaires pour construire le modèle. Le coût de cet entrainement est très élevé en comparaison de l’utilisation du modèle pour obtenir des réponses à des questions.
C’est pour cette raison que la plupart des utilisateurs de ce type d’IA choisissent d’utiliser des solutions « sur étagère » en déployant des modèles pré-construits et décident ainsi de faire confiance au développeur du modèle.
Pourquoi les LLM contiendraient des vulnérabilités ?
Tout d’abord, comme expliqué précédemment, ces modèles sont entraînés sur des quantités massives de données provenant de diverses sources, ce qui peut inclure des informations biaisées, incorrectes ou malveillantes. De plus, les LLM sont souvent conçus pour être très flexibles et adaptables, ce qui peut les rendre vulnérables à des attaques telles que le l’injection de requêtes. Cette technique consiste à manipuler, au travers d’une requête, les données du modèle pour le forcer à exécuter des actions non désirées ou à divulguer des informations sensibles. Le premier article de notre série se concentrera spécifiquement sur la présentation de cette technique.
Face à la montée de ces technologies et surtout face à l’apparition de vulnérabilités, l’OWASP, Open Worldwide Application Security Project, communauté Internet dédiée à la sécurité des applications et technologies du Web, a publié un Top 10 des vulnérabilités applicables aux LLM. Notre série d’articles va se concentrer sur ces 10 vulnérabilités.
Ces vulnérabilités sont surtout problématiques en raison de la difficulté de détection et de correction de celles-ci, liées à la complexité des LLM, et nécessitant des efforts continus en matière de recherche et de développement pour assurer leur sécurité. Les modèles de langage sont souvent constitués de millions, voire de milliards, de paramètres ce qui complique la tâche de comprendre et de contrôler leur comportement. De plus les mécanismes d’apprentissage profond utilisés pour entraîner ces modèles peuvent introduire des biais et des erreurs subtiles qui seraient d’autant plus complexes à détecter. Certains chercheurs parviennent d’ailleurs à profiter de ces biais avec des méthodes de plus en plus avancées pour compromettre des LLM.
Pour ces raisons, il est essentiel que les entreprises adoptent une approche proactive en matière de sécurité des LLM. Cela inclut la mise en place de processus de validation rigoureux, la surveillance continue des performances des modèles et la collaboration avec des experts en sécurité pour identifier et atténuer les risques potentiels. En investissant dans la sécurité des LLM, les entreprises peuvent non seulement protéger leurs données et leurs systèmes, mais aussi renforcer la confiance de leurs utilisateurs et partenaires.
Quelles peuvent être les conséquences pour une entreprise ?
Les conséquences des vulnérabilités dans les LLM peuvent être multiples et potentiellement dévastatrices.
Ce message peut sembler alarmiste mais il est nécessaire de comprendre qu’actuellement aucun système d’Intelligence Artificielle basé sur des LLM n’intègre, par défaut, de mécanisme de sécurité. De plus, les modèles LLM disponibles au grand public n’étant pas encore totalement matures et stables et les recherches sur les vulnérabilités n’en sont encore qu’à leur prémices.
Et les risques dans tout ça ?
Tout d’abord, la sécurité des données est mise en péril. Une attaque réussie par prompt injection peut permettre à des acteurs malveillants d’accéder à des informations sensibles, telles que des données clients, des secrets commerciaux ou des informations financières qui auraient été utilisées lors de la création du modèle. Cela peut entraîner des violations de données coûteuses, des amendes réglementaires ou une perte de confiance des clients.
De plus la manipulation des LLM peut conduire à des décisions erronées ou à des actions non autorisées si l’utilisateur accorde une confiance trop grande dans les réponses de l’IA, pouvant ainsi compromettre l’intégrité des opérations de l’entreprise. Par exemple, un LLM utilisé pour la gestion des ressources humaines pourrait être manipulé pour prendre des décisions de recrutement biaisées ou inappropriées.
Enfin, les vulnérabilités des LLM peuvent, comme toute autre vulnérabilité sur un SI, nuire à la réputation de l’entreprise entraînant une perte de confiance des partenaires commerciaux et des investisseurs.
Il est donc essentiel pour les entreprises de prendre des mesures proactives pour sécuriser leurs modèles, leurs infrastructures d’IA et rester vigilantes face aux nouvelles menaces émergentes.
Pourquoi cette série d'articles ?
Aujourd’hui, de plus en plus d’entreprises adoptent des solutions d’Intelligence Artificielle prêtes à l’emploi, sans pouvoir en paramétrer la sécurité ou sans avoir forcément les compétences pour évaluer le niveau de robustesse des solutions déployées.
C’est pourquoi AMOSSYS, au travers de son SEAL et fort de son expérience de CESTI (Centre d’Évaluation de la Sécurité des Technologies de l’Information), a lancé la mise en place d’une méthodologie d’analyse et d’évaluation de la sécurité des LLM. En se basant sur les travaux de recherches, ainsi que sur les premières recommandations de l’OWASP et de l’ANSSI en matière de LLM, AMOSSYS met en avant l’importance d’une analyse en profondeur de la sécurité de ces technologies.
Cette initiative vise à assurer aux utilisateurs et administrateurs la robustesse et la sécurité de l’utilisation des IA au sein de leur entreprise. En partageant notre expertise à travers cette série d’articles, nous espérons sensibiliser les entreprises aux risques potentiels et les aider à adopter des pratiques sécurisées pour une intégration réussie de l’intelligence artificielle.