Les dangers cachés de l’IA et ses chatbots
Avis d'expert
Avec l’expansion de l’IA dans notre quotidien et l’adoption croissante des modèles IA LLM (Large Language Models) par les entreprises dans divers secteurs, ces modèles sont de plus en plus utilisés dans les chatbots et assistants virtuels, etc.
Ils peuvent répondre aux questions fréquentes des utilisateurs, aider à la résolution de problèmes techniques et accomplir bien d’autres tâches. Cependant, cette utilisation comporte des risques.
Dans cet article, nous aborderons les différentes vulnérabilités fréquemment observées lors de tests d’intrusion sur les modèles LLM.
Contournement des filtres de langage
De manière générale, les filtres mis en place pour manipuler le langage des LLM sont contournables en raison d’un manque de couches de protection suffisantes.
Lors d’un test d’intrusion, nous avons réussi à contourner les filtres de sécurité d’un chatbot. Cela nous a permis de manipuler les réponses de celui-ci pour qu’il affiche une URL redirigeant les utilisateurs vers un autre site. Un attaquant pourrait faire de même pour envoyer les utilisateurs sur un site potentiellement malveillant.
Il est difficile de garantir une sécurité absolue sur les systèmes basés sur le modèle LLM, mais il est possible d’ajouter plusieurs couches de protection pour rendre l’exploitation plus complexe. Il est donc fortement recommandé de mettre en place autant de protections que possible parmi la liste suivante :
- Bloquer l’utilisation de termes connus pour contourner le bon fonctionnement du modèle LLM, par exemple : « INSTRUCTIONS », « PERMISSION ».
- En fonction de la sensibilité/criticité du chatbot, envisager l’utilisation d’un second filtre qui permet de valider les réponses du chatbot et de s’assurer que celles-ci ne contiennent pas d’informations sensibles.
- Désactiver l’option d’insertion de liens externes.
Segmentation des droits
Une autre vulnérabilité fréquemment observée concerne la segmentation des droits.
Cette vulnérabilité se produit lorsque les niveaux de permission sont mal implémentés pour différents utilisateurs.
En effet, des utilisateurs pourraient obtenir un accès non autorisé à des fonctionnalités ou à des données sensibles.
Lors d’un test d’intrusion, nous avons découvert qu’un utilisateur lambda avait des droits d’upload et de suppression de fichiers directement sur le serveur audité. En exploitant cette faille, nous avons pu modifier les fichiers utilisés par le chatbot, altérant ainsi les réponses qu’il fournissait aux utilisateurs.
Pour prévenir ce type de vulnérabilité, il est essentiel de mettre en place une gestion rigoureuse des droits d’accès. Chaque utilisateur doit avoir des permissions strictement limitées à ce qui est nécessaire pour leurs tâches spécifiques.
Des audits réguliers des permissions et une surveillance continue peuvent également aider à détecter et à corriger les anomalies avant qu’elles ne soient exploitées.

Fuites d'informations techniques
Le dernier point concerne principalement le code source souvent « non obfusqué » (code source facile à comprendre) et les fuites d’informations techniques.
Pour un attaquant, identifier les URL sur lesquelles se base le chatbot est une étape cruciale. Or, dans la plupart des cas, ces « endpoints » intéressants se trouvent directement dans le code source. De ce fait, une simple analyse du code source permet donc à un attaquant de les repérer facilement.
Lors d’un audit de sécurité, une analyse du code source nous a permis d’identifier les « endpoints » intéressants, certains étant mal sécurisés, ce qui nous a permis par la suite d’avoir un accès à des données sensibles.
Pour minimiser ce risque, il est recommandé de toujours obfusquer le code source avant de le déployer en production. De plus, il est essentiel de sécuriser tous les endpoints avec des méthodes d’authentification robustes et de limiter l’accès aux données sensibles à travers des API sécurisées.
L’utilisation de scans réguliers du code et d’analyses de sécurité automatisées peut également aider à identifier et corriger les vulnérabilités avant qu’elles ne soient exploitées.
Recommandations générales
A la lumière de ces risques, il est essentiel d’adopter plusieurs mesures pour renforcer la sécurité des systèmes d’IA :
- Se référer au Guide ANSSI : Suivre les recommandations du guide de l’ANSSI pour l’IA générative et intégrer les pratiques spécifiques aux LLM.
- Audits de Sécurité : Effectuer des audits de sécurité réguliers pour identifier les failles potentielles et les corriger rapidement. Ces audits doivent inclure des tests d’intrusion pour simuler des attaques réelles.
- Formation Continue : Les équipes de développement et de sécurité doivent être régulièrement formées aux dernières techniques de sécurité et aux nouvelles menaces. Les technologies évoluent rapidement, tout comme les méthodes des attaquants.
- Surveillance Active : Mettre en place une surveillance continue des systèmes pour détecter les activités suspectes en temps réel. Utiliser des outils de détection d’intrusion et des systèmes de surveillance pour réagir rapidement en cas de menace.
- Stratégie choix du client LLM : En fonction de la sensibilité du chatbot, envisager l’utilisation d’un LLM local qui permet de réduire les risques cyber.
Auteur
Hamza HARIFI, Consultant Senior
Envie d’aller plus loin à nos côtés ?
Nous vous accompagnons sur l’ensemble de vos problématiques de sécurité, de la mise en place de vos stratégies de protection à leur évolution !
Nous avons hâte de relever vos défis.